জিনোম-কিরিং কোথায় $ SSH_AUTH_SOCK সেট করে?


10

আমি gnome-keyringএসএসএইচ এজেন্ট হিসাবে পরিত্রাণ পেতে প্রক্রিয়ায় আছি ।

আমি যে কাজ করেছি

  • ঘন্টার পর ঘন্টা ইন্টারনেট অনুসন্ধান করেছেন।
  • স্টাফ পরিবর্তন করা হয়েছে এবং প্রায়শই পুনরায় চালু করা হয়।
  • অবশেষে rmএসএসএইচ সম্পর্কিত সমস্ত অটোস্টার্ট স্টাফ সবেমাত্র ed

এজেন্টের জন্য সকেট আর নেই বলে এই শেষ জিনিসটি যাদুকরীভাবে কাজ করেছিল:

/run/user/[uid]/keyring/ssh

সমস্যা

অবশিষ্ট সমস্যা হল সত্ত্বেও আমার বিস্ময়কর উপরোক্ত ফলাফলের পাওয়ার, কিছু মধ্যে gnome-keyringএখনও সেটিং উপর জোরাজুরি SSH_AUTH_SOCKকরতে এখন অ বিদ্যমান উপরে সকেট। এটি জম্বিদের মতো, এই জিনিসগুলি কখনও মরে না।

প্রশ্ন

কী সেই পরিবর্তনশীল নির্ধারণ করছে এবং এটি কোথায় করা হয়েছে?

pitfalls

  • আমি জিজ্ঞাসা করছি না আমি কীভাবে সেই পরিবর্তনশীলটিকে অন্য একটি মানটিতে পুনরায় সেট করতে পারি।
  • আমি জিজ্ঞাসা করছি না কীভাবে আমি সেই মান সিস্টেম-ব্যাপী বা শেল কনফিগারেশন ফাইলটিতে সেট করতে পারি।
  • আমি জমাট, সেট, রিসেট, আনসেট বা যেকোন কিছু প্রতিস্থাপনের জন্য কিছু আরআইডি-স্ক্রিপ্ট ভুডু অন্তর্ভুক্তির জন্য বলছি না
  • কীভাবে জিনিসটি আনইনস্টল করবেন সে বিষয়ে আমি পরামর্শ চাইছি না : আমার পাসওয়ার্ডগুলির জন্য আমার এখনও এটি প্রয়োজন এবং এটি জিনোমের সবচেয়ে সংহত এবং পালিশ পাসওয়ার্ড ম্যানেজার হিসাবে মনে হয়।

আমি চাই জিনিসটি যেমন হওয়া উচিত ঠিক তেমন অক্ষম।


2
জিনোম-কিরিং আনইনস্টল করবেন?
rudimeier

1
@ রূডিমেয়ার: আমার পাসওয়ার্ডগুলির জন্য আমার এখনও জিনোম-কিরিং প্রয়োজন এবং যতদূর আমি জানি যে জিনোমে আরও পালিশ এবং সংহত কিছু নেই।
ডব্লিউ

@Rudimeier এমনকি এটি সাহায্য করবে বলে মনে হয় না। আমি চেষ্টা করেছি।
আন্দ্রে বোরি

উত্তর:


8

আমাকে অনুমান করতে দাও - আপনি ওয়েল্যান্ড ব্যবহার করছেন। আমি আজ এই সমস্যার মধ্যে দৌড়ে এসেছি এবং সমাধানটি ভাগ করে নিলাম।

জিনোম-সেশনের SSH_AUTH_SOCKকিছু কারণে ওয়েন্ডল্যান্ডের জন্য একটি হার্ডকোডযুক্ত ওভাররাইড রয়েছে । নিম্নলিখিত প্রতিশ্রুতি দেখুন: https://github.com/GNome/gnome-session/commit/a8896ccad65583885735a04205351f48a42f29ae

কাজের ফাঁকে? এই আচরণ নিষ্ক্রিয় করতে একটি পরিবেশ পরিবর্তনশীল সেট করুন: GSM_SKIP_SSH_AGENT_WORKAROUND=1। এই পরিবেশ সার্টিফিকেশন কোডটি শর্ট সার্কিট।

যে সকল লোকেরা এটি খুঁজে পায় সেগুলি ssh-এজেন্টকে কনফিগার করার চেষ্টা করছে: ssh-এজেন্টের জন্য আমার সিস্টেমড ইউনিট ফাইলে, আমার নিম্নলিখিত লাইনটি রয়েছে:

ExecStartPost=/usr/bin/bash -c "/usr/bin/systemctl --user set-environment SSH_AUTH_SOCK=$SSH_AUTH_SOCK GSM_SKIP_SSH_AGENT_WORKAROUND=1"

