Author : zbzhen, Last modification time : Tue Feb 21 10:41:24 2023
修改配置文件frps.ini
记得设置一个长一点的密码
[common]
bind_port = 7000
token = wo_shi_aliyun_mima
开启TCP协议, 端口是7000
运行nohup ./frps -c frps.ini >logfile.dat 2>&1 &
停止ps -aux|grep frp| grep -v grep
查看进程号, 进程号是第一个数字
kill -9 进程号
可停止, 例如kill -9 3498
修改配置文件frpc.ini
假设阿里云的公网ip是47.13.4.5
[common]
server_addr = 47.13.4.5
server_port = 7000
token = wo_shi_aliyun_mima
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
运行nohup ./frpc -c frpc.ini >logfile.dat 2>&1 &
假设实验室机器的用户名为shiyanshi
则
ssh -p 6000 shiyanshi@47.13.4.5
上面的步奏是可以轻松实现内网穿透, 但是会把实验室的机器暴露在公网里, 为此, 建议用安全策略
阿里云要做的工作是一样的
实验室服务器的frpc.ini
的配置文件内容为
假设阿里云的公网ip是47.13.4.5
[common]
server_addr = 47.13.4.5
server_port = 7000
token = wo_shi_aliyun_mima
[anquansecret_ssh]
type = stcp
sk = zheshigaojimima
local_ip = 127.0.0.1
local_port = 22
个人电脑上也要运行frp, 配置文件frpc.ini
内容为
[common]
server_addr = 47.13.4.5
server_port = 7000
[secret_ssh_visitor]
type = stcp
role = visitor
server_name = anquansecret_ssh
sk = zheshigaojimima
bind_addr = 127.0.0.1
bind_port = 6000
假设实验室机器的用户名为shiyanshi
则
运行./frpc -c frpc.ini
连接ssh -p 6000 shiyanshi@127.0.0.1
如果实验室有多台服务器, 该怎么处理?
假设实验室有两台服务器A与B
服务器A的配置文件frpc.ini
为
[common]
server_addr = 47.13.4.5
server_port = 7000
token = wo_shi_aliyun_mima
[anquansecret_sshA]
type = stcp
sk = zheshigaojimimaA
local_ip = 127.0.0.1
local_port = 22
服务器B的配置文件frpc.ini
为
[common]
server_addr = 47.13.4.5
server_port = 7000
token = wo_shi_aliyun_mima
[anquansecret_sshB]
type = stcp
sk = zheshigaojimimaB
local_ip = 127.0.0.1
local_port = 22
个人电脑上的配置文件frpc.ini
为
[common]
server_addr = 47.13.4.5
server_port = 7000
token= wo_shi_aliyun_mima
[secret_ssh_visitor]
type = stcp
role = visitor
server_name = anquansecret_sshA
sk = zheshigaojimimaA
bind_addr = 127.0.0.1
bind_port = 6000
[secret_ssh_10_10_15_8]
type = stcp
role = visitor
server_name = anquansecret_sshB
sk = zheshigaojimimaB
bind_addr = 127.0.0.1
bind_port = 6001
端口得设两个,
假设服务器A上的用户名为jqA
, 服务器B上的用户名为jqB
, 则连接方式分别为
ssh -p 6000 jqA@127.0.0.1
ssh -p 6001 jqB@127.0.0.1
这个已经测试成功
在/etc/rc.local
的代码exit 0
前面加上开启frp的命令即可, 例如在阿里云上添加
nohup /xxx/frps -c /xxx/frps.ini >/xxx/logfile.dat 2>&1 &
这里xxx
为/frp的绝对路径
这个并没有测试成功
这个并没有测试成功
利用crontab
命令实现
crontab -e
@reboot nohup /xxx/frps -c /xxx/frps.ini >/xxx/logfile.dat 2>&1 &
常用命令
crontab -l
查看所有任务
ps ufx | grep cron
查看正在进行的任务
停止crontab正在执行的任务
方法一: 先查看进程号, 再删除.
方法二:
crontab -e
#
注释掉想要停止的认为sudo service cron reload
本地客户端生成密钥ssh-keygen
, 一路回车即可
可以通过cd ~/.ssh; ls
查看刚创建的密钥
ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.10.33.44
连接ssh root@10.10.33.44
这种功能方法比输入密码肯定要安全不少
, 并且也方便很多. 但是也要注意安全, 万一自己电脑私钥泄露, 就会影响到服务器的安全.