linux如何对外开放端口号,防火墙_linux 开放端口

2401_83946509 2024-06-14 14:07:16 阅读 66

2. 开放端口

一旦确定了要开放的端口尚未被占用,我们就可以使用 Linux 防火墙来开放该端口。

使用 iptables 命令开放端口

在大多数 Linux 系统中,我们可以使用 iptables 命令来管理防火墙规则。

例如,我们要开放 8080 端口,可以使用以下命令:

sudo iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

该命令将在防火墙规则中添加一条规则,允许 TCP 协议通过 8080 端口进行连接。

使用 firewalld 命令开放端口

在一些新的 Linux 系统中,我们可以使用 firewalld 命令来管理防火墙规则。

例如,我们要开放 8080 端口,可以使用以下命令:

sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent

该命令将在防火墙规则中添加一条规则,允许 TCP 协议通过 8080 端口进行连接。--permanent 参数将该规则永久性添加到防火墙中。

重新加载防火墙规则:sudo firewall-cmd --reload

3. 重启防火墙

无论是使用 iptables 还是 firewalld 命令,都需要在开放端口之后重启防火墙才能使其生效。下面是重启 iptables 和 firewalld 的命令:

重启 iptables:

sudo service iptables restart

重启 firewalld:

sudo systemctl restart firewalld

注意:在使用重启命令之前,请先确定您已经正确地修改了 iptables 或 firewalld 配置文件。如果出现问题,可能会导致您无法访问您的服务器。建议在修改配置文件之前备份。

4. 验证端口是否已开放

在完成端口开放的操作之后,需要验证端口是否已经成功开放。有以下两种方法:

使用 netstat 命令

使用 netstat 命令可以查看当前 Linux 系统中所有开放的端口,以及相应的监听状态和进程信息。以下是使用 netstat 命令查看端口开放情况的命令:

sudo netstat -tuln

该命令会列出所有当前正在监听 TCP 和 UDP 端口的进程信息,包括协议、本地地址、本地端口、外部地址、外部端口以及进程名称等信息。其中,-t 选项表示查看 TCP 端口,-u 选项表示查看 UDP 端口,-l 选项表示查看正在监听的端口,-n 选项表示使用数字显示端口号和 IP 地址,而不使用域名和服务名称。

使用 telnet 命令

另一种验证端口是否开放的方法是使用 telnet 命令。以下是使用 telnet 命令验证端口是否开放的命令:

telnet IP地址 端口号

其中,IP地址表示您的服务器公网 IP 地址,端口号则是您所开放的端口号。如果端口已经开放,则会连接成功,否则会提示连接失败。

例如,如果您的服务器 IP 地址是 192.168.1.100,端口号是 8080,则使用以下命令验证端口是否开放:

telnet 192.168.1.100 8080

如果端口已经开放,则会连接成功。如果提示连接失败,则说明端口没有开放或者防火墙规则配置有误。

5. 配置防火墙

在 Linux 中,可以通过防火墙规则来限制进出网络的流量。如果系统启用了防火墙,需要打开相应的端口才能使其对外可见。

在 CentOS、RedHat 等系统中,可以使用 firewall-cmd 工具来配置防火墙规则。以下是一些常用的命令示例:

查看已开放端口:sudo firewall-cmd --list-ports开放端口:sudo firewall-cmd --add-port=8080/tcp --permanent移除端口:sudo firewall-cmd --remove-port=8080/tcp --permanent重新加载防火墙规则:sudo firewall-cmd --reload

在 Ubuntu 等系统中,可以使用 ufw(Uncomplicated Firewall)工具来配置防火墙规则。以下是一些常用的命令示例:

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)

img

为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!

这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。

本份面试集锦涵盖了

174 道运维工程师面试题128道k8s面试题108道shell脚本面试题200道Linux面试题51道docker面试题35道Jenkis面试题78道MongoDB面试题17道ansible面试题60道dubbo面试题53道kafka面试18道mysql面试题40道nginx面试题77道redis面试题28道zookeeper

总计 1000+ 道面试题, 内容 又全含金量又高

174道运维工程师面试题

1、什么是运维?

2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?

3、现在给你三百台服务器,你怎么对他们进行管理?

4、简述raid0 raid1raid5二种工作模式的工作原理及特点

5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?

6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?

7、Tomcat和Resin有什么区别,工作中你怎么选择?

8、什么是中间件?什么是jdk?

9、讲述一下Tomcat8005、8009、8080三个端口的含义?

10、什么叫CDN?

11、什么叫网站灰度发布?

12、简述DNS进行域名解析的过程?

13、RabbitMQ是什么东西?

14、讲一下Keepalived的工作原理?

15、讲述一下LVS三种模式的工作过程?

16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

17、如何重置mysql root密码?

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

img

16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

17、如何重置mysql root密码?

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

[外链图片转存中…(img-XZrOZEih-1712845260332)]



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。