উইন্ডোজ থেকে লিনাক্সে এসএসএইচ পাসওয়ার্ড না লিখে


11

আমি উইন্ডোজ থেকে লিনাক্সে কোনও পাসওয়ার্ড প্রবেশ না করেই ssh / scp ব্যবহার করার চেষ্টা করছি।

এটি আমি করেছি এবং এটি কাজ করে না বলে মনে হচ্ছে:

  • পুট্টি কী জেনারেটর (উইন্ডোজ) ব্যবহার করে সরকারী এবং ব্যক্তিগত কী তৈরি করা হয়েছে
  • যেমন ফাইল সংরক্ষিত id_rsa.pubএবংid_rsa
  • তাদের মধ্যে অনুলিপি ~/.ssh
  • লিনাক্স বাক্সে id_rsa.pub যুক্ত করেছে ~/.ssh/authorized_keys
  • আমি তখন sshউইন্ডোজ থেকে লিনাক্স বাক্সে যাওয়ার চেষ্টা করি এবং আমাকে এখনও একটি পাসওয়ার্ড প্রবেশ করতে হবে

আমি কিছু অনুপস্থিত করছি?

উত্তর:


10

আপনাকে উইন্ডোজে একটি প্রমাণীকরণ এজেন্ট চালাতে হবে।

উদাহরণস্বরূপ, নাট্যাভিনয় , সঙ্গে একযোগে ব্যবহার পুটিং (গ্রাফিক্যাল SSH ক্লায়েন্ট) অথবা ঠং (তার কমান্ড লাইন সমতুল্য)।

আপনার পেজেন্টকে আপনার এসএসএইচ সার্ভারের সর্বজনীন কীটি বলতে হবে। এর পরে এটি ব্যাকগ্রাউন্ডে চলার সময় আপনার সার্ভারের প্রমাণীকরণের অনুরোধগুলির সাথে কাজ করবে।


2
দ্রষ্টব্য: (এটি আমার কাছে স্পষ্ট ছিল না)) পেজেন্ট খোলার সময় এটি নীচের ডানদিকে নোটিফিকেশন অঞ্চলে আইকন হিসাবে খুলবে। এটিতে ডান ক্লিক করুন, এবং অ্যাড কী ক্লিক করুন , এবং পুটটিজেন থেকে উত্পন্ন পিপেক ফাইলটি নির্বাচন করুন।
Badjr

8

1
ভিডিওগুলির পরিবর্তে পাঠ্য-ভিত্তিক টিউটোরিয়ালগুলিতে লিঙ্ক দেওয়ার চেষ্টা করুন।
একটি কোডার

ব্লগের লিঙ্কটি নষ্ট হয়ে গেছে। এটি ব্যবহার করে দেখুন: tecmint.com/ssh-passwordless-login-with-putty
কাই ওয়াং

2
ব্লগের লিঙ্কটি ভাঙা হ'ল সঠিক কারণগুলির উত্তরগুলি আরও বেশি হওয়া উচিত a
রামহাউন্ড

5

প্লিংক চেষ্টা করুন (পুটির অংশ)

 plink -v youruser@yourhost.com -pw yourpw "some linux command"

3
সঠিক প্রতিক্রিয়ার জন্য +1, তবে আপনি পাসওয়ার্ডের চেয়ে পাবলিক / প্রাইভেট কী জুটি ব্যবহার করা ভাল।
টেড পার্সিভাল

বিকল্প সত্ত্বেও, প্লিংকের সাহায্যে আপনি এটির সাথে একটি সাধারণ টার্মিনাল রাখতে পারবেন না, উদাহরণস্বরূপ: তীর কীগুলি বাশ ইতিহাসের
PYK

3

এসএসএইচ কী প্রমাণীকরণ সেট আপ করা কিছুটা জটিল হতে পারে। মনে হচ্ছে আপনি আপনার সমস্ত ঘাঁটিটি coveringেকে রেখেছেন। একটি জিনিস যা প্রায়শই লোকদের পাহারায় ফেলে রাখে - আপনাকে অবশ্যই নিশ্চিত করতে হবে যে .sshডিরেক্টরি এবং এর বিষয়বস্তুগুলি আপনার মালিকানাধীন এবং কেবল আপনার দ্বারা / লিখিতভাবে পাঠযোগ্য।

এটি চালানোর বিষয়টি নিশ্চিত করুন (আপনার সমস্ত .sshডিরেক্টরিতে):

chmod -R 700 on ~/.ssh

যদি এটি কাজ না করে -v, আপনার sshকমান্ডটিতে যুক্ত করে ভার্বোজ লগিং চালু করুন ( -vsআরও ভার্বোসিটির জন্য আপনি তিনটি পর্যন্ত যোগ করতে পারেন )।


2

আমি ধরে নিচ্ছি যে আপনার কীগুলি পাসওয়ার্ড সুরক্ষিত নয় এবং আপনি কী পাচ্ছেন তা আপনার কী পাসওয়ার্ডের জন্য অনুরোধ নয়।

