প্রশ্ন কিভাবে পাসওয়ার্ড দিয়ে এসএসএইচ লগইন স্বয়ংক্রিয়ভাবে?


কিভাবে পাসওয়ার্ড দিয়ে এসএসএইচ লগইন স্বয়ংক্রিয়ভাবে? আমি আমার পরীক্ষা ভিএম কনফিগার করছি, তাই ভারী নিরাপত্তা বিবেচনা করা হয় না। SSH সংক্ষিপ্ত কনফিগারেশন সঙ্গে গ্রহণযোগ্য নিরাপত্তা জন্য নির্বাচিত।

প্রাক্তন)

echo password | ssh id@server

এটা কাজ করে না।

আমি মনে করি কেউ আমাকে পরিচালিত কিছু কৌশল দিয়ে এটি করেছে, কিন্তু আমি এখন যে কৌশলটি ব্যবহার করেছি তা আমি মনে রাখতে পারছি না ...


335
2018-03-01 11:07


উত্স


ফ্রিBSD পাসওয়ার্ড-কম কী গ্রহণ করেনি। প্রলুব্ধ করা হবে না। তবে কিছু লিনাক্স সার্ভার এটি গ্রহণ করেছে। আমি বিশ্বাস করি লিনাক্স সার্ভারটি ভুল কনফিগার করা হয়েছে। - Eonil
এটি একটি বৈধ প্রশ্ন। উদাহরণস্বরূপ, আমি একটি ব্যবহারকারীকে একটি পাসওয়ার্ড প্রবেশ করার অনুমতি দিতে চাই, তারপর এটি ব্যবহার করে অন্য মেশিনে লগইন করুন। আমি অনুমান করতে পারি না যে আমাদের সমস্ত মেশিনে ssh কী বিতরণ করা হবে। নীচের উত্তর এতদূর এই পরিস্থিতি সাহায্য করে না। - dfrankow
unix.stackexchange.com/questions/38737/... || unix.stackexchange.com/questions/38737/... || stackoverflow.com/questions/233217/pass-password-to-su-sudo-ssh - Ciro Santilli 新疆改造中心 六四事件 法轮功
অত্যন্ত গুরুত্বপূর্ণ প্রশ্ন। আমার খুব একটা উত্তর দরকার, আমার ওয়েবস্পেস প্রদানকারী ব্লকগুলি সার্ভারে কীফিলগুলি স্থাপন করতে পারে, তাই আমাকে অবশ্যই কীফিলগুলি ছাড়াই পাসওয়াটটি পাস করতে হবে। - Radon8472


উত্তর:


একটি পাসওয়ার্ড ব্যবহার করবেন না। একটি পাসফ্রাসলেস এসএসএইচ কী তৈরি করুন এবং আপনার ভিএম এ এটি চাপুন।

যদি আপনার ইতিমধ্যে একটি এসএসএইচ কী থাকে, আপনি এই পদক্ষেপটি এড়িয়ে যেতে পারেন ... শুধু আঘাত প্রবেশ করান কী এবং উভয় পাসফ্রেজগুলির জন্য:

