Linux-查看防火墙状态和命令

Linux-查看防火墙状态和命令Linux-查看防火墙状态和命令

大家好,欢迎来到IT知识分享网。Linux-查看防火墙状态和命令"

1、centos7

1.1、开启防火墙

systemctl start firewalld.service

1.2、关闭防火墙

# 一般情况
systemctl stop firewalld.service

# 上述方法不行采用此方法
先用:systemctl unmask firewalld.service 
然后:systemctl start firewalld.service

1.3、开启防火墙开机启动

systemctl enable firewalld.service

1.4、关闭防火墙开机启动

systemctl disable firewalld.service

1.5、查看防火墙状态

# 方法1
systemctl status firewalld

# 方法2
firewall-cmd --state

1.6、开启端口

#注:可以是一个端口范围,如1000-2000/tcp
firewall-cmd --zone=public --add-port=80/tcp --permanent

1.7、移除端口

# 方法1
firewall-cmd --zone=public --remove-port=80/tcp --permanent
# 方法2
firewall-cmd --permanent --remove-port=123/tcp

1.8、重启防火墙

firewall-cmd --reload

1.9、查看某个端口是否开启

firewall-cmd --query-port=80/tcp

1.10、查询开放列表

firewall-cmd --list-port

1.11、systemctl常用命令

systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。

启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed

1.12、firewalld-cmd配置

查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则: firewall-cmd --reload
查看区域信息:  firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic

2、centos6

2.1、防火墙配置文件

# 编辑配置文件 
vim /etc/sysconfig/iptables 
## 文件内容,可在文件中添加相应的配置,开放一些端口,以及端口转发等
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8000:20000 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

2.2、service方式

开机启动:chkconfig iptables on
开机关闭:chkconfig iptables off
查看防火墙状态:service iptables status
启动防火墙服务:service iptables start
关闭防火墙服务:service iptables stop
重启防火墙服务:service iptables restart
# 在使用iptables命令添加/删除时,需要用到此命令。若直接编辑/etc/sysconfig/iptables文件,则不需要
保存配置:service iptables save  

2.2、iptables方式

# 防火墙的配置信息均在此路径下
cd /etc/init.d/
查看防火墙的状态:/etc/init.d/iptables status
开启防火墙:/etc/init.d/iptables start
临时关闭防火墙:/etc/init.d/iptables stop
重启防火墙:/etc/init.d/iptables restart

2.3、添加端口

# 修改配置文件
##修改配置文件开放80端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT 
##修改配置文件开放8000:20000端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8000:20000 -j ACCEPT

# 命令操作
##使用命令添加3307端口 (添加使用 -A 插入使用 -I 删除使用 -D)
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 3307 -j ACCEPT
iptables -D INPUT -m state --state NEW -m tcp -p tcp --dport 3307 -j ACCEPT
##使用命令添加8000:20000端口 (添加使用 -A 插入使用 -I 删除使用 -D)
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8000:20000 -j ACCEPT

2.4、设置端口转发

# 同端口转发
iptables -t nat -A PREROUTING -p tcp --dport [端口号]
-j DNAT --to-destination [目标IP]
iptables -t nat -A PREROUTING -p udp --dport [端口号]
-j DNAT --to-destination [目标IP]
iptables -t nat -A POSTROUTING -p tcp -d [目标IP] --dport [端口号]
-j SNAT --to-source [本地服务器IP]
iptables -t nat -A POSTROUTING -p udp -d [目标IP] --dport [端口号]
-j SNAT --to-source [本地服务器IP]
 
# 非同端口转发:使用本地服务器的 8001 端口来转发目标 IP为目标服务器 的 9001 端口(其中/32可以不加)
iptables -t nat -A PREROUTING -p tcp --dport 8001 -j DNAT --to-destination [目标服务器IP]:9001
iptables -t nat -A PREROUTING -p udp --dport 8001 -j DNAT --to-destination [目标服务器IP]:9001
iptables -t nat -A POSTROUTING -d [目标服务器IP]/32 -p tcp -m tcp --dport 9001 -j SNAT --to-source [本地服务器IP]
iptables -t nat -A POSTROUTING -d [目标服务器IP]/32 -p udp -m udp --dport 9001 -j SNAT --to-source [本地服务器IP]
 
# 多端口转发:将本地服务器的 8000~9000 转发至目标 IP 为 目标服务器 的 8000~9000 端口
iptables -t nat -A PREROUTING -p tcp --dport 8000:9000 -j DNAT --to-destination [目标服务器IP]
iptables -t nat -A PREROUTING -p udp --dport 8000:9000 -j DNAT --to-destination [目标服务器IP]
iptables -t nat -A POSTROUTING -d [目标服务器IP] -p tcp --dport 8000:9000 -j SNAT --to-source [本地服务器IP]
iptables -t nat -A POSTROUTING -d [目标服务器IP] -p udp --dport 8000:9000 -j SNAT --to-source [本地服务器IP]
 
# 本机端口转发
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080

3、Ubuntu

3.1、安装UFW防火墙

sudo apt-get install ufw
# 安装完成之后初始化UFW防火墙
安装防火墙:sudo apt-get install ufw
开启防火墙:sudo ufw enable
           sudo ufw default deny

3.2、开启防火墙

sudo ufw enable
sudo ufw default deny

3.3、防火墙常用命令

允许所有的外部IP访问本机的25/tcp (smtp)端口:sudo ufw allow smtp
允许所有的外部IP访问本机的22/tcp (ssh)端口:sudo ufw allow 22/tcp
允许外部访问53端口(tcp/udp):sudo ufw allow 53
允许此IP访问所有的本机端口:sudo ufw allow from 192.168.1.100
sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53 
禁止外部访问smtp服务:sudo ufw deny smtp
删除上面建立的某条规则 :sudo ufw delete allow smtp
查看防火墙状态:sudo ufw status 
开启/关闭防火墙 (默认设置是’disable’):ufw enable|disable
转换日志状态:ufw logging on|off
设置默认策略 (比如 “mostly open” vs “mostly closed”):ufw default allow|deny

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/14500.html

(0)
上一篇 2024-02-26 18:33
下一篇 2024-02-27 13:45

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信