HCRM博客

CentOS 7.3 SSH服务配置与优化指南

CentOS 7.3 SSHD配置与优化

CentOS 7.3 SSH服务配置与优化指南-图1

SSH简介

SSH(Secure Shell)是一种网络协议,用于计算机之间的安全通信和数据传输,SSH协议提供了数据加密、认证和完整性保护,广泛应用于远程登录、文件传输、远程命令执行等场景,在CentOS 7.3系统中,SSH服务由sshd守护进程提供。

sshd配置文件

sshd守护进程的配置文件位于/etc/ssh目录下,主要包括以下文件:

  • sshd_config:主要配置文件,包含了sshd守护进程的大部分配置项。
  • ssh_config:客户端配置文件,用于配置客户端SSH连接。
  • moduli:密钥交换算法参数文件。

基本配置

开启SSH服务

确保SSH服务已经安装:

sudo yum install openssh-server

启动SSH服务并设置开机自启:

sudo systemctl start sshd
sudo systemctl enable sshd
  1. 编辑sshd_config文件

使用文本编辑器打开sshd_config文件:

CentOS 7.3 SSH服务配置与优化指南-图2

sudo nano /etc/ssh/sshd_config

以下是sshd_config文件中一些常见的配置项及其作用:

配置项说明
PortSSH服务监听的端口号,默认为22。
PermittedUser允许登录SSH的用户名。
PasswordAuthentication是否允许使用密码认证,默认为yes。
PermitRootLogin是否允许root用户登录,默认为no。
StrictModes是否严格遵循文件权限,默认为yes。
X11Forwarding是否允许X11转发,默认为no。
GSSAPIAuthentication是否使用GSSAPI认证,默认为yes。

重启sshd服务

配置完成后,重启sshd服务使配置生效:

sudo systemctl restart sshd

安全优化

关闭root用户登录

PermitRootLogin设置为no,禁止root用户通过SSH登录:

sudo nano /etc/ssh/sshd_config
PermitRootLogin no

设置密码复杂度

可以使用chage命令设置密码复杂度:

sudo chage -d 0 -M 30 -m 7 -W 7 -E 0 username
  • -d 0:立即更改密码。
  • -M 30:密码更改周期为30天。
  • -m 7:密码在更改后必须至少使用7天。
  • -W 7:密码过期前7天提示用户更改密码。
  • -E 0:密码永久有效。

使用密钥认证

CentOS 7.3 SSH服务配置与优化指南-图3

创建用户密钥对:

ssh-keygen -t rsa -b 2048

将公钥添加到远程主机的~/.ssh/authorized_keys文件中:

ssh-copy-id username@remote_host

FAQs

  1. 问题:如何查看SSH服务状态?

    解答: 使用以下命令查看SSH服务状态:

    sudo systemctl status sshd
  2. 问题:如何禁用密码认证,仅使用密钥认证?

    解答:sshd_config文件中,将PasswordAuthentication设置为no,然后重启sshd服务:

    sudo nano /etc/ssh/sshd_config
    PasswordAuthentication no
    sudo systemctl restart sshd

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

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
请登录后评论...
游客游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~