服务器配置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来编辑该文件:

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:

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”的问题,朋友们可以点击主页了解更多内容,希望可以够帮助大家!
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复