ssh到另一台机器不需要数据密码

简介:

原贴地址 

http://rainbird.blog.51cto.com/211214/44357/


有些时候,我们在复制/移动文件到另一台机器时会用到scp,因为它比较安全。但如果每次 


都要输入密码,就比较烦了,尤其是在script里。不过,ssh有另一种用密钥对来验证的方 


式。下面写出我生成密匙对的过程,供大家参考。 


第一步:生成密匙对,我用的是rsa的密钥。使用命令 "ssh-keygen -t rsa" 



   [user1@rh user1]$ ssh-keygen -t rsa


   Generating public/private rsa key pair.


   Enter file in which to save the key (/home/user1/.ssh/id_rsa):


   Created directory '/home/user1/.ssh'.


   Enter passphrase (empty for no passphrase):


   Enter same passphrase again:


   Your identification has been saved in /home/user1/.ssh/id_rsa.


   Your public key has been saved in /home/user1/.ssh/id_rsa.pub.


   The key fingerprint is:


   e0:f0:3b:d3:0a:3d:da:42:01:6a:61:2f:6c:a0:c6:e7 user1@rh.test.com


   [user1@rh user1]$



生成的过程中提示输入密钥对保存位置,直接回车,接受默认值就行了。接着会提示输入一 


个不同于你的password的密码,直接回车,让它空着。当然,也可以输入一个。(我比较懒 


,不想每次都要输入密码。) 这样,密钥对就生成完了。 


其中公共密钥保存在 ~/.ssh/id_rsa.pub 

私有密钥保存在 ~/.ssh/id_rsa 


然后改一下 .ssh 目录的权限,使用命令 "chmod 755 ~/.ssh" 


   [user1@rh user1]$ chmod 755 ~/.ssh


   [user1@rh user1]$




之后把这个密钥对中的公共密钥复制到你要访问的机器上去,并保存为  


~/.ssh/authorized_keys. 



   [user1@rh user1]$ scp ~/.ssh/id_rsa.pub rh1:/home/user1/.ssh/authorized_keys


   user1@rh1's password:


   id_rsa.pub                                    100%  228     3.2MB/s   00:00


   [user1@rh user1]$




之这样就大功告成了。之后你再用ssh scp sftp 之类的访问那台机器时,就不用输入密码 


了,用在script上更是方便。

感谢这位网友,写的很详细。。。


使用无密码传输报错

wKiom1dnny2T1JkPAAAbzsyuirE057.png-wh_50


解决方法

ssh-keygen -R IP 



本文转自aaa超超aaa 51CTO博客,原文链接:http://blog.51cto.com/10983441/1782432

相关文章
|
网络安全 数据安全/隐私保护
ssh远程执行命令自动输入密码方式
ssh远程执行命令自动输入密码方式
2119 0
|
运维 应用服务中间件 网络安全
Ansible自动化运维工具之解决SSH连接使用明文密码问题(4)
Ansible自动化运维工具之解决SSH连接使用明文密码问题(4)
136 0
|
24天前
|
安全 Shell Linux
ssh密码忘记了怎么办
通过上述措施,不仅能够有效应对SSH密码遗忘的挑战,还能全方位加固SSH连接的安全,确保数据传输的无忧。
17 2
|
3月前
|
安全 Shell 网络安全
告别繁琐密码,一键解锁GitHub高效秘籍!SSH配置大揭秘,让你的代码托管之旅飞起来!
【8月更文挑战第4天】在使用GitHub时,频繁输入账号密码颇为不便。采用SSH协议可提升安全性并简化流程。本文以问答形式指导你快速配置GitHub SSH:了解SSH优势、学会生成与添加SSH密钥及测试连接。通过简单的步骤,即可实现无缝代码推送与拉取,享受高效、安全的开发体验。记得保护好私钥并根据需要设置多个密钥对。
60 7
|
6月前
|
安全 网络安全 数据安全/隐私保护
ansible 建立ssh信任并分发到各个机器
ansible 建立ssh信任并分发到各个机器
142 0
|
3月前
|
安全 Linux 网络安全
在Linux中,使用rsync同步数据时,假如采用的是ssh方式,并且目标机器的sshd端端并不是默认的22端口,该如何做?
在Linux中,使用rsync同步数据时,假如采用的是ssh方式,并且目标机器的sshd端端并不是默认的22端口,该如何做?
|
3月前
|
安全 Linux Shell
Linux系统之间实现免密码登录(SSH无密码登录
【8月更文挑战第21天】要在Linux系统间实现SSH免密码登录,需先在源机器生成SSH密钥对,然后将公钥复制到目标机器的`.ssh/authorized_keys`文件中。可通过`ssh-keygen`命令生成密钥,并使用`ssh-copy-id`命令传输公钥。最后测试SSH连接,确保能无密码登录。若目标机器缺少相关目录或文件,需手动创建并设置适当权限。完成这些步骤后,即可实现安全便捷的免密码登录。
118 0
|
5月前
|
安全 Linux Shell
SSH服务器拒绝密码登录的解决方法
SSH服务器拒绝密码登录的解决方法
1293 1
|
4月前
|
网络安全 数据安全/隐私保护
服务器密码登录出现了:SSH connection failed: connect ECONNREFUSEDxxxxxxxx:22 * Xshell提示 SSH connection fa
服务器密码登录出现了:SSH connection failed: connect ECONNREFUSEDxxxxxxxx:22 * Xshell提示 SSH connection fa
|
4月前
|
监控 网络协议 网络安全
ssh服务中如何批量管理100多台机器(Paramiko、 psutil模块)、跳板机(堡垒机)
ssh服务中如何批量管理100多台机器(Paramiko、 psutil模块)、跳板机(堡垒机)