xml地图|网站地图|网站标签 [设为首页] [加入收藏]

防火墙与端口配置,开放防火墙端口

问题原因 :  第一点 远程服务器数据库没有授权

一、centos7版本对防火墙进行 加强,不再使用原来的iptables,启用firewall
1、firewalld的基本使用
启动: systemctl start firewalld
查看状态: systemctl status firewalld
停止: systemctl disable firewalld
禁用: systemctl stop firewalld
2.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
3.配置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
怎么开启一个端口
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=80/tcp
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent

二、centos7以下版本
1.开放80,22,8080 端口
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
2.保存
/etc/rc.d/init.d/iptables save
3.查看打开的端口
/etc/init.d/iptables status
4.关闭防火墙
1) 永久性生效,重启后不会复原
开启: chkconfig iptables on
关闭: chkconfig iptables off
2) 即时生效,重启后复原
开启: service iptables start
关闭: service iptables stop

转载:

在centos7之后默认防火墙不在是iptables而是firewall了。其实firewall是基于iptables的,底层还是在操作iptables。

必威betway 1 

启用ssh端口

ssh端口默认为22
向防火墙中添加端口的命令为: firewall-cmd --zone=public --add-port=10022/tcp --permanent
reaload 防火墙规则: firewall-cmd --reload
查看端口是否添加成功: firewall-cmd --zone=public --query-port=10022/tcp
注意: 这里的设置是在 CentOS 7 版本下的操作 , 低于 CentOS 7的版本不支持

必威betway 2

参考链接:
centos 7 防火墙配置详解
CentOS7设置ssh服务以及端口修改

使用方法如下:

1.防火墙的允许,停止,禁用

#启动
systemctl start  firewalld
#停止
systemctl stop firewalld
#禁用
systemctl disable firewalld
#查看状态
systemctl status firewalld

                        第二点 远程连接数据库的端口3306端口被禁用

>>> 关闭防火墙

2.配置firewalld

#查看版本
firewall-cmd        --version
#查看帮助
firewall-cmd       --help
#查看状态  【这个和   systemctl  status firewalld  是有点区别的】
firewall-cmd        --state
#查看区域信息【】
firewall-cmd        --get-active-zones

必威betway 3

#拒绝所有包
firewall-cmd       --panic-on
#取消拒绝状态
必威betway,firewall-cmd       --panic-off
#查看是否拒绝
firewall-cmd       --query_panic

必威betway 4

systemctl stop firewalld.service             #停止firewall

3.更新防火墙规则

#动态更新【不用断开连接】
firewall-cmd     --reload
#断开连接更新 【类似重启服务】
firewall-cmd      --complete-reload

如果服务器时windows

那么看参考此链接:怎么解决mysql远程连接报10038的错误_360新知

  http://xinzhi.wenda.so.com/a/1523776948613050

 

如果是linux

1: 查看系统版本 uname -r

2: 查看服务器端口有没有开 netstat -ntlp | grep 3306

3: 查看服务器用的哪个防火墙 是iptables 还是firewalld

systemctl status iptables.service

systemctl status firewalld.service

window的解决方案:

linux:

查看有没有开启 3306端口 firewall -cmd --list-port

临时创建 3306 端口 firewall -cmd --add-port=3306/tcp

永久创建端口 firewall -cmd --add-port=3306/tcp --permanent

这个也可以

systemctl status firewalld.service 查看防火墙状态

firewall-cmd --zone=public --list-ports 查看所有打开的端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent 添加3306端口

firewall-cmd --reload 更新防火墙规则

firewall-cmd --zone=public --query-port=3306/tcp

systemctl disable firewalld.service        #禁止firewall开机启动

4.端口(区域)

#添加接口到区域  , 
firewall-cmd    --zone=public    --add-interface=eth0

如果要永久生效,则直接加上    --permanent   ,然后重启防火墙即可。

#设置默认接口区域【默认区域都是public】
firewall-cmd    --set-default-zone=public

打开端口【最常用】

#查看所有打开的端口
firewall-cmd    --zone=dmz     --list-ports

#加入一个端口到区域  【如果要永久生效,也是加个    --permanent   即可】
firewall-cmd    --zone=public   --add-port=8080/tcp

**>>>开启端口**

5.添加服务

打开一个服务,类似于将端口可视化,服务需要在配置文件中添加。  /etc/firewalld  目录下有一个services文件夹

#添加服务
firewall-cmd    --add-service=http

必威betway 5

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

#查看服务是否生效
firewall-cmd    --zone=public --query-service  http

必威betway 6

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

查看已经开放的端口:

firewall-cmd --list-ports

命令含义:

--zone #作用域

--add-port=80/tcp #添加端口,格式为:端口/通讯协议

--permanent #永久生效,没有此参数重启后失效

**>>>重启防火墙**

firewall-cmd --reload

常用命令介绍

firewall-cmd --state                           ##查看防火墙状态,是否是running

firewall-cmd --reload                          ##重新载入配置,比如添加规则之后,需要执行此命令

firewall-cmd --get-zones                       ##列出支持的zone

firewall-cmd --get-services                    ##列出支持的服务,在列表中的服务是放行的

firewall-cmd --query-service ftp               ##查看ftp服务是否支持,返回yes或者no

firewall-cmd --add-service=ftp                 ##临时开放ftp服务

firewall-cmd --add-service=ftp --permanent     ##永久开放ftp服务

firewall-cmd --remove-service=ftp --permanent  ##永久移除ftp服务

firewall-cmd --add-port=80/tcp --permanent     ##永久添加80端口

iptables -L -n                                 ##查看规则,这个命令是和iptables的相同的

man firewall-cmd                               ##查看帮助

更多命令,使用firewall-cmd --help查看帮助文件

**>>>CentOS 7.0默认使用的是firewall作为防火墙,使用iptables必须重新设置一下**

1、直接关闭防火墙

systemctl stop firewalld.service           #停止firewall

systemctl disable firewalld.service     #禁止firewall开机启动

2、设置 iptables service

yum -y install iptables-services

如果要修改防火墙配置,如增加防火墙端口3306

vi /etc/sysconfig/iptables

增加规则

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

保存退出后

systemctl restart iptables.service #重启防火墙使配置生效

systemctl enable iptables.service #设置防火墙开机启动

最后重启系统使设置生效即可。

本文由必威发布于数据库,转载请注明出处:防火墙与端口配置,开放防火墙端口