সম্পূর্ণ ফাইলটি দেখতে এমন দেখাচ্ছে:

[Unit]
Description=SSH Agent
IgnoreOnIsolate=true

[Service]
Type=forking
Environment=SSH_AUTH_SOCK=%t/ssh-agent.socket
ExecStart=/usr/bin/ssh-agent -a $SSH_AUTH_SOCK
ExecStartPost=/usr/bin/bash -c "/usr/bin/systemctl --user set-environment SSH_AUTH_SOCK=$SSH_AUTH_SOCK GSM_SKIP_SSH_AGENT_WORKAROUND=1"

[Install]
WantedBy=default.target

ধন্যবাদ! উবুন্টু v17.10-এ আর্টফুল আরডওয়ার্কে, কেবল export GSM_SKIP_SSH_AGENT_WORKAROUND=1আমার ~ /। প্রোফাইলে যোগ করে পুনরায় বুট করা আমার কনফিগারেশনটি স্থির করে যা এর আগে v17.04 এ কাজ করেছিল।
স্টিফেন নিডজিয়েলসকি

এটি কেবল ওয়েল্যান্ডের চেয়ে বেশি প্রভাবিত করে বলে মনে হচ্ছে, জিনোম-ফ্ল্যাশব্যাক + i3 ব্যবহার করার চেষ্টা করার সময় আমি এটির মধ্যে চলেছি।
ড্রাগন 788

দয়া করে নোট করুন যে হ্যাকটি জিনোম ৩.২৪ বা তার বেশি বয়স পর্যন্ত কাজ করে ( উইকি.আরচলিনাক্স.আর.ইনডেক্স.এফপি / জিএনওম / ))
পাবলো ওলমোস ডি

5

(ওপি-র পরিবেশ জানা যায়নি, সুতরাং এখানে প্রদত্ত পথগুলি আমার উবুন্টু মেশিনে পাওয়া যায়)

জিনোম-কীরিং কোথায় এসএসএইচ_এইউথ_সোক সেট করে?

শিরোনামে মূল প্রশ্নের উত্তর দিতে, SSH_AUTH_SOCK /usr/share/upstart/sessions/gnome-keyring-ssh.confনীচের কমান্ড সহ জিনোম-কিরিং দ্বারা সেট করা হয়েছে :

initctl set-env --global SSH_AUTH_SOCK=$SSH_AUTH_SOCK

initctlম্যানুয়ালটি উদ্ধৃত করা হচ্ছে :

initctl set-env VARIABLE[=VALUE]

একটি কাজের পরিবেশ সারণীতে একটি পরিবর্তনশীল যুক্ত বা আপডেট করে। এই ভাবে সেট করা ভেরিয়েবলগুলি কোনও কাজের জন্য পরবর্তী-প্রারম্ভিক সমস্ত প্রক্রিয়ার জন্য প্রযোজ্য।

-g, --global

গ্লোবাল জব এনভায়রনমেন্ট টেবিল এবং সমস্ত বিদ্যমান কাজের পরিবেশের টেবিলগুলিতে পরিচালনা করুন।

প্রথম স্থান থেকে এসএসএইচ_এইউথ_সোক কোথা থেকে আসে?

initctlকমান্ড উপরে সত্য যে এনভায়রনমেন্ট ভেরিয়েবল SSH_AUTH_SOCK আগে থেকেই আছে করার নিয়ন্ত্রিত হয়। তাহলে, এটি কি মুরগির এবং ডিমের পরিস্থিতি? কি সেট করে?

এসএসএইচ_এউথ_সোক প্রাথমিকভাবে এসএসএইচ-এজেন্ট দ্বারা সেট করা থাকে যা এক্স সেশনের একেবারে শুরুতে শুরু হয়েছিল। ম্যানুয়ালটি উদ্ধৃত করা হচ্ছে:

একটি ইউএনআইএক্স-ডোমেন সকেট তৈরি করা হয় এবং এই সকেটের নাম SSH_AUTH_SOCKপরিবেশ পরিবর্তনশীলে সংরক্ষণ করা হয় । সকেটটি কেবলমাত্র বর্তমান ব্যবহারকারীর জন্য অ্যাক্সেসযোগ্য হয়ে উঠেছে।

কিন্তু, জিনোম-কিরিংয়ের ssh উপাদানটি যা করে তা হ'ল বিদ্যমান এসএস-এজেন্টের পরিবর্তে নিজেকে স্থানান্তরিত করা। অতএব এটি SSH_AUTH_SOCK এর নিজস্ব সকেট দিয়ে ওভাররাইট করে /run/user/.../keyring-.../sshযাতে অ্যাপ্লিকেশনগুলি এটির সাথে কথা বলে এবং ssh-এজেন্টের সাথে নয়।

