无法访问 CentOS7服务器上应用监听的端口
无法访问 CentOS7服务器上应用监听的端口
参考资料
- 云主机上Centos7配置Iptables规则开启80、3306等端口https://blog.csdn.net/qq_37960007/article/details/80374782
- CentOS 7 找不到 iptables 文件(需要安装 iptables 服务)
https://www.cnblogs.com/miracle-luna/p/13714709.html - 如何在CentOS 7 的机器上配置白名单
https://www.cnblogs.com/miracle-luna/p/13714809.html - 关于mysql服务器3306端口不能远程连接的解决
https://blog.csdn.net/m0_37477061/article/details/83275408 - Linux关闭防火墙命令
https://blog.csdn.net/qq_39399966/article/details/102660601 - CentOS7开启端口(永久)
https://blog.csdn.net/zx110503/article/details/78787483 - centos7 打开mysql 3306端口并 设置外部访问
https://www.cnblogs.com/yangxunwu1992/p/6091422.html
问题由来
我在自己的虚拟机中的CentOS7 中(MySQL 8 安装过程)并启动了 mysql 8 服务,并且确认了服务启动没有问题。
定位问题:
- telnet 服务器的22 端口,访问正常
- netstat -ntpl |grep 3306 查看监听端口,没有问题
- telnet 服务器的3306端口,无法访问
经过百度,发现是防火墙的问题。
防火墙开启端口供其他访问
1. 使用 firewalld 开启端口
1、运行命令:
firewall-cmd --get-active-zones
运行完成之后,可以看到zone名称,如下:

2、执行如下命令命令:
# --permanent 表示 永久生效
firewall-cmd --zone=public --add-port=3306/tcp --permanent

3、重启防火墙,运行命令:
firewall-cmd --reload
4、查看端口号是否开启,运行命令:
firewall-cmd --query-port=3306/tcp
5、如果firewall 已经注销的了,运行以下命令可恢复:
systemctl unmask firewalld

2. 使用 iptables
在CentOS 7.x 的机器上,给指定主机和指定端口配置白名单的时候,发现机器的 /etc/sysconfig/ 目录下没有找到 iptables 文件。
原因是因为CentOS 7.x 默认是使用 firewalld 服务作为防火墙,我们需要禁用该服务,安装 iptables 服务。
1、停止 firewall 服务
systemctl stop firewalld
2、注销 firewall 服务
systemctl mask firewalld
可以通过systemctl unmask firewalld 重新注册 firewalld 服务
3、安装 iptables 服务
yum install -y iptables
yum install iptables-services
4、启动 iptables 服务
systemctl start iptables
或者
service iptables start
5、设置 iptables 开机自启动
systemctl enable iptables
6、查看 iptables 状态
systemctl status iptables
或者
service iptables status

7、查看 iptables 文件
此时可以在 /etc/sysconfig/ 目录下看到 iptables 文件

8、编辑 iptables 文件,加入防火墙规则
vi /etc/sysconfig/iptables
加入 3306 端口规则
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

注意: 3306 端口规则 一定不能是两个 icmp-host-prohibited 中间,否则仍然不能访问!
====== 错误示范========
之前新增的规则,在两个 icmp-host-prohibited 中间,所以不能访问:


====== 错误示范========
9、重启 iptables
systemctl restart iptables.service
然后再查看
iptables -L -n

