English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

دليل تكوين تسجيل الدخول بدون كلمة المرور SSH تحت CentOS 6.5

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، وأecute الأمر التالي للاختبار:

ssh slave1

ما ذكرته أعلاه هو دليل التكوين لتسجيل الدخول بدون كلمة المرور لـ SSH في CentOS 6.5، آمل أن يكون هذا مفيدًا لكم. إذا كان لديكم أي استفسارات، فلا تترددوا في ترك تعليق، وسأقوم بالرد على رسائلكم في أقرب وقت. وأشكركم أيضًا على دعمكم لموقع呐喊 لتعليم البرمجة!

أنت قد تحب