Centos7.x修改ssh登陆端口,Centos6.x修改ssh登陆端口,Centos查看SSH端口

迅恒数据中心

一:给服务器配置IP,如果配置了外网IP就省略不做,直接做二

Centos6.x用ifconfig -a
Centos7.x用ip addr show

查看网卡名称,Centos6.x一般是eth0或em0,Centos7.x可能是enp1s0f0
再用ethtool enp1s0f0查看哪个网卡是接了网线的,接了网线的显示为yes,否则为no
 
配置IP:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
或vi /etc/sysconfig/network-scripts/ifcfg-enp1s0f0
 
详细配置信息是:
DEVICE=enp1s0f0或eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=121.14.154.51
PREFIX=26或NETMASK=255.255.255.0
GATEWAY=121.14.154.1
DNS1=114.114.114.114
DNS2=8.8.8.8
IPADDR2=114.119.116.10
PREFIX2=24
 
说明:
上面的PREFIX=26也写为NETMASK=255.255.255.192
PREFIX2=24也可以写为NETMASK=255.255.255.0
IPADDR2=…和PREFIX2=…单网卡配置2个IP的时候才设置,只有一个IP的时候请去掉
 
重启网络服务生效:
service network restart

二:查看安装的SSH服务器包
yum list installed | grep ssh

如果没安装就用yum install openssh-server来安装SSH服务,正常情况都是安装了的

三:查看SSH端口
安装semanage和其依赖工具包policycoreutils-python
yum install policycoreutils-python
yum provides semanage
查询当前 ssh 服务端口:
semanage port -l | grep ssh

四:修改SSH端口
使用 vi/vim 打开 sshd_config 文件:
vim /etc/ssh/sshd_config
找到“#Port 22”,这一行直接键入“yyp”复制该行到下一行,然后把两行的“#”号即注释去掉,修改成:
Port 22
Port 20300
SSH默认监听端口是22,如果你不强制说明别的端口,”Port 22”注不注释都是开放22访问端口。上面我保留了22端口,防止之后因为各种权限和配置问题,导致连22端口都不能访问了,那就尴尬了。等一切都ok了,再关闭22端口。
Ok,继续,我增加了20300端口,大家修改端口时候最好挑10000~65535之间的端口号,10000以下容易被系统或一些特殊软件占用,或是以后新应用准备占用该端口的时候,却被你先占用了,导致软件无法运行。

五:向防火墙中添加修改的端口
向防火墙中添加端口的命令为:
firewall-cmd --zone=public --add-port=20300/tcp --permanent
重新读取防火墙规则:
firewall-cmd --reload
查看端口是否添加成功:
firewall-cmd --zone=public --query-port=20300/tcp
如果成功会显示yes
注意: 这里的设置是在 CentOS 7.x 操作 , CentOS6不是firewall
如果是Centos6.x就是iptables防火墙规则,请参考http://www.piis.cn/zhishi/381.html

六: 向SELinux中添加增加的SSH端口
semanage port -a -t ssh_port_t -p tcp 20300
验证 ssh 端口是否添加成功:
semanage port -l | grep ssh
会显示ssh_port_t    tcp   20300,22
添加成功之后就可以重启 ssh 服务了:
systemctl restart sshd.service

重启SSH服务和防火墙方法:
systemctl restart sshd
systemctl restart firewalld.service
shutdown -r now

查看某端口是否被占用,以20300为例:
netstat -lnp | grep 20300
如果没有任何信息,说明没有被占用。有信息,说明被占用了,一般会列出哪个进程占用。

CentOS7禁止PING的方法:
echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all
sysctl -p
重新开启把那个文件的值设置为 0 即可 再sysctl -p 即可

查看是否开启了SELinux
sestatus -v
如果输出结果为:
SELinux status:       disabled
说明有打开,可以通过修改SELinux的配置开启或关闭它:
vim /etc/selinux/config
找到:
SELINUX=disabled
修改成:
SELINUX=enforcing
重启一下,就OK。

分类:教程帮助 百度收录 必应收录