Linux秘钥分发主要涉及SSH(Secure Shell)协议,用于在客户端和服务器之间建立安全的加密连接。秘钥分发通常使用公钥/私钥对来实现无密码登录,提高安全性。
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
-t rsa
:指定生成RSA密钥对。-b 4096
:指定密钥长度为4096位。-C "your_email@example.com"
:添加注释信息。生成的密钥对默认存储在~/.ssh
目录下,文件名为id_rsa
(私钥)和id_rsa.pub
(公钥)。
ssh-copy-id user@server_ip
user
:目标服务器上的用户名。server_ip
:目标服务器的IP地址。执行该命令后,系统会提示输入目标服务器的密码,成功后公钥会被添加到目标服务器的~/.ssh/authorized_keys
文件中。
ssh user@server_ip
如果配置正确,系统会直接登录到目标服务器,无需输入密码。
~/.ssh/authorized_keys
文件中。~/.ssh
目录和~/.ssh/authorized_keys
文件的权限设置正确。chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
/etc/ssh/sshd_config
文件中以下配置项未被注释:PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
重启SSH服务:
sudo systemctl restart sshd
通过以上步骤,你可以成功生成、分发和使用Linux秘钥对,实现安全的无密码登录。
领取专属 10元无门槛券
手把手带您无忧上云