HCRM博客

如何在CentOS系统中使用SSH进行密码登录?

CentOS SSH 密码登录配置指南

一、SSH 简介

SSH(Secure Shell)是一种加密的网络传输协议,用于在不安全的网络中安全地远程登录和其他网络服务,SSH使用公钥加密来认证远程的计算机,以确保数据的机密性和完整性。

如何在CentOS系统中使用SSH进行密码登录?-图1
(图片来源网络,侵权删除)

二、配置步骤

1. 生成密钥对

在服务器上生成一对公钥和私钥:

sshkeygen t rsa

按提示操作,可以选择存储路径和设置密钥密码,完成后,会在~/.ssh 目录下生成两个文件:id_rsa(私钥)和id_rsa.pub(公钥)。

2. 安装公钥

将公钥复制到服务器的目标用户账户中:

sshcopyid user@server_ip

此命令会将本地公钥追加到远程服务器对应用户的~/.ssh/authorized_keys 文件中。

如何在CentOS系统中使用SSH进行密码登录?-图2
(图片来源网络,侵权删除)

3. 配置 SSH

编辑 SSH 配置文件以启用公钥认证并禁用密码认证:

sudo vim /etc/ssh/sshd_config

确保以下配置项存在且未被注释:

RSAAuthentication yes
PubkeyAuthentication yes
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM yes

保存并关闭文件后,重启 SSH 服务:

sudo systemctl restart sshd

4. 验证配置

尝试使用以下命令进行登录,确认是否成功:

如何在CentOS系统中使用SSH进行密码登录?-图3
(图片来源网络,侵权删除)
ssh user@server_ip

如果配置正确,系统不应提示输入密码。

5. (可选)修改端口号

为了增强安全性,可以修改 SSH 默认端口号(22):

sudo vim /etc/ssh/sshd_config

找到并修改Port 配置项:

Port 新的端口号

保存后,重新启动 SSH 服务:

sudo systemctl restart sshd

6. 防火墙设置

确保防火墙允许新的 SSH 端口号:

sudo firewallcmd permanent addport=新的端口号/tcp
sudo firewallcmd reload

三、常见问题及解决方法

Q1: 无法通过公钥认证登录怎么办?

A1: 确保公钥已正确复制到远程服务器的~/.ssh/authorized_keys 文件中,并且权限设置正确:

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

检查 SSH 服务是否正在运行,并且配置文件中没有语法错误。

Q2: 如何更改 SSH 端口数?

A2: 编辑 SSH 配置文件/etc/ssh/SSHD_config,找到并修改Port 配置项,然后重启 SSH 服务即可,记得更新防火墙规则以允许新的端口号通过。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/18782.html

分享:
扫描分享到社交APP
上一篇
下一篇