用wget直接在终端下载GitHub上release的压缩包Releases · fatedier/frp (github.com),找符合你服务器的版本将下边的链接替换掉就行,解压缩的时候别忘了也替换掉。
# 下载压缩包
wget https://github.com/fatedier/frp/releases/download/v0.48.0/frp_0.48.0_linux_amd64.tar.gz
# 解压压缩包到 /usr/local/bin 目录下
sudo tar -xzvf frp_0.48.0_linux_amd64.tar.gz -C /usr/local/bin --strip-components=1
在宝塔面板上看也行,在终端用命令也行,看你的喜好。我这就直接在宝塔上看了。
这是有公网ip的服务器,所以配置frps就行,s就是server的意思,c就是client的意思。
[common]
# 绑定本机
bind_addr = 0.0.0.0
# 绑定端口号
bind_port = xxx
kcp_bind_port = xxx
# 面板的端口号
dashboard_port = xxx
# 面板用户
dashboard_user = xxx
# 面板密码
dashboard_pwd = xxxx
vhost_http_port = xxxx
vhost_https_port = xxxx
log_file = ./frps.log
log_level = info
log_max_days = 3
token = xxxx
max_pool_count = 50
tcp_mux = true
具体配置信息看官网,讲的很清楚文档 | frp (gofrp.org)
使用systemd便捷启动frp
如Linux服务端上没有安装
systemd
,可以使用yum
或apt
等命令安装systemd
。# yum yum install systemd # apt apt install systemd
使用文本编辑器,如
vim
创建并编辑frps.service
文件。$ vim /etc/systemd/system/frps.service
写入内容
[Unit] # 服务名称,可自定义 Description = frp server After = network.target syslog.target Wants = network.target [Service] Type = simple # 启动frps的命令,需修改为您的frps的安装路径!!!!!!别忘了改成你自己的~~~~~~ ExecStart = /xxx/xxx/frps -c /xxxx/xxx/frps.ini [Install] WantedBy = multi-user.target
使用
systemd
命令,管理 frps。# 启动frp systemctl start frps # 停止frp systemctl stop frps # 重启frp systemctl restart frps # 查看frp状态 systemctl status frps
配置 frps 开机自启。
systemctl enable frps
这边官网上有,注意别忘了把ExeStart换成你自己的就行。这是服务端,客户端就改个名,frpc就行。因为我的内网机子也是用的Centos。
再看我内网客户端配置:
[common]
server_addr = 公网ip地址
server_port = frps的bind_port一项
token = 你设的Token
[ssh]
type = tcp
local_ip = 内网ip地址
local_port = 本机端口号,因为是要ssh连接,所以设成了22
remote_port = 公网服务器的服务端监听的端口不是bind_port
[web]
type = http
local_port = 80
custom_domains = 域名,绑定在公网ip上的
local_ip
和local_port
配置为本地需要暴露到公网的服务地址和端口。remote_port
表示在 frp 服务端监听的端口,访问此端口的流量将会被转发到本地服务对应的端口。
frps 和 frpc都启动后,要是没有问题的话,面板上就有信息了。
截图软件是Snipaste,需要的自己去下,一个朋友推荐的,贴图功能挺好用的。
通过ssh访问内网机器
通过 SSH 访问内网机器,假设用户名为 test:
ssh -oPort=6000 test@x.x.x.x
frp 会将请求
x.x.x.x:6000
的流量转发到内网机器的 22 端口。
官网那么说的,我是直接用xshell
连接的,方便点。
那个端口号就是服务端监听的端口号,不是22,除非你在服务端设成22,那你服务端可能就进不去ssh
了,我没试过反正。然后用户名和密码填写你内网主机的,别写成有公网ip服务器的。
完事就能正常进去,就跟你用ssh
22 端口号连内网主机一样。因为frps
和frpc
已经做了连接,你访问监听端口号的流量会被转发到内网主机上的22端口,呃,不知道这么说对不对,大体应该是这样,看官方文档就行了,我这只是记录下。
http
那个web
没啥好说的,就是typecho
得先关闭https
,不然访问的时候有问题,后台进不去。(我的博客用的typecho
,其他的没怎么用过)
停用Typecho
的HTTPS
- 在
Typecho
的根目录下,找到config.inc.php
文件,并使用文本编辑器打开该文件。 - 在
config.inc.php
文件中,找到以下代码:
define('__TYPECHO_SECURE__', true);
- 将上述代码中的true值改为false,即:
define('__TYPECHO_SECURE__', false);
- 保存修改并退出文本编辑器。
- 刷新网站页面,查看修改是否生效。
然后就能正常的进后台发布文章了。开启https
要装一个https2http
插件,我还没来得及弄,过两天再弄。
还不快抢沙发