selinux修改
安装 semanage
#sudo yum -y install policycoreutils-python
使用以下命令查看当前SElinux 允许的ssh端口:
# sudo semanage port -l | grep ssh
添加20000端口到 SELinux
# sudo semanage port -a -t ssh_port_t -p tcp 12345
然后确认一下是否添加进去
# sudo semanage port -l | grep ssh
如果成功会输出
ssh_port_t tcp 12345, 22
sshd_config
ssh的配置文件位于/etc/ssh/sshd_config
推荐配置:
使sshd服务运行在非标准端口上设置方法:编辑/etc/ssh/sshd_config文件,添加一行内容为(假定设置监听端口是12345):port 12345
在客户端,用ssh <server addr> -p 12345登录服务器。
只允许ssh v2的连接protocol 2
禁止root用户通过ssh登录PermitRootLogin no
禁止用户使用空密码登录PermitEmptyPasswords no
限制登录失败后的重试次数MaxAuthTries 3
只允许在列表中指定的用户登录AllowUsers user1 user2
测试配置文件
#sudo sshd -t
确保配置文件正确!
关闭防火墙!
# sudo service iptables stop
重启sshd
#sudo service sshd restart
查看是否成功监听新端口
# sudo netstat -lnetp | grep sshd
修改iptables配置
#ssh
-A INPUT -m state --state NEW -m tcp -p tcp --dport 12345 -j ACCEPT
启动防火墙
# sudo service iptables start
注意修改线上服务器时候,一定要保持当前ssh客户端登陆状态,ssh服务器restart时候如果出错,当前客户端是保持了连接的,如果ssh restart时候报错,又关闭当前登陆的ssh客户端,就只能去机房了!
selinux ssh端口修改,sshd_config 文件配置的端口号,防火墙配置的端口号一定要反复确认。
使用一次性密码本通过SSH安全登录Linux:http://www.linuxdiyf.com/linux/12294.html
增强SSH安全性的7条技巧:http://www.linuxdiyf.com/linux/7106.html
Linux SSH安全自动登陆实现:http://www.linuxdiyf.com/linux/4511.html