কীভাবে এটি অক্ষম করা যায়

এখন, "আমি সেই জিনিসটি অক্ষম চাই" এর শেষ বাক্যটির উত্তর দিন। ওপি যা চায় তা হ'ল জিনোম-কিরিংয়ের এসএসএইচ উপাদান দ্বারা এসএসএইচ_এইউথ_সোকের ওভাররাইটিংটি অক্ষম করা। তারা প্রথমে ssh- এজেন্ট দ্বারা নির্ধারিত "সত্য" SSH_AUTH_SOCK ভেরিয়েবলটি ফিরে পেতে চায়।

উপরে উল্লিখিত একই স্টার্টআপ স্ক্রিপ্ট দ্বারা ssh উপাদানটি শুরু করা হয়েছে ( /usr/share/upstart/sessions/gnome-keyring-ssh.conf) তবে একটি শর্তে: স্ট্রিং X-GNOME-Autostart-enabled=falseঅবশ্যই এই ফাইলগুলির মধ্যে পাওয়া যাবে না:

  • (সিস্টেম-বিস্তৃত কনফ) /etc/xdg/autostart/gnome-keyring-ssh.desktop
  • (ব্যবহারকারী কনফারেন্স) ~/.config/autostart/gnome-keyring-ssh.desktop

অতএব, আপনি যদি এটি অক্ষম করতে চান তবে আপনাকে যা করতে হবে তা হল X-GNOME-Autostart-enabled=falseআপনার হোম ডিরেক্টরিতে থাকা ফাইলের মধ্যে একটিতে একটি লাইন যুক্ত করতে হবে।


আমি জিনোম কিরিংয়ের জন্য অটোস্টার্ট এন্ট্রিগুলি অক্ষম করার চেষ্টা করেছি এবং এটি ভেরিয়েবলটি এখনও রয়েছে বলে মনে করে, তবে একটি অস্তিত্বহীন সকেটের দিকে ইঙ্গিত করে (সুতরাং কীরিংটি অক্ষম করে কাজ করা হয়েছে, তবে ভেরিয়েবলটি অন্য কোথাও সেট করা আছে)। আমি একটি আর্চলিনাক্স মেশিন চালাচ্ছি সুতরাং সেখানে কোনও আপস্টার্ট নেই এবং সিস্টেমডে এমন স্পষ্ট কিছু নেই যা ভেরিয়েবলটি নির্ধারণ করতে পারে ..
আন্দ্রে বোরি

@ অ্যান্ড্রোবোরি আমি আর্ক বা সিস্টেমড না জানি না। সকেট পাথের নতুন মান কী? আমার ম্যাচেইনে, এসএসএইচ-এজেন্ট সাধারণত এটিকে সেট করে /tmp/ssh-XXX/agent.PID। Ssh- এজেন্ট এখনও আপনার প্রক্রিয়া তালিকায় আছে?
xhienne

পথটি ঠিক মূল প্রশ্নের মতো। এখানে কোনও এসএসএইচ এজেন্ট নেই বা কীরিংগুলি চলছে না।
আন্দ্রে বোরি

এই উত্তরটি সত্যই পুরানো তবে আমি আশা করি আপনি আমাকে খুব ইউনিক্সকে
ওজস

3

https://wiki.archlinux.org/index.php/GNOME/Keyring#Disable_keyring_daemon_components

আপনি যদি কোনও বিকল্প এসএসএইচ এজেন্ট চালাতে চান (যেমন ssh-এজেন্ট বা gpg-এজেন্ট, আপনার জিনোম কেরিংয়ের ssh উপাদানটি অক্ষম করতে হবে an অ্যাকাউন্ট-স্থানীয় পদ্ধতিতে এটি করার জন্য:

mkdir ~/.config/autostart
cp /etc/xdg/autostart/gnome-keyring-ssh.desktop ~/.config/autostart/ &&
echo 'Hidden=true' >> ~/.config/autostart/gnome-keyring-ssh.desktop

তারপরে লগ আউট করুন।

হালকাভাবে সম্পাদিত, আপাতদৃষ্টিতে অকেজো ব্যবহারের অপসারণ printf


এটি আমার জন্য উবুন্টু 14.04 এও কাজ করে।
pts

এটি 3.24 এবং আরও নতুন ক্ষেত্রে সত্য।
পাবলো ওলমোস ডি আগুইলেরা সি।

0

জিনোম ৩.১৮ অনুসারে, সকেটটি সঞ্চিত রয়েছে বলে মনে হয় ~/.cache/keyring-(some random string)/ssh

অনুমান হিসাবে, এটি জিনোম-কিরিং-ডেমন দ্বারা সেট করা হচ্ছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.