Люди, которые использовали системы Linux, должны быть знакомы с iptables — брандмауэром, который поставляется с Linux, начиная с версии ядра 2.4.x. Теперь, когда ядро Linux обновлено до версии 5.11.x, брандмауэр Linux создал UFW и Firewalld на основе iptables и заменил iptables в некоторых дистрибутивах.
Netfilter/Iptables
Netfilter / Iptables Система Linux поставляется с брандмауэром, правилами управления Iptables, Netfilter является исполнителем правил, которые вместе составляют Linux, брандмауэр с фильтрацией пакетов.
В iptables есть четыре встроенные таблицы, а именно таблица фильтров, таблица nat, таблица mangle и таблица необработанных данных, которые используются для реализации фильтрации пакетов, преобразования сетевых адресов, реконструкции (модификации) пакетов и обработки отслеживания данных соответственно. Каждая таблица будет иметь соответствующую цепочку. На следующем рисунке показаны четыре таблицы и пять цепочек в iptables:
Цепочки — это пути, по которым проходят пакеты. В каждой цепочке может быть одно или несколько правил.Когда пакет поступает в цепочку, iptables будет проверять, начиная с первого правила в цепочке, чтобы увидеть, соответствует ли пакет условиям, определенным правилом. Если это так, система обработает пакет в соответствии с методом, определенным правилом, в противном случае iptables продолжит проверку следующего правила. Если пакет не соответствует ни одному из правил в цепочке, iptables обрабатывает пакет в соответствии с предопределенными политиками цепочки по умолчанию.
Эта статья о принципе iptables очень ясно дает понять:blog.CSDN.net/Tennysons может…
В Linux вы можете включить или отключить iptables с помощью следующих команд
// 启动iptables
systemctl start iptables
// 停止iptables
systemctl stop iptables
Обычно используются следующие команды:
// 列出 INPUT 表中规则
iptables -L INPUT
// 允许3306端口TCP协议访问
iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
// 允许IP为xxx.xxx.xxx.xxx通过udp访问本地500端口
iptables -I INPUT -p udp --dport 500 -s xxx.xxx.xxx.xxx -j ACCEPT
// -I参数是将规则插入表开头,-A是把规则添加到表未尾,优先级最低,可做为默认规则
// 当不符合前面规则后拒绝所有请求
iptables -A INPUT -p tcp -j REJECT
// 删除INPUT表中第1条规则
iptables -D INPUT 1
// 清空规则列表
iptables -F
iptables также может выполнять пересылку пакетов на основе ядра. В Интернете слишком много статей об использовании iptables, поэтому я не буду писать больше.
Следует отметить, что хотя правила iptables могут вступить в силу немедленно, они не сохраняются. Он будет потерян после включения питания.
Сохранение выполнения системы RedHat:
service iptables save
Система Debian выполняет iptables-save, чтобы получить список всех правил и сохранить вывод в файл. Восстановление с помощью iptables-restore при запуске системы.
// 保存
iptables-save > /etc/iptables.conf
// 恢复
iptables-restore < /etc/iptables.conf
UFW и брандмауэр
Iptables очень мощный и сложный, поэтому есть UFW и Firewalld. Их команды намного проще и понятнее, а нижний уровень — это вызов iptables.
- UFW
UFW — это брандмауэр под Ubuntu:
// 启动ufw
systemctl start ufw
// 停用ufw
systemctl stop ufw
Обычно используются следующие команды:
// 查询ufw开启状态,打印规则
ufw status
// 允许80端口访问
ufw allow 80
// 拒绝8000端口访问
ufw deny 9000
// 拒绝ip为xxx.xxx.xxx.xxx访问
ufw deny from xxx.xxx.xxx.xxx
// 允许通过tcp协议,9000-9002访问
ufw allow 9000:9002/tcp
// 删除规则
ufw delete allow http
- Firewalld
Firewalld — это брандмауэр, входящий в состав Fedora/CentOS 8 и более поздних версий:
// 启动firewalld
systemctl start firewalld
// 停用firewalld
systemctl stop firewalld
Обычно используются следующие команды:
// 允许tcp协议8161端口访问,--zone(作用域),--permanent(永久生效)
firewall-cmd --zone=public --add-port=8161/tcp --permanent
// 重新加载规则
firewall-cmd --reload
// 将80端口的流量转发至8080
firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080
// 将80端口的流量转发至192.168.0.1
firewall-cmd --add-forward-port=proto=80:proto=tcp:toaddr=192.168.1.0.1
// 将80端口的流量转发至192.168.0.1的8080端口
firewall-cmd --add-forward-port=proto=80:proto=tcp:toaddr=192.168.0.1:toport=8080
Firewalld также имеет графический интерфейс:
Если не указано иное, все "Осадный лев · Чжэн"Оригинал статьи, пожалуйста, укажите источник.
Ссылка на эту статью:engr-z.com/402.html