10、Telnet 服务器 3306 端口
访问正常。
iptables 一些命令
# iptables 服务的停止命令
systemctl stop iptables
或者
service iptables stop
# iptables 服务的重启命令
systemctl restart iptables
或者
service iptables restart
# Saving firewall rules to /etc/sysconfig/iptables
service iptables save
# 重载 iptables 文件
systemctl reload iptables
或者
service iptables reload
# 查看已配置的iptables规则:
iptables -n -L
iptables -n -L --line-numbers
无法访问 CentOS7服务器上应用监听的端口的更多相关文章
- 配置SSH隧道访问Ubuntu服务器上的MongoDB
为了数据安全,在MongoDB的配置文件里,一般会把默认的27017端口port改为自定义的端口号,然后把允许访问的IP设为127.0.0.1(即主机本身).但是这样就会在开发的过程查看数据时带来麻烦 ...
- SpringMVC拦截器实现:当用户访问网站资源时,监听session是否过期
SpringMVC拦截器实现:当用户访问网站资源时,监听session是否过期 一.拦截器配置 <mvc:interceptors> <mvc:interceptor> < ...
- CentOS7服务器上部署深度/机器学习环境推荐首选anaconda3
CentOS7服务器上部署深度/机器学习环境推荐首选anaconda3,亲测~~ 因为可以创建不同的环境版本或虚拟环境 CentOS7服务器安装anaconda3后,CentOS7服务器开启后自动将a ...
- 浏览器通过http协议通过nginx访问ftp服务器上的文件
1.修改nginx配置文件 2.修改nginx默认目录为ftp默认目录 3.修改成自定义路径后,并修改此目录第一行,修改为root或是nginx用户 4.重新加载 cd /usr/local/ngin ...
- Oracle 11g RAC 环境下单实例非缺省监听及端口配置
如果在Oracle 11g RAC环境下使用dbca创建单实例数据库后,Oracle会自动将其注册到缺省的1521端口及监听器.大多数情况下我们使用的为非缺省监听器以及非缺省的监听端口.而且在Orac ...
- 配置Tomcat监听80端口、配置Tomcat虚拟主机、Tomcat日志
6月27日任务 16.4 配置Tomcat监听80端口16.5/16.6/16.7 配置Tomcat虚拟主机16.8 Tomcat日志扩展邱李的tomcat文档 https://www.linuser ...
- 剥开比原看代码03:比原是如何监听p2p端口的
作者:freewind 比原项目仓库: Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchai ...
- linux系统实现多个进程监听同一个端口
通过 fork 创建子进程的方式可以实现父子进程监听相同的端口. 方法:在绑定端口号(bind函数)之后,监听端口号之前(listen函数),用fork()函数生成子进程,这样子进程就可以克隆父进程, ...
- 【网络通信】服务器端Socket监听80端口,建立连接传输数据时也是使用的80端口么?
1. 服务器端Socket监听80端口,建立连接传输数据时也是使用的80端口么? 答:对.建立连接时服务器会分配一个新的Socket,但是用的源端口号还是80端口.套接字是由协议类型.源IP.目的IP ...
随机推荐
- LGP6240题解
题解 我们可以发现,背包有结合律. 也就是先加入元素 \(a\) 再加入元素 \(b\) 和 \(c\),与先加入元素 \(a\) 后再与只有元素 \(b\) 和元素 \(c\) 的背包合并,得到的背 ...
- ASP.NET Core 6框架揭秘实例演示[26]:跟踪应用接收的每一次请求
很多人可能对ASP.NET Core框架自身记录的诊断日志并不关心,其实这些日志对纠错排错和性能监控提供了很有用的信息.如果需要创建一个APM(Application Performance Mana ...
- 韦东山 嵌入式linux教程 笔记
@ 目录 资源链接 一.常用命令 二.shell 三.如何更改PATH? 四.路径 五.vi编辑器 六.进阶命令 七.NAT配置网络 (第2篇-P34) 八.开发板挂载 Ubuntu 的 NFS 目录 ...
- 如何批量修改图片名称(win下)
深度学习目标检测任务中常常需要大量的图片,这些图片一般来自网络爬虫或是自行批量下载,但下载下的图片常常在保存时被命名为长段英文数字混写,因此规律化命名下载的图片数据名称就显得尤为重要了,下面我演示在本 ...
- FutureTask 是什么 ?
这个其实前面有提到过,FutureTask 表示一个异步运算的任务.FutureTask 里面 可以传入一个 Callable 的具体实现类,可以对这个异步运算的任务的结果进行等 待获取.判断是否已经 ...
- 什么是可重入锁(ReentrantLock)?
举例来说明锁的可重入性 public class UnReentrant{ Lock lock = new Lock(); public void outer(){ lock.lock(); inne ...
- ArrayList 与 LinkedList 的不区别?
最明显的区别是 ArrrayList 底层的数据结构是数组,支持随机访问,而 LinkedList 的底层数据结构书链表,不支持随机访问.使用下标访问一个元素, ArrayList 的时间复杂度是 O ...
- 4.RDD操作
目录 一. RDD创建 从本地文件系统中加载数据创建RDD 从HDFS加载数据创建RDD 通过并行集合(列表)创建RDD 二. RDD操作 转换操作 filter(func) map(func) fl ...
- (stm32f103学习总结)—ADC模数转换实验
一.STM32F1 ADC介绍 TM32F103 系列一般都有 3 个 ADC,这些 ADC 可以独立使用,也可 以使用双重(提高采样率).STM32F1 的 ADC 是 12 位逐次 逼近型的模拟数 ...
- 1_开环系统和闭环系统_反馈控制_Open/Closed Loop System_Feedback