windows / .ssh উইন্ডোজ সাইডে পুট্টি দ্বারা ব্যবহৃত হয় না এবং পুট্টির কোনও ডিফল্ট ব্যক্তিগত কী সেটিংস নেই। আপনি যদি কমান্ড লাইন ssh ক্লায়েন্ট যেমন সাইগউইন ব্যবহার করছেন তবে আপনার বাড়ির বাইরে একটি .ssh ডিরেক্টরি তৈরি করা কাজ করবে। পুটি থেকে, আপনাকে একটি সেশনটি কনফিগার করতে হবে এবং সংরক্ষণ করতে হবে।

পুট্টি কনফিগারেশন ডায়ালগ থেকে সংযোগ -> ডেটা দেখুন এবং স্বতঃ-লগইন ইউজারনেম ক্ষেত্রটি পূরণ করুন। তারপরে সংযোগে যান -> ssh -> auth, এবং আপনার ব্যক্তিগত কী সঠিকভাবে সেট করুন। তারপরে সেশন কথোপকথনে ফিরে যান এবং এই সেশনটি সংরক্ষণ করুন। আপনি চাইলে হোস্টনামও সেট করতে পারেন।

আপনার একবার সেভ করা সেশন হয়ে গেলে আপনি 'পুটি-লোড "সেভিয়েশন" "ব্যবহার করতে পারেন।


এছাড়াও, টার্গেট মেশিনে chmod 700 ~ / .ssh, এবং chmod 644। / .Ssh / অনুমোদিত কীগুলি। আমি একবার আপনার নির্দেশাবলী অনুসরণ করে অনুমতিগুলি সঠিকভাবে সেট করে দিলে এটি আমার পক্ষে কাজ শুরু করে।
ব্লিস্টারপিন্টস


1

আপনার নিজের ডিরেক্টরি ডিরেক্টরিতে অনুমতিও পরিবর্তন করতে হবে:

chmod 755 ~

1

পরিচয়ের একটি ব্যক্তিগত কী সরবরাহ Windows 7করার -iবিকল্পটি ব্যবহার করে আমি ঠিক এটি করতে পেরেছিলাম :

ssh -i X: \ win-path \ to \ বেসরকারী-কী রিমুয়েজার@remote.host.com

দূরবর্তী হোস্টের ব্যতীত, আমার অনুমোদিত চাবিগুলি ভিতরে রয়েছে /etc/ssh/authorized_keys/remoteuserএবং /etc/ssh/sshd_configআমি পরিবর্তন করেছি

#AuthorizedKeysFile     .ssh/authorized_keys
AuthorizedKeysFile      /etc/ssh/authorized_keys/%u

তবে আমি জানি না যে এসএসএইচ দূরবর্তী কনফিগারেশনের বিষয়টি বিবেচনা করা উচিত।


1

আপনার যা দরকার তা হ'ল ক্রস প্ল্যাটফর্ম sshকমান্ডলাইন সরঞ্জামগুলি, ssh-keygenএবং ssh-copy-id। উইন্ডোজ জন্য গিট তাদের অন্তর্ভুক্ত।

হয় গিট-ইনস্টল bashশেল থেকে এটি করুন :

#By default this puts keyfile pair in ~/.ssh/id_rsa & ~/.ssh/id_rsa.pub :

ssh-keygen.exe -t rsa -b 2048 
ssh-copy-id -i ~/.ssh/id_rsa.pub  $remoteuser@$remotehost

# These two chmod lines are needed on unix platforms, probably not on Windows. 
# typically ssh refuses to use a private key file 
# if it is less-well protected than this:
chmod 700 ~/.ssh
chmod 640 ~/.ssh/id_rsa

অথবা এই স্ক্রিপ্টটি পাওয়ারশেলে চালান:

Param(
  [Parameter()][string]$keyfile="id_rsa",
  [Parameter()][string]$remotehost,
  [Parameter()][string]$remoteuser
  )
write-host "# ---------------------------------------------------------------------------------#"
write-host "# Create an RSA public/private key pair, and copy the public key to remote server  #"
write-host "#                                                                                  #"
write-host "# /superuser/96051                                            #"
write-host "#         ssh-from-windows-to-linux-without-entering-a-password/1194805#1194805    #"
write-host "#                                                                                  #"
write-host "# ---------------------------------------------------------------------------------#"

write-host "Keyfile pair will be saved at : ~/.ssh/$keyfile, ~/.ssh/$keyfile.pub"
write-host "And copied to $remoteuser@$remotehost"
write-host ""
write-host "You will need a password for the copy operation."
write-host ""

if( -not $(ls ~/.ssh) ) { mkdir ~/.ssh }
$sshdir=$(get-item ~/.ssh/).Fullname

#By default this puts keyfile pair in ~/.ssh/id_rsa & ~/.ssh/id_rsa.pub :
ssh-keygen.exe -t rsa -b 2048 -f "$sshdir$keyfile"

# ssh-copy-id somehow didn't work in Powershell so I called it via bash
bash -c "ssh-copy-id -i ~/.ssh/$keyfile.pub $remoteuser@$remotehost"

# I'm not sure if these two chmod lines work on windows but 
# typically ssh refuses to use a private key file 
# if it is less-well protected than this:
chmod.exe 700 $sshdir
chmod.exe 640 "$sshdir$keyfile"

এর পরে, পাসওয়ার্ডহীন লগইন sshএবং উভয়ের জন্যই কাজ করা উচিত scp

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