# 1 - প্যাকেজ মিস?
আপনি সম্ভবত প্যাকেজটি হারিয়েছেন ssh-askpass
। এটি ইনস্টল করার চেষ্টা করুন।
ফেডোরা / সেন্টওএস / rhel:
$ sudo yum install openssh-askpass
Debian / Ubuntu-:
$ sudo apt-get install ssh-askpass-gnome ssh-askpass
নিখোঁজ ইউটিলিটিগুলি সন্ধান করা হচ্ছে
আপনি এই আদেশগুলি ব্যবহার করে হারিয়ে যাওয়া সরঞ্জামগুলির সন্ধান করতে পারেন:
ফেডোরা / সেন্টওএস / rhel:
$ yum search ssh-askpass
Loaded plugins: langpacks, presto, refresh-packagekit
Adding en_US to language list
======================================================= Matched: ssh-askpass =======================================================
x11-ssh-askpass.x86_64 : A passphrase dialog for X and not only for OpenSSH
ksshaskpass.x86_64 : A KDE version of ssh-askpass with KWallet support
connect-proxy.x86_64 : SSH Proxy command helper
openssh-askpass.x86_64 : A passphrase dialog for OpenSSH and X
Debian / Ubuntu-:
$ apt-file -l search ssh-askpass
app-install-data
cruft
git-cola
luckybackup-data
pssh
sdm-terminal
seahorse
ssh-askpass
ssh-askpass-fullscreen
ssh-askpass-gnome
# 2 - সংযোগ বিচ্ছিন্ন টার্মিনাল?
আমি প্রাথমিকভাবে এটি মিস করেছি তবে আরও পড়ার পরে আমি পরিবেশ পরিবর্তনশীল ssh
সম্পর্কিত ম্যান পেজে এই মন্তব্যটি লক্ষ্য করেছি SSH_ASKPASS
।
উদ্ধৃতাংশ
SSH_ASKPASS If ssh needs a passphrase, it will read the passphrase from the
current terminal if it was run from a terminal. If ssh does not
have a terminal associated with it but DISPLAY and SSH_ASKPASS
are set, it will execute the program specified by SSH_ASKPASS
and open an X11 window to read the passphrase. This is particularly
useful when calling ssh from a .xsession or related script.
(Note that on some machines it may be necessary to redirect the
input from /dev/null to make this work.)
আপনি মন্তব্যে লক্ষ্য, এটা বলে যে, SSH "একটি টার্মিনাল যুক্ত নেই" এবং DISPLAY
& SSH_ASKPASS
সেট করা হয়। এটিকে লক্ষ্য করা কী। সুতরাং পেতে ssh
ব্যবহার করতে SSH_ASKPASS
আমরা পেতে প্রয়োজন ssh
একটি টার্মিনাল (ওরফে। আছে না STDIN
& STDOUT
) এটি সংযুক্ত করা হয়েছে।
কমান্ডটি ব্যবহার করে এটি করার একটি উপায় setsid
। খারাপ লাগবে না। আমি কখনও এই সরঞ্জাম সম্পর্কে শুনিনি। ম্যান পৃষ্ঠা থেকে:
setid - একটি নতুন সেশনে একটি প্রোগ্রাম চালান
সুতরাং আমরা যদি ssh
"প্রোগ্রাম" হিসাবে চালিত করি তবে আমরা আমাদের টার্মিনালটির ম্যান পেজে উল্লিখিত মানদণ্ড পূরণ করে setsid
আলাদা করতে পারি । অন্যান্য মানদণ্ড নিম্নলিখিত হিসাবে সেট করা হয়:ssh
ssh
$ echo $DISPLAY; echo $SSH_ASKPASS
:0.0
/usr/libexec/openssh/ssh-askpass
সুতরাং যদি আমরা এই সব একসাথে রাখি:
$ setsid ssh user@remotehost
উদাহরণ স্বরূপ:
$ setsid ssh user@skinner
একটি সমাধান
আপনি যদি এটি তৈরি করতে চান setsid
তবে "বিল্ট ইন" আপনি এই জাতীয় উপকরণ তৈরি করতে পারেন:
$ alias ssh="setsid ssh"
এখন যখন আপনি ssh
জিইউআই আপনার পাসওয়ার্ড জিজ্ঞাসা করে পপ আপ করবে:
$ ssh user@skinner
তথ্যসূত্র