一、服务器上的操作
1.1 保证openssh的安装
openssh安装命令如下
apt-get update
apt install openssh-server
1.2 保证SSH服务没有在相应端口上侦听连接
1确保本地 SSH 服务正在运行
可以尝试使用以下命令检查 SSH 服务的状态(在大多数 Linux 系统上):
sudo systemctl status ssh
如果 SSH 服务没有运行,可以使用以下命令启动它:
sudo systemctl start ssh
3 检查本地 SSH 配置
确保本地 SSH 服务配置正确,特别是端口号。默认情况下,SSH 服务应该在端口 22(默认) 上侦听连接。可以使用以下命令检查 SSH 服务器是否在端口 22上运行:
sudo ss -tln | grep 22
如果没有输出,表示 SSH 服务器未在端口 8333 上侦听连接。
那么,接下来可以检查 /etc/ssh/sshd_config 文件以确保配置正确。可以使用以下命令进行查看和修改:
vi /etc/ssh/sshd_config
但是,如果不是在root下,需要加上sudo:
sudo vi /etc/ssh/sshd_config
否则会出现报错:E45: 'readonly ' option is set (add ! to override
利用vi /etc/ssh/sshd_config
进入修改界面后,在其中保证具有侦听连接的端口的设置,并且前面没有#号,如:
Port 22
同时也要保证:
GatewayPorts yes
Note:如果想修改的话,按’i‘键进入编辑状态,编辑之后,按esc键,并输入:wq保存并退出。如果没有修改,可以按:q直接退出。
否则,如果尝试连接,MobaXterm无法连接,并且服务器上就会出现] enmr: dial top 127.0.0.1:22: connect : connect ion refused
的报错。
更改 SSH 配置后,您需要重新启动 SSH 服务以使更改生效:
sudo systemctl restart sshd
1.3 防火墙问题
sudo iptables -A INPUT -p tcp --dport 端口号 -j ACCEPT
这将在 iptables 中添加一条规则,允许 TCP 流量通过端口 5328。这只是临时性的,重启服务器后规则将失效。
或者:
sudo ufw disable
使用 ufw 停用 Uncomplicated Firewall(Ubuntu)
1.4 FRP配置
1下载
2解压
3进入解压目录,修改配置文件 frpc.ini
# frpc.ini
[common]
server_addr = xxx.xx.xx.xxx
server_port = xxx[ssh+端口号]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 端口号(你想在MobaXterm上进行远程连接的端口号,自定义)
4 运行客户端代理
./frpc -c ./frpc.ini
5 检查是否成功
运行成功的示例:
二、MobaXterm上的操作
对下图三项内容进行填写。Remote host即为frpc.ini中[common]server_addr的地址,Port为自定义的端口。Specify username为服务器用户名,可在服务器上用whoami
查询。
最后,点ok就能成功连接了。