欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

CentOS 6.5中SSH免密码登录配置教程

程序员文章站 2022-06-19 18:58:22
0.说明 这里为了方便说明问题,假设有a和b两台安装了centos6.5的主机。目标是实现a、b两台主机分别能够通过ssh免密码登录到对方主机。不同主机的配置过程一样,这...

0.说明

这里为了方便说明问题,假设有a和b两台安装了centos6.5的主机。目标是实现a、b两台主机分别能够通过ssh免密码登录到对方主机。不同主机的配置过程一样,这里介绍a主机的配置过程。

事先在ab主机分别创建好要免密码登录的用户名,在/etc/hosts文件增加主机名和ip。

创建新用户:useradd linuxidc

设置密码:passwd linuxidc,输入自己想要的密码即可,之后su linuxidc切换用户

修改主机名:vim /etc/sysconfig/network,加入hostname=master,注销系统之后即可看到修改成功

修改hosts文件:

vim /etc/hosts 
192.168.88.101 master 
192.168.88.102 slave1

1.环境设置

1.1 关闭防火墙(root权限)

centos6.5对网络管理相当严格,需要关闭selinux。到/etc/selinux/config下,把selinux=enforcing修改为selinux=disabled 。需要root权限。

# su root

password:

$ vim /etc/selinux/config

找到selinux并修改为selinux=disable

1.2 修改sshd的配置文件(root权限)

$ vim /etc/ssh/sshd_config

  找到以下内容,并去掉注释符“#”

rsaauthentication yes
  pubkeyauthentication yes
  authorizedkeysfile .ssh/authorized_keys

1.3 重启sshd服务(root权限)

$ /sbin/service sshd restart

2.本机生成公钥和私钥

从root切换回要免密码登录的用户linuxidc,执行命令。

# ssh-keygen -t rsa

默认在用户linuxidc的家目录(~/.ssh/)生成两个文件:

id_rsa: 私钥

id_rsa.pub:公钥

3.把公钥导入到认证文件

3.1 导入到本机

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

完成这一步,再按照步骤4修改相关文件权限,可以免密码登录本机。可以输入以下命令验证。

ssh localhost

如果能够登录,即验证成功。

3.2 导入到目标主机

3.2.1在本机操作,传送到目标主机

# scp ~/.ssh/id_rsa.pub root@目标主机ip或主机名:/home/id_rsa.pub

注意把文件传送到目标主机时,要用root用户,否则会因权限不够而拒绝。输入目标主机密码后,出现ok即传输成功。

3.2.2 登录到目标主机,把公钥导入到认证文件

使用要被免密码登录的用户名linuxidc,登录到目标主机。然后执行以下操作。

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

再按照步骤4修改相关文件权限,完成免密码登录设置。

4.更改相关文件的权限

# chmod 700 ~/.ssh
# chmod 600 ~/.ssh/authorized_keys

至此,完成免密码登录设置。

5. 测试

a主机(linuxidc@master),b主机(linuxidc@slave1)。在a主机,切换为linuxidc用户,执行以下命令测试:

ssh slave1

以上所述是小编给大家介绍的centos 6.5中ssh免密码登录配置教程,希望对大家有所帮助