这个简单的教程解释了如何在不输入密码的情况下通过SSH连接到远程机器。当您需要频繁登录同一台机器,并且必须反复输入密码时,可以使用这项技术。这也适用于这样的场景:当您有一个脚本需要通过SSH从远程机器获取文件或在远程机器上执行任务,并且您希望自动运行该脚本而无需手动输入密码。
这些指令可以在Linux和Mac下正常工作。可以参考同样的方法在Windows下使用Putty,但是具体的Putty说明我在这里没有描述。
目标:从这台机器登录到远程服务器不需要输入密码。
步骤1/2:在本地计算机上:生成身份验证代码
认证码是一个私钥-公钥对。你的公钥也是2-3行长的不可读的东西。公钥就像你登录后的* * * ID。私钥类似于您的密码,但它比普通密码长。您可以通过以下命令生成您的公钥和私钥:
1.
生成密钥
1.
正在生成公钥/私钥对。
输入保存密钥的文件(/home/vineetmanohar/)。ssh/id_rsa:
接受默认选择。按回车键。
1.
输入密码短语(空表示无密码短语):
2.
再次输入相同的密码:
输入两次。密钥(密码短语)用于加密您的私钥。加密后没人能看懂。但是,如果要无密码登录,就不能加密私钥。
1.
关键指纹是:
2.
5e:26:52:34:a1:22:18:68:11:11:7d:8d:C6:D5:4b:BF vineetmanohar@vineetmanohr.com
你刚刚做了什么?
在~/。ssh目录,您创建了两个文件。
1.
cd ~/。
2.
文件
1.
-rw-1 vineetmanohar vineetmanohar 1675
2.
-rw-r - r - 1 vineetmanohar
Id_rsa包含您的私钥。Id_rsa.pub包含您的公钥。
步骤2/2:在远程机器上:验证没有密码的登录。
登录到远程机器。
1.
ssh主机名-l用户名
1.
主持人‘vineetmanohar . com’的真实性(XXX。XXX.XXX.XX)'不能成立。
2.
RSA密钥指纹为44.2 b:93:ce:1b:1b:99:3a:6d:91:D1:50:aa:0d:87:40。
3.
您确定要继续连接吗(是/否)?
输入yes并输入。
1.
警告:永久添加了' vineetmanohar.com,XXX。XXX.XXX.XX' (RSA)添加到已知主机列表中。
2.
username@vineetmanohar.com的密码:
输入密码,然后回车。
A.sh目录是在远程机器上创建的,而。authorized_keys文件在其中生成。您需要复制本地计算机上“id_rsa.pub”的所有内容,并将其粘贴到。远程服务器的authorized_keys文件。
01.
mkdir。
02.
chmod 700。
03.
光盘。
04.
触摸授权键
05.
chmod 600授权_密钥
06.
#复制粘贴本地计算机~/的全部内容。authorized_keys中的ssh/id_rsa.pub文件
07.
vi授权_密钥
08.
#注销
09.
出口
现在,您无需输入密码即可登录远程服务器。
1.
#从您的本地计算机键入以下命令
2.
ssh主机名-l用户名
SSH可以不用密码登录!现在,您也可以执行scp操作,而无需输入密码。