centos 端口号,centos镜像
大家好,关于centos 端口号很多朋友都还不太明白,今天小编就来为大家分享关于centos镜像的知识,希望对各位有所帮助!
如何开放CentOS的端口
Centos升级到7之后,内置的防火墙已经从iptables变成了firewalld。所以,端口的开启还是要从两种情况来说明的,即iptables和firewalld。更多关于CentOs防火墙的最新内容,请参考Redhat官网。
一、iptables
1.打开/关闭/重启防火墙
开启防火墙(重启后永久生效):chkconfig iptables on
关闭防火墙(重启后永久生效):chkconfig iptables off
开启防火墙(即时生效,重启后失效):service iptables start
关闭防火墙(即时生效,重启后失效):service iptables stop
重启防火墙:service iptables restartd
2.查看打开的端口
/etc/init.d/iptables status
3.打开某个端口(以8080为例)
(1)开启端口
iptables-A INPUT-p tcp--dport 8080-j ACCEPT
(2)保存并重启防火墙
/etc/rc.d/init.d/iptables save
/etc/init.d/iptables restart
4.打开49152~65534之间的端口
iptables-A INPUT-p tcp--dport 49152:65534-j ACCEPT
同样,这里需要对设置进行保存,并重启防火墙。
5.其他打开方式
我们还可以通过修改/etc/sysconfig/iptables文件的方式开启端口,如下
vi/etc/sysconfig/iptables
然后在文件中增加一行
-A RH-Firewall-1-INPUT-m state–state NEW-m tcp-p tcp–dport 8080-j ACCEPT
参数说明:
–A参数就看成是添加一条规则
–p指定是什么协议,我们常用的tcp协议,当然也有udp,例如53端口的DNS
–dport就是目标端口,当数据从外部进入服务器为目标端口
–sport数据从服务器出去,则为数据源端口使用
–j就是指定是 ACCEPT-接收或者 DROP不接收
二、firewalld
Centos7默认安装了firewalld,如果没有安装的话,可以使用 yum install firewalld firewalld-config进行安装。
1.启动防火墙
systemctl start firewalld
2.禁用防火墙
systemctl stop firewalld
3.设置开机启动
systemctl enable firewalld
4.停止并禁用开机启动
sytemctl disable firewalld
5.重启防火墙
firewall-cmd--reload
6.查看状态
systemctl status firewalld或者 firewall-cmd--state
7.查看版本
firewall-cmd--version
8.查看帮助
firewall-cmd--help
9.查看区域信息
firewall-cmd--get-active-zones
10.查看指定接口所属区域信息
firewall-cmd--get-zone-of-interface=eth0
11.拒绝所有包
firewall-cmd--panic-on
12.取消拒绝状态
firewall-cmd--panic-off
13.查看是否拒绝
firewall-cmd--query-panic
14.将接口添加到区域(默认接口都在public)
firewall-cmd--zone=public--add-interface=eth0(永久生效再加上--permanent然后reload防火墙)
15.设置默认接口区域
firewall-cmd--set-default-zone=public(立即生效,无需重启)
16.更新防火墙规则
firewall-cmd--reload或firewall-cmd--complete-reload(两者的区别就是第一个无需断开连接,就是firewalld特性之一动态
添加规则,第二个需要断开连接,类似重启服务)
17.查看指定区域所有打开的端口
firewall-cmd--zone=public--list-ports
18.在指定区域打开端口(记得重启防火墙)
firewall-cmd--zone=public--add-port=80/tcp(永久生效再加上--permanent)
说明:
–zone作用域
–add-port=8080/tcp添加端口,格式为:端口/通讯协议
–permanent#永久生效,没有此参数重启后失效
centos7查看端口是否开放
对于服务器操作系统来说,对外暴露一些不必要的端口都是非常危险的。因此,在管理服务器的时候,知道开放了哪些服务器端口对于运维人员来说算是一项基本技能。下面我们来看看,怎么知道服务器开放了哪些端口。
一、在本机上查看
在CentOS主机上查看当前主机在监听哪些端口的命令是netstat,常用的命令是: netstat-tlunp这个命令会显示出当前主机打开的所有端口,显示结果如下所示,从图中可以看到目前主机上开放的端口tcp端口的22和25,upd的68号端口
而端口名称后面关联了对应的进程名称,如下面图中所示。这里需要注意的是,如果你的服务器是公网服务器,你在公网上开放了22号端口,那么你的主机就会被公网上很多扫描器扫描,然后尝试爆破你的账号密码,来黑掉你的服务器。解决方法一般是通过修改特定服务监听的端口,如下面第二张图中所示,修改后的sshd进程监听的端口有22和63213端口,那么我把这个端口暴露出去,被扫描的纪律就小很多了。
上面这个命令查看的是服务器上的进程对外监听的端口,但是在CentOS7中,默认会打开firewalld防火墙,如果防火墙打开后,默认情况下只会监听在22号端口,也就是说主机对外暴露的端口只有22。如下面图中所示,查看防火墙开放端口的命令是 iptables-save结果如下面第二张图中所示:
如果想增加对外开放的端口,就需要通过防火墙的管理命令firewalld-cmd,例如我想开放80端口,那么命令就是: firewall-cmd--zone=public--add-port=80/tcp--permanent firewall-cmd--reload第一条命令是添加端口,第二条命令是重载防火墙。
看到sucess字样后,再使用iptables-save命令查看端口,可以看到,对外放开的端口增加了80.
如果你的服务器是内网服务器,那么是基本上你的服务器端口只会向内网放开,而不会向公网开放,如果想对公网开放,那么必须通过端口映射来实现,如下面图中所示,在服务器前端再加了一层防火墙。
以我使用的一款防火墙为例,登录以后,进入到管理页面,点击高级选项。然后点击里面的端口映射,就可以看到第二张图中所示的内容,会显示外部端口,内部服务器IP,内部端口。如果将防火墙上的8000端口映射到内部某台服务器的8000端口,那么对外开放的就是8000端口。但是如果把防火墙上的8000端口映射到内部服务器的22端口,那么实际暴露的就是22号端口。以上就是在CentOS 7主机上查看开放端口的所有内容。
二、在其他主机上通过软件侦测
在CentOS 7上有一个比较好用的端口侦测工具叫做nmap,首先看你的主机上是否安装了这个工具,命令是:rpm-qa| grep nmap如果安装了,那么就会显示对应的安装包。
安装完成了以后,就可以使用这个命令来扫描了,扫描的命令格式是: nmap ip_address ip_address就是你要扫描的主机IP地址。如下面图中所示:很快就会显示出这台CentOS7虚拟机对外暴露的端口了,而且注意,这是实际对外暴露的端口。
更改centos系统ssh连接端口号
在操作服务器安全维护时,修改SSH连接端口号是至关重要的一步。默认情况下,CentOS系统的SSH连接端口号是22。然而,许多初学者在管理自己的服务器时,往往忽略了这一安全措施,导致服务器容易遭受攻击。以下将详细介绍如何安全地修改SSH连接端口号。
**步骤一:修改SSH配置文件**
打开SSH配置文件,通常位于`/etc/ssh/sshd_config`。在配置文件中,先保留默认的22端口号,然后添加自定义端口号,例如修改为10010。
**步骤二:防火墙设置**
确保在防火墙规则中新增了对自定义端口的开放权限。具体命令如下:
`firewall-cmd–zone=public–add-port=10010/tcp–permanent`
`firewall-cmd–reload`
**步骤三:SELinux配置**
SELinux(Security-Enhanced Linux)是一个增强安全的内核模块,用于检测系统安全违规行为。在使用自定义端口后,需进行SELinux配置以确保其安全性。
1.**安装SELinux管理工具`semanage`**(如果已安装,则跳过此步骤)
`yum provides semanage`
2.**安装`policycoreutils-python`依赖**
`yum-y install policycoreutils-python`
3.**查询当前SSH服务端口**
`semanage port-lgrep ssh`
4.**向SELinux中添加自定义端口**
`semanage port-a-t ssh_port_t-p tcp 10010`
5.**重启SSH服务**
`systemctl restart sshd.service`
**测试与验证**
在完成上述步骤后,使用自定义端口号进行SSH连接测试,以确保设置生效。
**注意事项**
对于使用阿里云或腾讯云等云服务的用户,新增的端口可能需要在云服务的网络配置中开放。通常情况下,需要在云服务控制台中添加对应的端口访问规则,确保服务器外部能够访问到新设置的端口。