Linux配置免密码登陆

Linux配置免密码登陆

在分布式系统发展迅速的当下,运维人员对一个项目进行维护时都要经常在多台服务器的多个系统中来回切换,每次都要输入密码,特别麻烦。为方便运维人员在多个Linux系统之间来回切换和传送数据,配置免密码登录就显得尤为重要了。在Linux系统中,大都采用ssh公钥认证进行验证登录,而ssh配置的文件大多数都存放在当前用户目录的 .ssh 文件夹下(即 ~/.ssh),本教程就是通过配置这些文件进行配置免密登录的。

一、在本地创建一个无密码的密钥文件

ssh-keygen是一个用来生成ssh公钥和私钥文件的一个工具,本步骤将使用该工具,在本地系统中创建空白的密钥文件。
首先,先创建并进入存放密钥文件的目录

mkdir ~/.ssh
cd ~/.ssh

然后创建一个空白的密钥文件(创建时一路回车即可)

ssh-keygen -t rsa	//-t 选着密钥类型(rsa/dsa)

生成后在目录下会生成一个私钥(id_rsa)和一个公钥(id_rsa.pub)

二、将生成的公钥添加进keys

一般,Linux的密钥文件都放在 “~/.ssh/authorized_keys” 下

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

三、测试本地免密码登陆

使用ssh登录本地,验证本地密钥是否安装成功

ssh localhost/127.0.0.1

四、在远端系统创建密钥文件夹

mkdir ~/.ssh

五、将本地的公钥分发到远端系统

scp ~/.ssh/authorized_keys [email protected]:~/.ssh/authorized_keys

六、远端系统赋予密钥文件权限

chmod 600 ~/.ssh/authorized_keys

七、本地验证远端公钥是否安装成功

ssh连接远端系统,如果经常连接可以更改一下hosts,直接连接主机名亦可

ssh XXX.XXX.XXX.XXX

注:本教程旨在记录笔者学习过程中所学到的知识,若有侵权请联系笔者删除。
另外由于笔者水平有限,若发现错误可联系笔者更正,互相学习,谢谢。

你可能感兴趣的:(Linux)