Linux 本地生成公钥访问远程服务器
配置 SSH 密钥登录(公钥认证)替代传统密码登录,是实现秒连远程服务器的标配操作。在 Linux 上完成密钥生成与配置只需三步。
第一步:生成 Ed25519 密钥对
目前不推荐使用老旧的 rsa 算法。推荐使用更安全、更小巧、计算更快的 Ed25519 算法。
打开终端,运行:
ssh-keygen -t ed25519 -C "your name"-t ed25519:指定使用 Ed25519 算法。-C:添加注释(通常写名字或邮箱),方便辨识。
执行过程中会弹出两个提示:
- Enter file in which to save the key…:直接回车,密钥默认保存到
~/.ssh/id_ed25519。 - Enter passphrase…:直接回车(留空),即不设置密码短语。
完成后,~/.ssh/ 目录下会多出两个文件:
id_ed25519(私钥):相当于你的主钥匙,绝对不能泄露给任何人。id_ed25519.pub(公钥):相当于一把锁,需要放到服务器上。
第二步:将公钥上传到远程服务器
Linux 提供了 ssh-copy-id 工具,可一键将公钥追加到服务器对应位置。
在本地终端执行(将 user 和 server_ip 替换为实际的用户名和 IP):
ssh-copy-id user@server_ip注意:此处会提示输入最后一次服务器的传统登录密码。输入成功后,公钥会自动写入服务器的
~/.ssh/authorized_keys文件中。
第三步:免密登录
配置完成后,直接登录即可:
ssh user@server_ip无需输入密码,直接进入服务器。