创建SSH无密码登陆

第一步,产生秘钥

[root@hypcentos ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
/root/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
e1:57:8e:ef:fe:26:5e:cc:e2:d4:53:53:ba:ca:05:80 root@hypcentos

第二步,不能传输pub密钥(公钥)

[root@hypcentos ~]scp id_rsa.pub root@hypubuntusrv:/root/.ssh/hypcentos

第三步,修改~/.ssh 下的 authorized_keys

root@hypubuntusrv:~/.ssh# cat hypcentos >> authorized_keys

 

记录下来给自己用,也方便他人。

 

 

 

### SSH密钥生成与使用 #### 生成SSH密钥 为了创建SSH密钥,可以利用`ssh-keygen`工具。此工具有助于生成不同类型的加密密钥,包括RSA和ED25519。 对于更安全的选择,建议采用ED25519算法来生成密钥: ```bash ssh-keygen -t ed25519 ``` 如果偏好传统方式或者目标服务器仅支持RSA,则可以选择生成4096位长度的RSA密钥以增强安全性[^2]: ```bash ssh-keygen -t rsa -b 4096 ``` 当执行上述任一命令时,默认情况下会提示用户确认保存私钥的位置以及设置密码短语用于保护私钥文件的安全性。如果不希望被询问默认路径可以直接通过参数指定存储位置。 #### 使用SSH密钥连接远程主机 一旦成功生成了一对公私钥之后,下一步就是将公共部分部署到想要访问的目标机器上。通常这涉及到把`.pub`结尾的内容追加至远端用户的`~/.ssh/authorized_keys`文件里去。可以通过多种手段完成这一操作;一种简便的方法是借助`ssh-copy-id`命令自动处理这个过程: ```bash ssh-copy-id user@remote_host ``` 以上指令将会尝试登录到名为`remote_host`的计算机,并按照指示添加本地生成的新建公钥进入授权列表中以便后续无密码验证登陆。 #### 解决常见问题 有时可能会遇到权限错误或者其他阻碍正常工作的状况,在这种情形下应该仔细检查几个方面: - 确认所有涉及的关键文件都拥有恰当的所有者属性(`chmod 700 ~/.ssh`) 和读写权限 (`chmod 600 ~/.ssh/id_rsa`) - 验证所使用的身份认证材料确实存在于预期的地方并且格式正确 - 如果仍然无法建立信任关系,请考虑清除已知主机记录 `known_hosts` 或重新导入正确的证书副本
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值