百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

腾讯云主机部署FRP+Teamviewer穿透内网远程运维

nanshan 2025-06-15 18:06 7 浏览 0 评论


一、frp 介绍

frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议 可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。通过在具有公网 IP 的节点上部署 frp 服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能特性,这包括:

1、客户端服务端通信支持 TCP、KCP 以及 Websocket 等多种协议。

2、采用 TCP 连接流式复用,在单个连接间承载更多请求,节省连接建立时间。

3、代理组间的负载均衡。

4、端口复用,多个服务通过同一个服务端端口暴露。

5、多个原生支持的客户端插件(静态文件查看,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。

6、高度扩展性的服务端插件系统,方便结合自身需求进行功能扩展。

7、服务端和客户端 UI 页面。

二、TeamViewer 介绍

TeamViewer 是一个能在任何防火墙和 NAT 代理的后台用于远程控制的应用程序,桌面共享和文件传输的简单且快速的解决方案。

为了连接到另一台计算机,只需要在两台计算机上同时运行 TeamViewer 即可,而不需要进行安装(也可以选择安装,安装后可以设置开机运行)。

该软件第一次启动在两台计算机上自动生成伙伴 ID。只需要输入你的伙伴的 ID 到 TeamViewer,然后就会立即建立起连接

三、需求描述

但由于 Teamviewer 个人版本如果频繁使用的话,会被经常检测到用于商业用途

下面介绍在腾讯云主机上部署FRP+Teamviewer穿透内网进行远程运维,使用 Teamviewer LAN 呼入方式来规避这个问题

四、具体操作步骤

1、下载 frp Linux64 位版本

下载地址:
https://github.com/fatedier/frp/releases

2、云主机上安装部署 frps 服务端

为了演示方便,我这边开通按量付费的腾讯云主机一台 公网 IP 119.45.176.177

1)云主机配置 yum 源

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repo
yum clean all
yum makecache

2)上传 frp Linux64 位版本安装包,解压,重命名

yum install lrzsz -y
cd /opt
rz 上传
tar -zxf frp_0.34.0_linux_amd64.tar.gz
mv frp_0.34.0_linux_amd64 frp

3)vi 编辑 frps.ini

cd /opt/frp/
vi frps.ini
[common]
bind_addr = 0.0.0.0
bind_port = 7111

log_file = /opt/frp/logs/frps.log
log_level = info
log_max_days = 3

authentication_method = token
authenticate_heartbeats = false
authenticate_new_work_conns = false
token = QCloud@FRP2020

4)修改 systemd/frps.service 文件中 ExecStart 脚本段为 frps 以及 frps.ini 实际路径

/opt/frp/frps -c /opt/frp/frps.ini
frps.service 文件拷贝/usr/lib/systemd/system/目录下到并注册为系统服务
cp /opt/frp/systemd/frps.service /usr/lib/systemd/system/frps.service
systemctl enable frps.service
systemctl start frps.service
若有防火墙,需要防火墙放通如下端口
firewall-cmd --zone=public --add-port=7111/tcp --permanent
firewall-cmd --zone=public --add-port=5398/tcp --permanent
firewall-cmd --zone=public --add-port=7122/tcp --permanent
firewall-cmd --reload

5)云主机安全组规则需要放通相关端口

6)排错

问题:/opt/frp/logs/frps.log 不产生日志

原因:由于 frps 服务是 nobody 用户运行的

解决办法:chown -R nobody /opt/frp/logs/

然后重启 service frps restart 这里日志才会写入到/opt/frp/logs/frps.log 中

3、内网机器安装并配置 frpc 客户端

1)内网机器安装并配置 FRP

tar -zxf frp_0.34.0_linux_amd64.tar.gz
mv frp_0.34.0_linux_amd64 frp

2)修改 frpc.ini

[common]
server_addr = 119.45.176.177
server_port = 7111

log_file = /opt/frp/logs/frpc.log
log_level = info
log_max_days = 3

authentication_method = token
authenticate_heartbeats = false
authenticate_new_work_conns = false
token = QCloud@FRP2020

[192.168.31.80_ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 7122

[192.168.31.51_teamviewer]
type = tcp
local_ip = 192.168.31.51
local_port = 5938
remote_port = 5938

3)、修改 systemd/frpc.service 文件中 ExecStart 脚本段为 frpc 以及 frpc.ini 实际路径

4)、注册开机自启动服务,并启动 frpc 服务

cp /opt/frp/systemd/frpc.service /usr/lib/systemd/system/frpc.service
systemctl enable frpc.service
mkdir /opt/frp/logs
touch /opt/frp/logs/frpc.log
chown -R nobody /opt/frp/logs
systemctl start frpc.service
tail -f /opt/frp/logs/frpc.log

4、内网机器配置 Teamviewer

1)开启 LAN 呼入

