温馨提示×

Debian防火墙SSH保护

小樊
65
2025-06-01 18:21:21
栏目: 智能运维

在Debian系统中,可以通过配置防火墙来保护SSH服务,防止未经授权的访问和潜在的安全威胁。以下是几种常用的方法来配置Debian防火墙以保护SSH服务:

使用UFW配置防火墙

  1. 安装UFW(如果尚未安装):
sudo apt update
sudo apt install ufw
  1. 启用UFW
sudo ufw enable
  1. 允许特定端口
  • 允许SSH(默认端口22)入站连接:
sudo ufw allow 22/tcp
  • 允许HTTP(80端口)入站连接:
sudo ufw allow 80/tcp
  • 允许HTTPS(443端口)入站连接:
sudo ufw allow 443/tcp
  1. 查看防火墙状态及规则
  • 查看防火墙状态:
sudo ufw status
  • 查看详细的防火墙规则:
sudo ufw status verbose
  1. 禁用/启用UFW
  • 禁用UFW:
sudo ufw disable
  • 启用UFW(如果之前已禁用):
sudo ufw enable

使用iptables配置防火墙

  1. 安装iptables(如果尚未安装):
sudo apt update
sudo apt install iptables
  1. 配置规则
  • 允许SSH(22端口)入站连接:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  • 允许HTTP(80端口)入站连接:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  • 允许HTTPS(443端口)入站连接:
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
  • 允许MySQL(3306端口)入站连接:
sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
  1. 保存规则
sudo iptables-save /etc/iptables/rules.v4
  1. 加载规则

在系统启动时加载保存的规则:

sudo iptables-restore /etc/iptables/rules.v4
  1. 设置自启动

创建自启动脚本:

sudo vim /etc/network/if-pre-up.d/iptables

添加以下内容:

#!/bin/sh
/sbin/iptables-restore /etc/iptables/rules.v4

赋予执行权限:

sudo chmod x /etc/network/if-pre-up.d/iptables

强化SSH服务安全

  1. 使用基于密钥的身份验证
  • 创建强SSH密钥并使用基于密钥的身份验证建立安全的身份验证方法。
  1. 更改SSH端口号
  • 将SSH端口改为一个不常用的端口,以减少被暴力破解的可能性。
  1. 禁用SSH根登录
  • 修改SSH服务配置文件,设置 PermitRootLogin no,禁止使用root账户直接登录。
  1. 删除旧的不安全SSH协议
  • 禁用SSH版本1协议,防止因设计缺陷而遭受攻击。
  1. 启用SSH日志记录和监控
  • 实施fail2ban等工具,监控和阻止失败的SSH登录尝试。
  1. 使用防火墙通过IP地址限制SSH访问
  • 配置iptables或其他防火墙软件,仅允许特定的IP地址访问SSH端口。
  1. 使用双因素身份验证(2FA)
  • 为SSH登录添加额外的安全层。
  1. 将SSH登录限制为特定用户/IP地址
  • 在配置文件中添加规则,仅允许特定用户或IP地址通过SSH登录。

通过上述措施,可以显著提高Debian系统上SSH服务的安全性,有效防范各种潜在漏洞的威胁。需要注意的是,SSH的安全性与具体配置和管理方式密切相关,建议定期审查和更新安全策略以应对新的安全威胁。

0