iptables与firewalls网络防火墙相关配置
1、路由相关
route -n route del -net 0.0.0.0 netmask 0.0.0.0 gw 10.23.0.1 route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.23.0.1
2、Linux内核层面禁ping
vim /etc/sysctl.conf net.ipv4.icmp_echo_ignore_all = 1 sysctl -p
3、firewalld防火墙
systemctl restart firewalld.service systemctl enable firewalld.service firewall-cmd --zone=public --remove-service=ssh --permanent # 禁ssh firewall-cmd --permanent --add-icmp-block=echo-request # 禁ping firewall-cmd --list-all firewall-cmd --zone=public --add-service=ssh --permanent # 开启ssh firewall-cmd --remove-icmp-block=echo-request --permanent # 开启ping systemctl restart firewalld.service
4、iptables防火墙
service iptables status # 先检查是否安装了iptables yum install -y iptables # 安装iptables yum update iptables # 升级iptables yum install iptables-services # 安装iptables-services iptables -L # 允许ping iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT # 禁止PING设置 iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP iptables -L -n # 查看iptables现有规则 iptables -P INPUT ACCEPT # 先允许所有,不然有可能会悲剧 iptables -F # 清空所有默认规则 iptables -X # 清空所有自定义规则 iptables -Z # 所有计数器归0 iptables -A INPUT -i lo -j ACCEPT # 允许来自于lo接口的数据包(本地访问) iptables -A INPUT -p tcp --dport 22 -j ACCEPT # 开放22端口 iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT # 允许ping iptables -P INPUT DROP # 其他入站一律丢弃 iptables -P OUTPUT ACCEPT # 所有出站一律绿灯 iptables -P FORWARD DROP # 所有转发一律丢弃 service iptables save # 保存规则 # 放行50000-60000内所有端口 iptables -A INPUT -i eth0 -s 10.25.25.100/32 -p tcp -m multiport --dports 50000:60000 -j ACCEPT # SNAT:10.13.0.0/16段通过10.13.37.245的外网IP访问外网 iptables -t nat -A POSTROUTING -s 10.13.0.0/16 -o eth0 -j SNAT --to-source 10.13.37.245 # DNAT:可以实现168这个没eip的机器上搭建nginx,通过访问245这个的eip访问到168的nginx iptables -t nat -A PREROUTING -d 10.13.37.245 -i eth0 -p tcp --dport 80 -j DNAT --to-destination 10.13.140.168 iptables -nL -t nat 【注意】SNAT和DNAT都需要单独加指向有外网IP主机的路由 # 查看出向所有规则 iptables -L INPUT --line-numbers # 查看PREROUTING规则 iptables --line-numbers --list PREROUTING -t nat iptables -t nat -D PREROUTING $line # 删除指定行
作者:UStarGao
链接:https://www.starcto.com/nettool/166.html
来源:STARCTO
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
UCloud云平台推荐
随便看看
- 2021-09-07开源ShowDoc文档管理平台容器化部署
- 2021-08-03Elastic stack日志分析集群部署
- 2021-05-22MongoDB 集合与文档的相关操作
- 2021-04-03CentOS7安装部署PostgreSQL 12数据库
- 2023-03-12Linux pstree命令树状图方式查看进程