迫于某些情况, 22 端口不对外开放, 但是为了自己的便利 … 在保证了密码的安全程度和对风险的知情下偷偷开启新的 ssh 远程端口
服务器环境
Operating System: CentOS Linux 7 (Core)
Kernel: Linux 3.10.0-123.el7.x86_64
修改 sshd_config
配置文件
vi /etc/ssh/sshd_config
找到 Port
和ListenAddress
的配置区域, 进行如下修改
Port 22
Port 443
# 开启全局监听
ListenAddress 0.0.0.0
说明: 打开 22 注释以防配置发生意外, 后面 22 都连不上, 也算是掩护, 然后开发 443 做备用端口
重启 sshd
服务
systemctl restart sshd
修改防火墙配置
/etc/selinux/config
进行如下修改
SELINUX=disabled
开放端口或关闭防火墙
# 开放端口
firewall-cmd --add-port=10010/tcp --permanent
# 关闭防火墙
systemctl stop firewalld
添加或修改端口类型
# 如果是新端口就 -a 进行添加
semanage port -a -t ssh_port_t -p tcp 443
# 443 是 https 端口, 所以是 -m 进行修改
semanage port -m -t ssh_port_t -p tcp 443
semanage 安装
直接安装
yum install semanage
如果提示 No package semanage available.
可采用以下方法
yum provides semanage
yum -y install policycoreutils-python.x86_64
测试端口是否正常监听
netstat -nap | grep sshd
出现如下监听信息则说明配置正常
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 711/sshd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 711/sshd
进行外网测试 ssh
ssh user@out-ip -p 443