想法起因web
因为公司的电脑实在是太差了,开机个虚拟机就卡包了,不少测试实验无法作,家里的电脑也是闲着,因此想着利用家里的电脑来远程搭实验环境或者测试。
搭建目的centos
远程使用家里的电脑,搭建实验环境。
环境评估安全
因为家里的宽带是房东的宽带,费用高且不说怎么好,有挂羊头卖狗肉的嫌疑,毕竟打着电信网络的旗号,却实际上用的联通的网络。租房的网络上行都比较低,网络还稳定,这算比较欣慰的。
准备的设备:服务器
frps代理配置参数网络
# frps.ini [common] bind_port = 7000 # 仪表盘web dashboard_port = 7500 dashboard_user = admin dashboard_pwd = admin # 令牌 token = 12345678 # 端口白名单 能够不设置 allow_ports = 7000-7010,6000-6010 # 链接池 能够不设置 max_pool_count = 10 -------------------------- 我是分割线 运行方式 开始 ------------------------------------------------------------------------ # 下载好frp压缩包,并解压 # 目录 mv frpxxx /usr/local/frp cd /usr/local/frp nohup ./frps -c ./frps.ini & # 这是后台运行方式的一种 -------------------------- 我是分割线 运行方式 结束 ------------------------------------------------------------------------
注意:ssh
公网服务器防火墙须要开启对应的端口。
家里电脑配置参数tcp
家里的电脑是Windows10系统,做为服务端来使用,配置文件参数以下:
# frpc.ini [common] server_addr = x.x.x.x # 配置frps 服务地址 填公网ip地址 server_port = 7000 # 令牌 估计用来加密的 跟frps一致 token = 12345678 # 动态加载配置文件 admin_addr = 127.0.0.1 admin_port = 7400 # 端口白名单 allow_ports = 7000-7010,6000-6010 # 链接池 pool_count = 2 # 模块名 [secret_mstsc] # 类型 type = stcp # 加密 sk = abcdefg # 端口映射 local_ip = 127.0.0.1 local_port = 3389 # 加密与压缩 use_encryption = true use_compression = true ====== 我是分割线 ============== 客户端分割线 ==================== # 客户端 # frpc.ini [common] server_addr = x.x.x.x server_port = 7000 # 令牌 token = 12345678 # 动态加载配置文件 admin_addr = 127.0.0.1 admin_port = 7400 # 链接池 pool_count = 2 # 模块名称 [secret_mstsc_visitor] # 类型 type = stcp # stcp 的访问者 role = visitor # 要访问的 stcp 代理的名字 # 服务端的模块名称 由本名称做为区分多个服务 server_name = secret_mstsc # 须要与服务端的一致 sk = abcdefg # 绑定本地端口用于访问 mstsc 服务 bind_addr = 127.0.0.1 bind_port = 6002 # 加密与压缩 use_encryption = true use_compression = true
Windows端 启动脚本编写ide
# frpc.bat frpc.exe -c frpc.ini # frpc.vbs Dim WinScriptHost Set WinScriptHost = CreateObject("WScript.Shell") WinScriptHost.Run Chr(34) & "D:\frp_20\frpc.bat" & Chr(34), 0 Set WinScriptHost = Nothing # D:\frp_20\frpc.bat 路径地址要改为你下载frp 放的文件夹一块儿 -------------------------- 我是分割线 运行方式 开始 ------------------------------------------------------------------------ # 下载好frp压缩包,并解压 # 移动目录到 D盘,并更名字 打开cmd,切换到D盘,再进入到 frp目录下 frpc.exe -c ./frps.ini # 或者 双击运行 frpc.vbs 文件 -------------------------- 我是分割线 运行方式 结束 ------------------------------------------------------------------------
Linux ssh 配置测试
===== 我是分割线 ============== 服务端 ========================= # frpc.ini [common] server_addr = x.x.x.x server_port = 7000 # 令牌 token = 12345678 # 动态加载配置文件 admin_addr = 127.0.0.1 admin_port = 7400 # 端口白名单 allow_ports = 7000-7010,6000-6010 # 链接池 pool_count = 2 [secret_ssh] type = stcp sk = abcdefg local_ip = 127.0.0.1 local_port = 22 # 加密与压缩 use_encryption = true use_compression = true ==== 我是分割线 ============= 客户端 ============================= # frpc.ini [common] server_addr = x.x.x.x server_port = 7000 # 令牌 token = 12345678 # 动态加载配置文件 admin_addr = 127.0.0.1 admin_port = 7400 # 端口白名单 allow_ports = 7000-7010,6000-6010 # 链接池 pool_count = 2 [secret_ssh] type = stcp # stcp 的访问者 role = visitor # 要访问的 stcp 代理的名字 server_name = secret_ssh sk = abcdefg # 绑定本地端口用于访问 ssh 服务 bind_addr = 127.0.0.1 bind_port = 6000 # 加密与压缩 use_encryption = true use_compression = true ==== 我是分割线 ==========================
配置文件说明:加密
将frps和frps.ini上有公共IP的服务器上。
将frpc和frpc.ini放到内网(LAN)中的服务器上。
对于某些服务,若是将它们直接暴露给公共网络,将存在安全风险。
stcp(secret tcp)帮助您建立代理,避免任何人均可以访问它。
与上面同样配置frps。
# frpc.ini ssh服务端 [common] server_addr = x.x.x.x server_port = 7000 [secret_ssh] type = stcp sk = abcdefg local_ip = 127.0.0.1 local_port = 22
# frpc.ini 链接客户端 [common] server_addr = x.x.x.x server_port = 7000 [secret_ssh_visitor] type = stcp role = visitor server_name = secret_ssh sk = abcdefg bind_addr = 127.0.0.1 bind_port = 6000
ssh -oPort=6000 test@127.0.0.1
经过仪表板检查frp的状态和代理的统计信息。
为仪表板配置端口以启用此功能:
[common] dashboard_port = 7500 # dashboard的用户名和密码都是可选的,若是没有设置,默认为admin。 dashboard_user = admin dashboard_pwd = admin
而后访问http://[server_addr]:7500以查看仪表板,默认用户名和密码都是admin。
备注说明: