📜  如何在 22 以外的端口上进行 SSH - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:52:11.945000             🧑  作者: Mango

如何在 22 以外的端口上进行 SSH - Shell-Bash

概述

SSH(Secure Shell)是一种远程连接协议,常用于与远程服务器进行安全通信并执行命令。默认情况下,SSH服务器监听22端口,但有时出于安全或其他原因,需要将SSH服务器的监听端口更改为非默认端口,以减少恶意入侵的风险。

本文将介绍如何在22以外的端口上进行SSH,以及如何配置SSH服务器以侦听指定的非默认端口。

步骤
1. 登录到远程服务器

通过终端或SSH客户端使用已知的凭证(用户名和密码或公钥)登录到远程服务器。

ssh username@server_ip
2. 编辑SSH配置文件

使用文本编辑器(如vim或nano)编辑SSH服务器的配置文件/etc/ssh/sshd_config

sudo vim /etc/ssh/sshd_config
3. 找到并修改端口设置

sshd_config文件中,找到以下行:

# Port 22

删除行首的井号#并将端口号修改为所需的非默认端口,例如:

Port 2222
4. 执行保存和退出

保存对sshd_config文件的修改并退出编辑器。

5. 重新启动SSH服务

使用适用于您的操作系统的命令重新启动SSH服务。下面是一些常用的命令示例:

  • 使用systemctl(systemd):

    sudo systemctl restart sshd
    
  • 使用service:

    sudo service ssh restart
    
  • 使用/etc/init.d/:

    sudo /etc/init.d/ssh restart
    
6. 防火墙设置

如果服务器上使用了防火墙(如ufw),请确保已允许新的SSH端口通过防火墙。使用以下命令添加防火墙规则:

sudo ufw allow 2222

其中,2222是您所选择的非默认SSH端口。

7. 测试连接

现在,您可以使用新配置的SSH端口连接到服务器。使用以下命令在指定的非默认端口上执行SSH连接:

ssh -p 2222 username@server_ip

确保将2222替换为您所选择的非默认SSH端口,username替换为登录用户名,server_ip替换为服务器的IP地址。

结论

通过按照上述步骤,在22以外的端口上进行SSH连接,并将SSH服务器的默认端口更改为非默认端口。这样做可以增加服务器的安全性,并降低恶意入侵的风险。