1).修改22端口
vi /etc/ssh/sshd_config
找到Port 22
改成Port 12250
添加允许访问的用户(多个用户空格分开)
AllowUsers root@192.168.122.1 root@192.168.122.2

2).开启防火墙(默认禁用所有未开放的端口)
不要这样添加(表示对所有IP开放1225端口)
firewall-cmd --permanent --zone=public --add-port=12250/tcp

查看开放的端口号
firewall-cmd --zone=public --list-ports

如果已经开放,则删除端口号
firewall-cmd --permanent --remove-port=12250/tcp

3)针对固定IP开放固定端口

只对192.168.122.1开放12250端口, 对其他IP不开放(这几组引号可以这样写不会混淆)
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.122.1" port protocol="tcp" port="12250" accept"

只针对192.168.122.*的IP段开放

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.122.0/24" port protocol="tcp" port="12250" accept"

针对192.168.1.*的IP段关闭

firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.1.0/24' reject"

查看已设置的规则
注意要先重启防火墙才能查到最新规则  service firewalld restart
firewall-cmd --list-all

删除上面设置的规则(add换成remove其他的保持一致)
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.122.1" port protocol="tcp" port="12250" accept"


最终生成的规则在/etc/firewalld/zones/public.xml 
命令不好记 可以直接修改文件

4).修改selinux

vi /etc/selinux/config
SELINUX=permissive  
重启
init 6

安装selinux管理工具
yum install policycoreutils-python -y

查看已添加的端口号
semanage port -l | grep ssh

删除端口号
semanage port --delete -t ssh_port_t -p tcp 12250

添加端口号
semanage port -a -t ssh_port_t -p tcp 12250


systemctl restart sshd

5.修改hosts黑白名单
vi /etc/hosts.deny  vi /etc/hosts.allow
修改host.deny禁用来自所有IP的ssh与telnet
sshd:all:deny
in.telnetd:all:deny

修改hosts.allow只针对固定IP开放ssh
sshd:192.168.122.1:allow
每行一个


最后重启防火墙和ssh
service firewalld restart
service sshd restart

-------------修改成另一个IP---------------

查看现有规则
firewall-cmd --list-all

删除上一个IP
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="ip地址" port protocol="tcp" port="端口" accept"
添加新IP
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="IP地址" port protocol="tcp" port="端口" accept"
重启防火墙,查看最新设置
service firewalld restart
firewall-cmd --list-all
修改ssh配置文件 在最后替换新IP
vi /etc/ssh/sshd_config
修改host白名单配置文件 在最后替换新IP
vi /etc/hosts.allow
重启ssh服务
systemctl restart sshd

现在就可以用新IP登录了