🗒️FRP内网穿透的best practice
type
status
date
slug
summary
tags
category
icon
password
FRPS
借助:https://github.com/MvsCode/frps-onekey
2023.4.10更新:由于GitHub在国内访问并不稳定,改为推荐使用docker部署frps(一般国内服务器提供商都会默认配置好docker的mirror)
借助:
但这样需要手动生成frps.ini,一个tricky的方法是使用https://github.com/MvsCode/frps-onekey的脚本生成好frps.ini,然后用docker映射进去
FRPC
借助:https://hub.docker.com/r/stilleshan/frpc
frpc.ini
常用服务端口
22
80
443
1433: SQL Server
3389: RDP
SQL Server的端口暴露
如果直接用frp做端口映射,会出现异常EOF的问题。
2023.4.10更新:目前可以直接用frpc,配置好frpc.ini即可,不再需要使用nginx做一次跳转
这篇文章也提到了这个现象:https://sst.st/p/213,并且指出了解决方案:使用nginx做一个中转
不能直接在frp的配置文件里直接转发目标服务器的端口,实测如果这样做的话,sql连接会在某一特定的步骤终止连接,原因未知https://sst.st/p/213
前置条件和Reference
安装Docker:https://docs.docker.com/engine/install/ubuntu/
设置Nginx做TCP端口转发:https://blog.51cto.com/u_14286115/3327790http://blog.ilibrary.me/2021/11/27/nginx-tcp%E8%BD%AC%E5%8F%91?hmsr=joyk.com&utm_source=joyk.com&utm_medium=referral
配置文件
frpc.ini
nginx.conf
重点在最后一行
tcp.conf
创建容器
网络设置为host即可
然后就可以使用frps服务器的IP:9243来登录SQL Server了