Linux怎么设置ssh无密登录
Linux怎么设置ssh无密登录详细介绍
在 Linux 系统中设置 SSH 无密登录,可按以下步骤操作:
1. 生成 SSH 密钥对
在客户端机器上打开终端,使用ssh-keygen命令生成密钥对。一般而言,你可以直接按回车键来使用默认选项。
bash
ssh-keygen rsa
在执行此命令后,会有一系列提示。你可以直接按回车键采用默认的存储路径和空密码。密钥对生成之后,默认会存于~/.ssh目录,包含私钥文件id_rsa和公钥文件id_rsa.pub。
2. 将公钥复制到服务器
借助ssh-copy-id命令把客户端的公钥复制到目标服务器上。
bash
ssh-copy-id username@server_ip
其中,username是你在服务器上的用户名,server_ip是服务器的 IP 地址。执行该命令时,需要输入服务器用户的密码。
3. 验证无密登录
尝试通过 SSH 连接到服务器,验证是否能实现无密登录。
bash
username@server_ip
若无需输入密码就能成功登录,就表明无密登录设置成功。
注意事项
- 若服务器的 SSH 服务使用的不是默认端口(22),在复制公钥和连接服务器时,需要使用
-p选项指定端口号。例如:
bash
ssh-copy-id username@server_ipusername@server_ip
- 要保证服务器上的
~/.ssh目录和~/.ssh/authorized_keys文件的权限设置正确。通常,~/.ssh目录的权限应为 700,~/.ssh/authorized_keys文件的权限应为 600。可以使用以下命令设置权限:
bash
~/.ssh~/.ssh/authorized_keys
9123 ~/.ssh ~/.ssh/authorized_keys
按照上述步骤操作,你就能在 Linux 系统中设置 SSH 无密登录了。