服务器端(Centos7.9)
在阿里云服务器上安装配置frp服务端,配置文件frps.ini修改如下:
[common]
bind_port = 7000
dashboard_port=7500
dashboard_user=admin
dashboard_pwd=065557
enable_prometheus=true
authentication_method=token
token=065557
在阿里云安全组中开放7000,7500端口。
将frps设置为系统服务,开机自启动
$sudo vim /etc/systemd/system/frps.service
# 然后将下面的内容写入其中,注意路径改成自己的
[Unit]
Description=frps deamon
After=syslog.target network.target
Wants=network.target
[Service]
Type=simple
ExecStart=/home/nat/frps -c /home/nat/frps.ini
[Inatall]
WantedBy=multi-user.target
# 然后启动服务
$ sudo systemctl start frps
客户端(Ubuntu22.04)
在内网服务器上下载与阿里云服务器上相同版本的frp,以免出问题。修改frpc.ini如下:
[common]
tls_enable=true
server_addr = x.x.x.x
server_port = 7000
token=065557
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 222
'server_addr'是阿里云服务器的ip地址,'remote_port'是内网服务器进行ssh远程连接的端口,此端口同样需要在阿里云安全组中开放。
将frpc设置为系统服务开机自启
$sudo vim /etc/systemd/system/frpc.service
# 然后将下面的内容写入其中,注意路径改成自己的
[Unit]
Description=frpc deamon
After=syslog.target network.target
Wants=network.target
[Service]
Type=simple
ExecStart=/home/nat/frpc -c /home/nat/frpc.ini
[Inatall]
WantedBy=multi-user.target
# 然后启动服务
$ sudo systemctl start frpc
至此两边都配置好了,最后一步要进行ssh连接。在连接之前先检查一下内网服务器上有没有安装ssh server:
$ ssh localhost
出现Connection rejected 等响应说明可能没有ssh server,输入以下命令:
$ sudo apt install openssh-server
安装完毕后在另外一个电脑上例如笔记本上打开vscode,安装ssh remote插件,输入
$ ssh -p 222 username@x.x.x.x
username是内网服务器的用户名,x.x.x.x是阿里云服务器公网ip
如果没有问题会让你输入username的密码,输入正确即可远程连接了。
设置ssh免密登陆和别名
# 使用以下命令生成ssh密钥
$ ssh-keygen
# 将密钥发送到远程服务器
$ ssh-copy-id username@x.x.x.x
# 此时再进行ssh连接即可免密登陆
$ ssh -p 222 username@x.x.x.x
使用以下方法设置别名方便登陆
# 找到用户目录下的.ssh文件夹,cd进去
$ vim config
# 将以下内容写入
Host name
HostName x.x.x.x
Port 222
User username
# 保存之后便可以使用以下命令连接
$ ssh name