Linux VPS服务器SSH端口一键修改脚本

博主使用SSH登录VPS一直习惯用复杂密码+默认22端口,然而这些天发现我的VPS的SSH登陆特别慢。使用TOP看内存占用率,发现有好几个SSH的进程在吃我内存。这几个SSH进程正在尝试登陆我的VPS,才重装没几天服务器就有30W条SSH爆破记录。可怕~赶紧改端口

root@Korea:~# lastb | wc -l
301495

使用方法

wget https://yangwenqing.com/files/Source/sshport.sh
bash sshport.sh

输入一个SSH端口确认。如开启了防火墙还需要另外放行SSH端口

iptables

如果防火墙使用的是iptables,SSH端口为2333

iptables -I INPUT -p tcp --dport 2333 -j ACCEPT
service iptables save
systemctl restart iptables.service

firewall

如果防火墙使用的是firewall,SSH端口为2333

firewall-cmd --zone=public --add-port=2333/tcp --permanent 
firewall-cmd --reload

注意:
如果VPS使用的是 CentOS 7 且没有关闭SELinux,需要多操作一步,如关闭SELinux可忽略这步。

# 查看 SELinux 开放给 SSH 的端口
semanage port -l|grep ssh
# SELinux 开放 2333 端口给 SSH
semanage port -a -t ssh_port_t -p tcp 2333
# 如提示 semanage command not found 的报错可以使用以下命令解决,之后再操作
yum provides /usr/sbin/semanage 或者 yum whatprovides /usr/sbin/semanage
yum -y install policycoreutils-python

重启SSH

重启ssh服务就可以使用新端口SSH登录了,不过对于更安全的登录方式还是用密钥

# CentOS系统
service sshd restart
# Debian/Ubuntu系统
service ssh restart

脚本预览

系统要求:支持Debian、Ubuntu、CentOS系统。

# Use default SSH port 22. If you use another SSH port on your server
if [ -e "/etc/ssh/sshd_config" ];then
    [ -z "`grep ^Port /etc/ssh/sshd_config`" ] && ssh_port=22 || ssh_port=`grep ^Port /etc/ssh/sshd_config | awk '{print $2}'`
    while :; do echo
        read -p "Please input SSH port(Default: $ssh_port): " SSH_PORT
        [ -z "$SSH_PORT" ] && SSH_PORT=$ssh_port
        if [ $SSH_PORT -eq 22 >/dev/null 2>&1 -o $SSH_PORT -gt 1024 >/dev/null 2>&1 -a $SSH_PORT -lt 65535 >/dev/null 2>&1 ];then
            break
        else
            echo "${CWARNING}input error! Input range: 22,1025~65534${CEND}"
        fi
    done
 
    if [ -z "`grep ^Port /etc/ssh/sshd_config`" -a "$SSH_PORT" != '22' ];then
        sed -i "s@^#Port.*@&\nPort $SSH_PORT@" /etc/ssh/sshd_config
    elif [ -n "`grep ^Port /etc/ssh/sshd_config`" ];then
        sed -i "s@^Port.*@Port $SSH_PORT@" /etc/ssh/sshd_config
    fi
fi
Last modification:April 20th, 2020 at 06:28 am
If you think my article is useful to you, please feel free to appreciate