$ ssh-keygen -t rsa -b 2048
Generating public/private rsa key pair.
Enter file in which to save the key (/home/username/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/username/.ssh/id_rsa.
Your public key has been saved in /home/username/.ssh/id_rsa.pub.

লক্ষ্য সার্ভারে আপনার কী কপি করুন:

$ ssh-copy-id id@server
id@server's password: 

এখন মেশিনে লগ ইন করার চেষ্টা করুন ssh 'id@server', এবং চেক ইন:

.ssh/authorized_keys

নিশ্চিত করার জন্য আমরা অতিরিক্ত কীগুলি যোগ করিনি যা আপনি প্রত্যাশা করছেন না।

অবশেষে লগ ইন চেক করুন ...

$ ssh id@server

id@server:~$ 

আপনি ব্যবহার করতে চাইতে পারেন ssh-agent আপনি যদি আপনার কীগুলি পাসফ্রেজের সাথে সুরক্ষিত রাখতে চেষ্টা করতে চান।


302
2018-03-01 11:17



আমি অবশেষে কী জোড়া ব্যবহার করে সিদ্ধান্ত নিয়েছে। কারণ আমি বুঝতে পেরেছি যে এটি সবচেয়ে সহজ উপায়। - Eonil
@ ইনিইলঃ পাস পাস ছাড়া কী ব্যবহার করতে প্রলুব্ধ হবেন না। Ssh-agent বা পৃষ্ঠপোষক ব্যবহার কিভাবে শিখুন। - Iain
এটি একটি ভাল উত্তর, কিন্তু প্রশ্নের সঠিক উত্তর নয়। - John Hunt
উত্তর এই ধরনের সত্যিই, সত্যিই বিরক্ত। যে প্রশ্ন ছিল না। কেউ কি কী জোড়া ব্যবহার করতে বলেছে। - Matt Fletcher
এই প্রশ্নের উত্তর দেয় না। এটি একটি সম্পূর্ণ ভিন্ন প্রশ্নের জন্য একটি ভাল উত্তর, কিন্তু এটি একটি জিজ্ঞাসা জন্য ভয়ানক। - srchulo


$ sudo apt-get install sshpass
$ sshpass -p your_password ssh user@hostname

500
2018-05-31 09:08



Yup, কখনও কখনও আপনি বিভিন্ন কারণে মূল ভিত্তিক auth ব্যবহার করতে পারবেন না। উদাহরণস্বরূপ এখন আমি প্লাস সার্ভারে কিউথ ব্যবহার করতে পারি না কারণ এটি সক্রিয় নয় এমন বাক্সটি এবং আমার রুট নেই। - John Hunt
+1 টি! একটি পাশ নোট হিসাবে, আপনি প্লেইন চালানোর প্রয়োজন ssh একবার ব্যবহার করার আগে sshpass, আরএসএ ফিঙ্গারপ্রিন্ট নিশ্চিত করার জন্য - user123444555621
-1 কমান্ডের পাসওয়ার্ড ব্যবহার করার জন্য। এই এ পাসওয়ার্ড লগ .bash_history আপনার মেশিনে প্লেইন টেক্সট।
@ মিস্টারডুড আপনি চালাতে পারেন history -r আপনার ইতিহাস মুছে ফেলার কমান্ড পরে। ভাল পয়েন্ট যদিও। - NuclearPeon
প্রো টিপ: যদি আপনি কোনও নির্দিষ্ট কমান্ডটি .bash_history এ প্রদর্শন করতে না চান তবে একটি স্থান দিয়ে কমান্ডটি উপসর্গ করুন। এটা শুধু কাজ করে। যাইহোক, এই কমান্ড ব্যবহারকারীরা আরো উদ্বিগ্ন হওয়া উচিত যে সিস্টেমে অ-বিশেষাধিকারী ব্যবহারকারীরা ps সহ সম্পূর্ণ কমান্ড লাইন দেখতে পারেন, অবশ্যই, পাসওয়ার্ডটি অন্তর্ভুক্ত। যেহেতু ssh সেশন দীর্ঘদিন ধরে থাকে, এটি একটি নিরাপত্তা সমস্যা। - CubicleSoft


সহজ উত্তর তিনটি সহজ পদক্ষেপ

একটি জেনারেট করুন RSA keypair:

# ssh-keygen

তারপরে সার্ভারে এটি অনুলিপি করুন এক সহজ কমান্ড:

# ssh-copy-id userid@hostname

আপনি এখন লগ ইন করতে পারেন পাসওয়ার্ড ছাড়া:

# ssh userid@hostname

57
2017-11-14 12:57



ডিফল্ট মান সঙ্গে জরিমানা কাজ করে। চেষ্টা করার সময় ~ / rsa4live.pub আমার জন্য কাজ করে নি ssh-copy-id। - Cees Timmerman
যদি আপনি এই পদক্ষেপগুলি বিভিন্ন ব্যবহারকারীর জন্য কাজ করতে চান, 1. ssh-keygen 2. ssh-copy-id nazir @ হোস্টনাম 3. ssh nazir @ হোস্টনাম - Venfah Nazir
আমার জন্য এটা ছিল ssh-copy-id -i ~/.ssh/tatu-key-ecdsa user@host - Gabriel Fair
এই প্রশ্নের উত্তর নয়। - Steve Bennett
এবং? উত্তর উপরে, sshpass ... - lzap


প্রত্যাশা ব্যবহার করুন:

#!/usr/bin/expect -f
#  ./ssh.exp password 192.168.1.11 id
set pass [lrange $argv 0 0]
set server [lrange $argv 1 1]
set name [lrange $argv 2 2]

spawn ssh $name@$server
match_max 100000
expect "*?assword:*"
send -- "$pass\r"
send -- "\r"
interact

উদাহরণ:

# ./1.ex password localhost ooshro
spawn ssh ooshro@localhost
ooshro@localhost's password: 
Linux ubuntu-1010-server-01 2.6.35-25-generic-pae #44-Ubuntu SMP Fri Jan 21 19:01:46 UTC 2011 i686 GNU/Linux
Ubuntu 10.10

Welcome to Ubuntu!
 * Documentation:  https://help.ubuntu.com/
Last login: Tue Mar  1 12:41:12 2011 from localhost

27
2018-03-01 11:08



এটি কাজ করেছে কিন্তু এটি দূরবর্তী মেশিনের স্টডআউট মুদ্রণ করতে পারে না। - Eonil
আইপি অ্যাড্রেস প্রতিবার পরিবর্তিত হওয়ার কারণে কিছু মেশিন অগ্রিম কী দিতে পারে না এটি ভাল কাজ করে। - larrycai
এটা যোগ করা ভাল হবে -oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null ssh কমান্ডের জন্য মেশিনকে known_hosts এড়ানোর জন্য এড়ানোর জন্য - larrycai
বি .. বি কিন্তু মুহ ssh কী ... - Damien Ó Ceallaigh
এই স্ক্রিপ্টটির আরো বিস্তারিত উদাহরণ আপনি এখানে পাবেন: linuxaria.com/howto/...  এখানে এই উদাহরণ খুব দূরবর্তী কমান্ডের সাথে কাজ করা উচিত - Radon8472


এটি আপনার কাছে কোনও ব্যবহার হতে পারে না, তবে আপনি পার্লের সাথে এটি করতে পারেন:

\#!/usr/bin/perl  
use warnings;  
use strict;  

use Net::SSH::Perl;  
my $host = 'remote.serv.er';  
my $user = 'root';  
my $pass = 'hunter2';  
my $ssh = Net::SSH::Perl->new('$host');  
$ssh->login('$user', '$pass') or die "Oh noes! $!";

11
2018-03-01 11:52



একইভাবে, আপনি এই রুবি সঙ্গে করতে পারেন github.com/net-ssh/net-ssh - EnabrenTane


আপনি পাসওয়ার্ড চেয়ে এসএসএইচ কী ব্যবহার করতে চান না নিশ্চিত? এই ভাবে এটি নিরাপদ এবং স্বয়ংক্রিয় উভয়।


9
2018-03-01 11:14



পাসওয়ার্ড ছাড়া এসএসএইচ কী ব্যবহার করে একটি ফাইলের পাসওয়ার্ড ব্যবহার করার চেয়ে সামান্য বেশি নিরাপদ। - yunzen
@ ইউনজেন ভুল। কী প্রমাণীকরণ আপনি হোস্ট কী জানেন না এমনকি mitm-attacks থেকে আপনাকে রক্ষা করে। একটি আক্রমণকারী সার্ভার ছদ্মবেশ ধারণ করতে পারে, কিন্তু বাস্তব সার্ভারের সাথে সংযোগ না। পাসওয়ার্ড প্রমাণীকরণের সাথে আপনি যে কোন সার্ভারে (বৈধ বা না) পাসওয়ার্ডটি দেখতে পাবেন। সেই কারণগুলির জন্য পাসওয়ার্ড ছাড়াই একটি ssh কী একটি ফাইলের পাসওয়ার্ড সংরক্ষণের চেয়ে অনেক বেশি নিরাপদ। - kasperd
এটি একটি উত্তর নয়। - Steve Bennett
@SteveBennett এটি স্বীকৃত উত্তর হিসাবে একই এবং এটির আগে পোস্ট করা হয়েছে, যদিও এটির বিস্তারিত বিবরণ নেই। - Michael Hampton♦
আচ্ছা, আমি বলব যে গৃহীত উত্তর একটি প্রশ্নটির উপযুক্ত উত্তর নয় যা জিজ্ঞাসা করা হয়নি। এই কিছু না। - Steve Bennett


আমি বিস্মিত কেউ উল্লেখ plink থেকে putty-tools উবুন্টুতে প্যাকেজ

plink user@domain -pw mypass  [cmd]

এটি উইন্ডোজ এবং সিনট্যাক্সেও পাওয়া যায় এবং এটি openssh ক্লায়েন্টের সাথে বেশিরভাগই সামঞ্জস্যপূর্ণ।


5
2017-07-09 13:15



উইন্ডোজের জন্য আপনার উত্তরটি ভাল, unfurtunally লিনাক্স / ইউনিক্স ব্যবহারকারী সাধারণত পিকিং না - Radon8472
ইহা ভিতরে putty-tools প্যাকেজ - eadmaster