手把手教你实现 Linux 服务器间免密登录!别再输密码了,太 Low​

今天手把手教你配置 Linux 服务器间的免密登录,学会了这招,别人还在敲密码的时候,你已经优雅地完成了十台服务器的部署。​

为什么要免密登录?​

传统的 SSH 登录每次都要输入密码,这在单台服务器上问题不大,但当你要管理几十上百台服务器,或者需要编写自动化脚本批量执行命令时,密码就成了拦路虎。免密登录基于 SSH 密钥对认证,公钥丢给目标服务器,私钥自己留着,每次登录就像刷脸一样,安全又高效。​

环境准备​

假设你有两台 Linux 服务器:​

确保两台机器都安装了 OpenSSH 服务(绝大多数 Linux 发行版默认安装)。​

生成 SSH 密钥对​

生成密匙对

登录客户端服务器,执行以下命令生成密钥对:​

ssh-keygen -t rsa

一路回车使用默认配置,会在用户主目录下的.ssh文件夹生成两个文件:​

  • id_rsa:私钥(打死不能泄露!)​
  • id_rsa.pub:公钥(可以随意分发)​
分发公钥到服务端​

将客户端的公钥追加到服务端的authorized_keys文件中​

使用 ssh-copy-id

如果你安装了ssh-copy-id工具(CentOS/RHEL 需要先安装openssh-clients包),直接执行:​

ssh-copy-id username@192.168.1.101

输入服务端的密码,公钥就会自动写入。​

测试免密登录​

在客户端执行:​

ssh username@192.168.1.101

如果成功登录且没有提示输入密码,恭喜你,配置成功!​

常见问题排查​
  1. 权限问题:~/.ssh目录权限必须是 700,authorized_keys权限必须是 600,否则 SSH 会拒绝认证。​
  1. 密钥格式错误:确保authorized_keys文件中每行一个公钥,且格式正确。​
  1. SELinux 或防火墙:如果是 CentOS/RHEL,检查 SELinux 策略或防火墙是否拦截了 SSH 连接。​

进阶技巧​

  • 多台服务器互信:重复上述步骤,让所有服务器互相持有对方公钥。​
  • 密钥对管理:定期更新密钥,避免长期使用同一套密钥带来安全风险。​

别再让密码拖慢你的脚步,赶紧把这套免密登录配置玩明白。下次有人还在手动敲密码,你就可以优雅地甩出一句:“还在输密码?格局小了!”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值