如何在Linux系统中轻松修改SSH端口以增强安全性
linux 修改 ssh端口

首页 2024-12-14 19:24:16



提升安全性:如何在Linux系统中修改SSH端口 在当今的数字化世界中,安全性无疑是每个系统管理员最关心的问题之一

    SSH(Secure Shell)作为一种加密的网络协议,用于在不安全的网络中安全地访问远程计算机,是Linux管理员日常工作中不可或缺的工具

    然而,默认的SSH端口(22)由于其众所周知的特性,常常成为黑客和恶意用户攻击的目标

    为了提高系统的安全性,修改SSH端口是一个简单而有效的措施

    本文将详细介绍如何在Linux系统中修改SSH端口,并通过一些额外的步骤确保新的SSH端口同样安全可靠

     一、了解为什么要修改SSH端口 默认情况下,SSH服务运行在TCP端口22上

    这一事实使得系统容易被恶意用户扫描和攻击

    通过修改SSH端口,可以显著降低被自动化脚本和工具攻击的风险

    此外,修改SSH端口还可以作为一种额外的安全层,增加攻击者识别目标系统SSH服务的难度

     二、准备工作 在修改SSH端口之前,需要做好以下准备工作: 1.备份SSH配置文件:在修改配置文件之前,备份原始文件是一个好习惯

    这可以在出现问题时快速恢复默认设置

     2.检查新端口的可用性:确保新的SSH端口没有被其他服务占用

    可以使用`netstat`或`ss`命令检查端口使用情况

     3.防火墙配置:在修改SSH端口后,需要更新防火墙规则,允许新的端口通过,同时阻止旧的22端口

     4.远程访问测试:在修改配置并重启SSH服务之前,最好确保能够通过其他方式(如物理访问或使用现有SSH会话)重新连接到服务器,以防万一新的配置导致无法连接

     三、修改SSH端口 以下是修改SSH端口的具体步骤,以常见的Linux发行版(如Ubuntu、CentOS)为例: 1.编辑SSH配置文件: SSH的配置文件通常位于`/etc/ssh/sshd_config`

    使用文本编辑器(如`nano`、`vim`)打开该文件: bash sudo nano /etc/ssh/sshd_config 2.查找并修改Port行: 在配置文件中,找到包含`Port 22`的行

    默认情况下,这行可能被注释掉(以`#`开头)

    去掉注释符号,将`22`改为你想要的新端口号(例如`2222`): plaintext Port 2222 如果需要,可以添加多个`Port`行以支持多个端口(不推荐,因为这可能增加安全风险)

     3.保存并退出编辑器: 根据使用的编辑器,保存更改并退出

    例如,在`nano`中,按`Ctrl+O`保存文件,然后按`Ctrl+X`退出

     4.重启SSH服务: 修改配置文件后,需要重启SSH服务以使更改生效

    使用以下命令重启服务: bash sudo systemctl restart sshd 或者在一些旧版本的系统中,使用: bash sudo service ssh restart 5.验证修改: 使用`ss`或`netstat`命令检查SSH服务是否在新端口上运行: bash sudo ss -tuln | grep sshd 或者: bash sudo netstat -tuln | grep sshd 你应该看到类似`LISTEN`状态的条目,显示新端口(如`2222`)

     四、更新防火墙规则 为了确保新的SSH端口可以被远程访问,同时旧的22端口被阻止,需要更新防火墙规则

     1.允许新端口: 以`ufw`(Uncomplicated Firewall)为例,如果使用的是`ufw`,可以使用以下命令允许新端口: bash sudo ufw allow 2222/tcp 如果使用的是`firewalld`,则可以使用: bash sudo firewall-cmd --zone=public --add-port=2222/tcp --permanent sudo firewall-cmd --reload 2.阻止旧端口: 同样,需要阻止默认的22端口

    对于`ufw`: bash sudo ufw deny 22/tcp 对于`firewalld`: bash sudo firewall-cmd --zone=public --remove-port=22/tcp --permanent sudo firewall-cmd --reload 五、测试新的SSH连接 在进行了上述更改后,应该尝试从远程计算机连接到新的SSH端口,以验证配置是否正确

    使用以下命令: ssh -p 2222 username@your_server_ip 确保连接成功,并且能够正常执行命令

     六、额外安全措施 除了修改SSH端口外,还可以采取其他安全措施来进一步增强SSH服务的安全性: 1.使用SSH密钥认证:禁用密码登录,仅允许使用SSH密钥进行认证

    这可以显著提高安全性,减少暴力破解的风险

     2.限制访问来源:通过防火墙规则或SSH配置,限制可以访问SSH服务的IP地址范围

     3.定期更新和升级:确保SSH服务器和相关软件保持最新,及时修复已知的安全漏洞

     4.使用SELinux或AppArmor:这些安全模块可以进一步限制SSH服务的权限,减少潜在的安全风险

     5.日志监控:定期审查SSH日志,查找可疑登录尝试和未授权访问的迹象

     七、总结 修改SSH端口是提升Linux系统安全性的一个重要步骤

    通过这一简单的更改,可以显著降低被自动化攻击工具扫描和攻击的风险

    然