如何为服务器配置SSHD?

服务器配置sshd

服务器配置sshd

1. SSH服务简介

SSH(Secure Shell)是一种用于远程登录和管理计算机的加密网络协议,它不仅提供安全的远程登录功能,还能够进行文件传输和端口转发等操作,SSH协议通过加密技术保障数据传输的安全性,防止数据在传输过程中被窃取或篡改。

2. 安装OpenSSH服务器

1 Debian/Ubuntu系统

Debian和Ubuntu系统使用APT包管理器来安装OpenSSH服务器,打开终端并执行以下命令:

sudo apt-get update
sudo apt-get install openssh-server

2 CentOS/RHEL系统

CentOS和RHEL系统使用YUM或DNF包管理器来安装OpenSSH服务器,打开终端并执行以下命令:

sudo yum install openssh-server
或者对于较新的RHEL/CentOS版本
sudo dnf install openssh-server

3. 配置SSH服务器

SSH服务器的主配置文件是/etc/ssh/sshd_config,可以使用文本编辑器如nano或vi来编辑该文件:

服务器配置sshd
sudo nano /etc/ssh/sshd_config

1 基本配置选项

以下是一些常见的配置选项及其说明:

3.1.1 监听端口

默认情况下,SSH服务监听22号端口,可以通过修改Port参数来更改为其他端口:

Port 22

3.1.2 监听地址

指定SSH服务监听的主机网卡地址,默认值为0.0.0.0,表示监听所有接口:

ListenAddress 0.0.0.0

3.1.3 协议版本

选择使用的SSH协议版本,推荐使用版本2:

服务器配置sshd
Protocol 2

3.1.4 主机密钥

指定SSH服务器使用的私钥文件,默认情况下,SSH会生成这些文件:

HostKey /etc/ssh/ssh_host_key
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key

3.1.5 日志级别

设置日志记录的详细程度:

LogLevel INFO

3.1.6 是否允许root登录

出于安全考虑,通常禁用root用户登录:

PermitRootLogin no

3.1.7 密码认证

启用或禁用密码认证,为了增强安全性,可以禁用密码认证而仅使用公钥认证:

PasswordAuthentication yes
或者禁用密码认证
PasswordAuthentication no

3.1.8 公钥认证

启用公钥认证并指定公钥文件的位置:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

3.1.9 登录超时时间

设置登录超时时间,单位为秒:

LoginGraceTime 120

2 高级配置选项

3.2.1 连接限制

为了防止暴力破解,可以限制用户的并发连接数:

MaxSessions 10

3.2.2 禁止TCP转发

禁用TCP转发以提高安全性:

AllowTcpForwarding no

3.2.3 客户端存活消息

设置客户端存活消息的间隔和最大次数,以防止长时间未活动的连接被断开:

ClientAliveInterval 30
ClientAliveCountMax 3

4. 生成SSH密钥对

为了使用密钥认证,需要在客户端生成SSH密钥对,并将公钥复制到服务器的~/.ssh/authorized_keys文件中,在客户端执行以下命令:

ssh-keygen
ssh-copy-id username@server_address

5. 管理SSH服务

1 启动SSH服务

使用systemctl命令启动SSH服务:

sudo systemctl start sshd

2 设置开机自启

确保SSH服务在系统启动时自动运行:

sudo systemctl enable sshd

3 检查SSH服务状态

查看SSH服务的运行状态:

sudo systemctl status sshd

6. 防火墙配置

确保防火墙规则允许SSH服务的端口(默认是22):

sudo ufw allow 22/tcp
或者使用特定端口,替换22为你的SSH端口

7. 安全加固建议

1 定期更新系统和软件包

定期更新系统和OpenSSH软件包以获取最新的安全补丁:

sudo apt-get update && sudo apt-get upgrade
或者在CentOS/RHEL上使用以下命令:
sudo yum update
或者在较新的RHEL/CentOS版本上使用以下命令:
sudo dnf update

2 使用Fail2Ban防止暴力破解

安装并配置Fail2Ban工具来防止暴力破解:

sudo apt-get install fail2ban
或者在CentOS/RHEL上使用以下命令:
sudo yum install fail2ban
配置Fail2Ban守护程序,编辑/etc/fail2ban/jail.conf文件,添加以下内容:
[sshd]
enabled = true
port    = ssh
logpath = /var/log/auth.log
maxretry = 3

3 审核SSH日志

定期审核SSH日志以监控登录尝试:

cat /var/log/auth.log | grep sshd

8. 归纳

通过以上步骤,您可以成功配置和管理SSH服务,确保其在服务器上的安全运行,根据实际需求,您可以进一步调整配置文件中的选项,以满足特定的安全要求和应用场景。

以上就是关于“服务器配置sshd”的问题,朋友们可以点击主页了解更多内容,希望可以够帮助大家!

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2024-11-11 09:00
下一篇 2024-11-11 09:25

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

QQ-14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信