在Ubuntu系统中,可以使用 Uncomplicated Firewall (UFW) 和 iptables 来配置防火墙和进行基本的入侵检测。以下是详细步骤:

安装UFW(如果尚未安装):
sudo apt updatesudo apt install ufw启用UFW:
sudo ufw enable配置UFW规则:
sudo ufw allow 80/tcp# 允许HTTPsudo ufw allow 443/tcp # 允许HTTPSsudo ufw allow 22/tcp# 允许SSHsudo ufw deny 22/tcp# 拒绝SSH查看UFW状态:
sudo ufw status删除规则:
sudo ufw delete allow 80/tcp# 删除允许80端口的规则禁用UFW:
sudo ufw disable安装iptables(如果尚未安装):
sudo apt updatesudo apt install iptables编辑iptables规则:编辑 /etc/iptables.rules 文件,添加允许和拒绝规则:
sudo vi /etc/iptables.rules示例规则:
*filter:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [0:0]# 允许常用端口-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT# 允许HTTP-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT # 允许HTTPS-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT# 允许SSH# 允许本地回环接口-A INPUT -i lo -j ACCEPT-A OUTPUT -o lo -j ACCEPT# 允许已建立的连接-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT# 拒绝所有其他输入-A INPUT -j DROPCOMMIT加载并生效规则:
sudo iptables-restore < /etc/iptables.rules查看当前规则:
sudo iptables -L -n保存iptables规则:
sudo apt install iptables-persistentsudo netfilter-persistent save确保防火墙开机自启:创建软链接并编辑 /etc/rc.local 文件:
sudo ln -s /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.servicesudo vi /etc/rc.local在文件中添加:
iptables-restore < /etc/iptables.rules给 /etc/rc.local 文件添加执行权限:
sudo chmod +x /etc/rc.local启动并启用服务:
sudo systemctl enable rc-local.servicesudo systemctl start rc-local.service对于更高级的入侵检测,可以使用 Snort 或 Suricata。以下是安装Suricata的步骤:
安装依赖项:
sudo apt install autoconf automake build-essential cargo cbindgen libjansson-dev libpcap-dev libcap-ng-dev libmagic-dev liblz4-dev libpcre2-dev libtool libyaml-dev make pkg-config rustc zlib1g-dev -y下载并解压Suricata源代码:
wget https://www.openinfosecfoundation.org/download/suricata-7.0.6.tar.gztar xvzf suricata-7.0.6.tar.gzcd suricata-7.0.6配置并安装:
./configure --enable-nfqueue --prefix=/usr --sysconfdir=/etc --localstatedir=/varsudo make && sudo make install-full启动Suricata:
sudo systemctl enable --now suricata配置Suricata:编辑 /etc/suricata/suricata.yaml 文件,配置网络接口和规则集:
sudo nano /etc/suricata/suricata.yaml更新Suricata规则:
sudo suricata-update测试Suricata:
sudo suricata -T -c /etc/suricata/suricata.yaml -v通过以上步骤,您可以在Ubuntu系统上配置基本的防火墙和入侵检测系统,确保系统的安全性和稳定性。