centos对于防火墙的操作以及其基本命令的使用

本文介绍如何在 CentOS 系统中配置防火墙,包括开放端口、服务及自定义规则等操作,同时提供了图形化配置工具的使用方法。

开放端口80 3306 操作 配置文件进行修改

vim /etc/sysconfig/iptables

在默认的22端口这条规则下面添加以下代码(可以继续添加,修改端口号即可)
#/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
#/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

然后保存,重启防火墙使配置生效
/etc/init.d/iptables restart

shutdown -r now#重启系统

查看打开的端口
/etc/init.d/iptables status

#关闭防火墙
/etc/init.d/iptables stop

#停止服务
service iptables stop

#查看防火墙信息
/etc/init.d/iptables status

关闭SELINUX

vim /etc/selinux/config

#SELINUX=enforcing #注释掉

#SELINUXTYPE=targeted #注释掉

SELINUX=disabled #增加

:wq!#保存退出

shutdown -r now#重启系统
  文章地址:http://blog.youkuaiyun.com/u010419967/article/details/23687961

使用ssh2扩展操作需要添加

 

--permanent  当设定永久状态时 在命令开头或者结尾处加入此参数,否则重载或重启防火墙后设置失效!

 

开放端口:

# firewall-cmd --zone=public --add-port=80/tcp --permanent

# firewall-cmd --zone=public --add-port=22/tcp --permanent

 

可以一次指定多个:

# firewall-cmd --zone=public  --permanent --add-port=111/tcp --add-port=139/tcp --add-port=445/tcp 

 

firewall-cmd --reload

查看所有打开的端口:

# firewall-cmd --list-port

# firewall-cmd --zone=public --list-ports

开启伪装:

# firewall-cmd [--zone=zone] --add-masquerade

# firewall-cmd --remove-masquerade

# firewall-cmd --query-masquerade

添加区域接口:

# firewall-cmd [--zone=zone] --add-interface=<interface>

# firewall-cmd --zone=public --add-interface=eth0

列出全部启用的区域的特性

firewall-cmd --list-all-zones

输出区域 <zone> 全部启用的特性。如果省略区域,将显示默认区域的信息

# firewall-cmd --zone=public --list-all

启用某个服务:

firewall-cmd --add-service=http

firewall-cmd --add-service=vnc-server

# firewall-cmd --zone=public --add-service=nfs --add-service=samba --add-service=samba-client --permanent

firewall-cmd --remove-service=service   移除服务

查询:firewall-cmd --list-service

 

NAT地址转换:

firewall-cmd [--zone=<zone>] --add-forward-port=port=<port>[-<port>]:proto=<protocol> { :toport=<port>[-<port>] | :toaddr=<address> | :toport=<port>[-<port>]:toaddr=<address> }

IP端口转发:

# firewall-cmd --add-forward-port=222:proto=tcp:toport=333:toaddr=192.168.1.100

本地转发:

# firewall-cmd --add-forward-port=port=9898:proto=tcp:toport=8088:toaddr=

success

查询:

# firewall-cmd --list-forward-port

# firewall-cmd --list-port

# firewall-cmd --list-all

移除:

# firewall-cmd --remove-forward-port=port=222:proto=tcp:toport=333:toaddr=

# firewall-cmd --remove-forward-port=222:proto=tcp:toport=333:toaddr=192.168.1.100

图形化配置工具:# firewall-config

 

 

自定义规则:

 

/sbin/iptables -t filter -I INPUT_direct 2 -s 192.168.1.1 -p tcp --dport=22 -j DROP 

usage: --direct --add-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>

 

# firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -s 192.168.1.0/24 -p tcp --dport=22 -j ACCEPT

# firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 2 -p tcp --dport=22 -j DROP

# firewall-cmd --reload

# firewall-cmd --direct --get-all-rules

ipv4 filter INPUT 1 -s 192.168.1.0/24 -p tcp --dport=22 -j ACCEPT

ipv4 filter INPUT 2 -p tcp --dport=22 -j DROP

文章地址:http://www.centoscn.com/CentOS/Intermediate/2016/0602/7348.html

 
<think>好的,用户的问题是关于在CentOS系统中如何启用防火墙命令。首先,我需要回忆一下CentOS 7及之后版本使用防火墙服务是firewalld,而不是之前的iptables。用户可能使用的是CentOS 7或更新的版本,所以应该重点围绕firewalld来回答。 接下来,我要确保自己记得正确的命令。启动防火墙服务应该是使用systemctl命令,比如systemctl start firewalld。然后,启用开机自启动的话就是systemctl enable firewalld。还需要检查防火墙状态,确认服务是否已经成功启动,命令是systemctl status firewalld或者firewall-cmd --state。 然后,用户可能不仅需要启动防火墙,还可能需要配置端口或者了解基本操作,比如开放端口、查看已开放的端口等。根据提供的引用内容,引用[3]提到了查看状态、开启、关闭、开机自启等命令,引用[1]和[2]则给出了具体的端口开启和状态检查的例子。需要把这些信息整合到回答中,确保用户能够全面了解如何启用并管理防火墙。 另外,用户的问题可能隐含了需要确保防火墙在启用后正确配置,比如允许某些服务或端口通过。所以除了启动防火墙,还要指导他们如何开放必要的端口,例如使用firewall-cmd --add-port,并记得--permanent参数使设置永久生效,之后重新加载防火墙配置。 需要检查是否有语法错误,比如命令的正确拼写和参数是否正确。例如,firewall-cmd而不是firewalld-cmd,以及--zone=public的正确使用。同时,要确保给出的命令CentOS 7及以上版本有效,避免提到旧版iptables的命令,除非用户特别询问。 最后,生成相关问题时要围绕防火墙的启用、管理、配置端口、状态检查等方面,帮助用户进一步学习。例如,如何检查状态、如何添加端口,以及如何设置开机启动等。这些问题应该自然地从主答案中延伸出来,符合用户可能有的后续需求。</think>### 如何在 CentOS 中启用防火墙命令? 在 CentOS 7 及以上版本中,默认使用 `firewalld` 作为防火墙管理工具。以下是启用和管理防火墙的具体步骤: #### 1. **启动防火墙服务** ```bash sudo systemctl start firewalld ``` 此命令会立即启动防火墙服务,但不会在系统重启后自动生效[^3]。 #### 2. **设置开机自启** ```bash sudo systemctl enable firewalld ``` 确保防火墙在系统启动时自动启用[^3]。 #### 3. **验证防火墙状态** ```bash systemctl status firewalld # 或 firewall-cmd --state ``` 若输出显示 `active (running)`,则防火墙已成功启用[^2]。 #### 4. **开放必要端口(可选)** 例如开放 TCP 端口 80(HTTP): ```bash sudo firewall-cmd --zone=public --add-port=80/tcp --permanent sudo firewall-cmd --reload # 重新加载配置使其生效 ``` `--permanent` 表示永久生效,`--reload` 用于应用新规则[^1]。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值