2)设置无人值守密码

5、外网 Teamviewer 测试连接

输入公网 IP 地址进行呼入连接

6、外网 SSH 连接测试

使用 119.45.176.177 7122 连接到内网 192.168.31.80 的 SSH

五、总结

1、因为 teamview 只能监听 5938 端口,不能自定义端口,所以 Teamviewer 受控端的 5938 frpc 配置文件 frpc.ini 中 local_port = 5938 与 remote_port = 5938 要一致

2、云主机安全组规则以及 CentOS7 内置 firewalld 要放开相关端口

相关推荐

Let’s Encrypt免费搭建HTTPS网站

HTTPS(全称:HyperTextTransferProtocoloverSecureSocketLayer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入...

使用Nginx配置TCP负载均衡(nginx tcp负载)

假设Kubernetes集群已经配置好,我们将基于CentOS为Nginx创建一个虚拟机。以下是实验种设置的详细信息:Nginx(CenOS8Minimal)-192.168.1.50Kube...

Nginx负载均衡及支持HTTPS与申请免费SSL证书

背景有两台minio文件服务器已做好集群配置,一台是192.168.56.41:9000;另一台是192.168.56.42:9000。应用程序通过Nginx负载均衡调用这两台minio服务,减轻单点...

HTTPS配置实战(https配置文件)

原因现在网站使用HTTPS是规范操作之一,前些日子买了腾讯云服务,同时申请了域名http://www.asap2me.top/,目前该域名只支持HTTP,想升级为HTTPS。关于HTTPS的链接过程大...

只有IP地址没有域名实现HTTPS访问方法

一般来说,要实现HTTPS,得有个注册好的域名才行。但有时候呢,咱只有服务器的IP地址,没注册域名,这种特殊情况下,也能照样实现HTTPS安全访问,按下面这些步骤来就行:第一步,先确认公网...

超详解:HTTPS及配置Django+HTTPS开发环境

众所周知HTTP协议是以TCP协议为基石诞生的一个用于传输Web内容的一个网络协议,在“网络分层模型”中属于“应用层协议”的一种。在这里我们并不研究该协议标准本身,而是从安全角度去探究使用该协议传输数...

Godaddy购买SSL之后Nginx配置流程以及各种错误的解决

完整流程:参考地址:https://sg.godaddy.com/zh/help/nginx-generate-csrs-certificate-signing-requests-3601生成NGI...

Nginx从安装到高可用,一篇搞定(nginx安装与配置详解)

一、Nginx安装1、去官网http://nginx.org/下载对应的nginx包,推荐使用稳定版本2、上传nginx到linux系统3、安装依赖环境(1)安装gcc环境yuminstallgc...

阿里云免费证书申请,配置安装,使用tomcat,支持http/https访问

参数说明商品类型默认已选择云盾证书服务(无需修改)。云盾证书服务类型SSL证书服务的类型。默认已选择云盾SSL证书(无需修改),表示付费版SSL证书。如果您需要免费领取或付费扩容DV单域名证书【免费试...

你试过两步实现Nginx的规范配置吗?极速生成Nginx配置小工具

NGINX是一款轻量级的Web服务器,最强大的功能之一是能够有效地提供HTML和媒体文件等静态内容。NGINX使用异步事件驱动模型,在负载下提供可预测的性能。是当下最受欢迎的高性能的Web...

从零开始搭建HTTPS服务(搭建https网站)

搭建HTTPS服务的最初目的是为了开发微信小程序,因为wx.request只允许发起HTTPS请求,并且还必须和指定的域名进行网络通信。要从零开始搭建一个HTTPS的服务需要下面4...

群晖NAS使用官网域名和自己的域名配置SSL实现HTTPS访问

安全第一步,群晖NAS使用官网域名和自己的域名配置SSL实现HTTPS访问【新手导向】NAS本质还是一个可以随时随地访问的个人数据存储中心,我们在外网访问的时候,特别是在公网IP下,其实会面临着很多安...

让网站快速升级HTTPS协议提高安全性

为什么用HTTPS网络安全越来越受到重视,很多互联网服务网站,都已经升级改造为https协议。https协议下数据包是ssl/tcl加密的,而http包是明文传输。如果请求一旦被拦截,数据就会泄露产生...

用Https方式访问Harbor-1.9版本(https访问流程)

我上周在头条号写过一篇原创文章《Docker-Harbor&Docker-kitematic史上最详细双系统配置手册》,这篇算是它的姊妹篇吧。这篇文章也将用到我在头条写的另一篇原创文章的...

如何启用 HTTPS 并配置免费的 SSL 证书

在Linux服务器上启用HTTPS并配置免费的SSL证书(以Let'sEncrypt为例)可以通过以下步骤完成:---###**一、准备工作**1.**确保域名已解析**...

取消回复欢迎 发表评论: