【Linux】之对外开放端口

目录


一、使用 iptables 方式


1、安装 iptables-services如果没有安装的话

yum install iptables-services

设置开机启动

systemctl enable iptables

2、关闭 firewall

# 关闭并屏蔽 firewalld
systemctl stop firewalld
systemctl mask firewalld

# 解除 iptables 的屏蔽
systemctl unmask iptables

3、开放 8080 端口

iptables -A INPUT -m tcp -p tcp --dport 8080 -j ACCEPT

或者编辑配置文件:

vim /etc/sysconfig/iptables

# 添加一条
-A INPUT -m tcp -p tcp --dport 8080 -j ACCEPT

4、保存配置

service iptables save

5、重启 iptables

systemctl restart iptables

以下是 iptables 的一些命令,停止/启动/重启 防火墙

# 使用 systemctl 操作
systemctl [stop|start|restart] iptables

# 使用 service 操作
service iptables [stop|start|restart]

启动成功之后,查看 iptables 的运行状态,如果为 active 表示运行成功,为 inactive 则表示未启动:

[user@localhost home]$ systemctl status iptables

● iptables.service - IPv4 firewall with iptables
   Loaded: loaded (/usr/lib/systemd/system/iptables.service; enabled; vendor preset: disabled)
   Active: active (exited) since Tue 2022-03-01 16:12:22 CST; 14min ago
  Process: 9061 ExecStop=/usr/libexec/iptables/iptables.init stop (code=exited, status=0/SUCCESS)
  Process: 9068 ExecStart=/usr/libexec/iptables/iptables.init start (code=exited, status=0/SUCCESS)
 Main PID: 9068 (code=exited, status=0/SUCCESS)
    Tasks: 0
   Memory: 0B
   CGroup: /system.slice/iptables.service

二、使用 firewalld 方式(推荐)


1、安装 firewalld如果没有安装的话

yum install firewalld

设置开机自动启动:

systemctl enable firewalld

3、启动 firewalld

systemctl start friewalld

如果之前启动了 iptables,可以按以下方式切换

# 关闭并屏蔽 iptables
systemctl stop iptables
systemctl mask iptables

# 解除 firewalld 的屏蔽
systemctl unmask friewalld

启动成功之后,查看 firewalld 的运行状态,如果为 active 表示运行成功,为 inactive 则表示未启动:

[user@localhost home]$ systemctl status firewalld

● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2022-03-01 16:40:53 CST; 4s ago
     Docs: man:firewalld(1)
 Main PID: 10206 (firewalld)
    Tasks: 2
   Memory: 30.0M
   CGroup: /system.slice/firewalld.service
           └─10206 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork --nopid

4、开放 8080 端口

firewall-cmd --add-port=8080/tcp --permanent

5、重启 firewall

firewall-cmd --reload

PS:如果使用的是阿里云的ECS服务器,需要在服务器的安全组规则配置规则添加开放端口:

  • 端口范围为:8080/808
  • 授权对象为:0.0.0.0/0

firewalld 常用命令


查看防火墙状态:

systemctl status firewalld
firewall-cmd --state

开启、关闭、重启防火墙:

systemctl start|stop|restart firewalld

开启、关闭开机自动启动:

systemctl enable|disable firewalld

重新载入配置(比如添加规则之后,需要执行此命令):

firewall-cmd --reload

列出支持的 zone

firewall-cmd --get-zones

列出支持的服务:

firewall-cmd --get-services

查看 ftp 服务是否支持(返回 yes 或者 no):

firewall-cmd --query-service ftp

临时开放 ftp 服务:

firewall-cmd --add-service=ftp

永久开放 ftp 服务:

firewall-cmd --add-service=ftp --permanent

永久移除 ftp 服务:

firewall-cmd --remove-service=ftp --permanent

永久添加8080端口:

firewall-cmd --add-port=8080/tcp --permanent

永久移除8080端口:

firewall-cmd --remove-port=8080/tcp --permanent

查看开启的服务:

firewall-cmd --permanent --zone=public --list-services

查看已开发的端口:

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

查看端口是否生效:

firewall-cmd --zone=public --query-port=8080/tcp
  • 1
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值