CentOS 修改 SSH 端口(Port)

时间:2021-03-30 15:22:37

CentOS果然很“麻烦”,或者说是安全考虑太多,需要考虑太多的context问题,之前的samba中已经遇到类似问题,SSH同理。

列出关键修改步骤,稍后研究context标签(自己的翻译,还没有看相关中文教程)问题。文章总结于gino针对自己SSH调整实验工作记录。

参考文献:CentOS 修改SSH默认端口 / RHEL 6: semanage SELinux Command Not Found / RHEL 6: Change OpenSSH Port To 1255 ( SELinux Config )

Linux Server:CentOS 6.2

桌面系统环境: Windows 7

连接工具:  putty

 

1.修改SSH配置文件

vi /etc/ssh/sshd_config 

修改端口,禁止root登录,添加限制用户

Port 2345
PermitRootLogin no
AllowUsers gino

2.修改iptables

vi /etc/sysconfig/iptables

复制22端口ACCEPT规则

-A INPUT -m state --state NEW -m tcp -p tcp --dport 2345 -j ACCEPT

3.修改 port contexts(关键),需要对context进行修改

semanage port -a -t ssh_port_t -p tcp 2345

4.重启SSH服务

/etc/init.d/sshd restart

此时SSH服务已经迁移到2345端口,并且只有gino用户可以访问,提升安全性。

 

附录:semanage 

1.安装semanage,默认情况下,CentOS没有这个命令,需要查看这个命令由谁来提供的

yum provides /usr/sbin/semanage

然后进行安装

yum -y install policycoreutils-python

2.semanage使用 针对prot context,例如查看ssh端口情况

semanage port -l | grep ssh

应该可以到如下结果:

ssh_port_t                     tcp      2345, 22

 也可以用netstat进行验证

netstat -tulpn | grep 2345

至此,SSH调整完毕,contexts机制还不是很情况,需要进一步深入研究。