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
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
systemctl restart sshd
现在就可以用新IP登录了