ssh 无密码登陆配置

ssh-keygen 用于为 ssh 生成、管理和转换认证密钥,包括 RSA 和 DSA 两种密钥。

密钥类型可以用 -t

选项指定。如果没有指定则默认生成用于SSH-2的RSA密钥。
ssh-keygen -t rsa -f filename
这是第ssh2密码对生成方式
ssh-keygen -t rsa1 -f filename
这是第ssh1密码对生成方式
Enter same passphrase again: <键入口令短语> Your identification has been saved in /home/jdoe/.ssh/id_rsa.
Your public key has been saved in /home/jdoe/.ssh/id_rsa.pub.
The key fingerprint is:
0e:fb:3d:57:71:73:bf:58:b8:eb:f3:a3:aa:df:e0:d1 root@m
将会生成 filename 和 filename.pub 两个文件
如果要登陆远程机器,只需要将 filename.pub 生成的文件内容,复制到对应机器用户名下的.ssh/authorized_keys 文件内,即可。

                
### 如何配置SSH无密码登录 #### 创建密钥对 为了实现SSH无密码登录,首先需要在客户端机器上创建一对SSH密钥。这可以通过`ssh-keygen`工具完成。运行此命令时可以选择指定保存私钥和公钥的位置以及设置加密强度。 ```bash ssh-keygen -t rsa -b 4096 ``` 该指令会引导用户通过一系列交互来生成RSA类型的密钥文件[^1]。 #### 安装公钥至目标服务器 一旦成功生成了密钥对,则需将产生的公钥复制到想要免密访问的目标服务器上去。通常情况下,可以直接利用`ssh-copy-id`命令简化这一过程: ```bash ssh-copy-id user@remote_host ``` 如果遇到无法使用上述简便方式的情况,则可手动操作——先确保`.ssh`目录存在,接着把本地的公钥内容追加进远程用户的`authorized_keys`文件里去[^2]。 #### 修改SSH服务端配置 为了让服务器接受基于密钥的身份验证请求,可能还需要调整其上的SSHD配置参数。编辑位于`/etc/ssh/sshd_config`下的配置文档,确认启用了下面两个选项: ```plaintext PubkeyAuthentication yes PasswordAuthentication no ``` 更改之后记得重启SSH守护进程使新的设定生效。 #### 设置SSH别名(可选) 对于频繁连接特定几台设备的情形来说,定义一些易于记忆的名字不失为一种好办法。可以在个人账户内的`.ssh/config`中加入类似这样的条目以便日后调用[^3]: ```plaintext Host myalias HostName actual.server.address User your_username ``` 这样以后只需简单地键入`ssh myalias`就能快速建立链接而不再被询问口令了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值