frp 是一個專注于內(nèi)網(wǎng)穿透的高性能的反向代理應(yīng)用,支持 TCP、UDP、HTTP、HTTPS 等多種協(xié)議 可以將內(nèi)網(wǎng)服務(wù)以安全、便捷的方式通過具有公網(wǎng) IP 節(jié)點(diǎn)的中轉(zhuǎn)暴露到公網(wǎng)。通過在具有公網(wǎng) IP 的節(jié)點(diǎn)上部署 frp 服務(wù)端,可以輕松地將內(nèi)網(wǎng)服務(wù)穿透到公網(wǎng),同時(shí)提供諸多專業(yè)的功能特性,這包括:
1、客戶端服務(wù)端通信支持 TCP、KCP 以及 Websocket 等多種協(xié)議。
2、采用 TCP 連接流式復(fù)用,在單個連接間承載更多請求,節(jié)省連接建立時(shí)間。
3、代理組間的負(fù)載均衡。
4、端口復(fù)用,多個服務(wù)通過同一個服務(wù)端端口暴露。
5、多個原生支持的客戶端插件(靜態(tài)文件查看,HTTP、SOCK5 代理等),便于獨(dú)立使用 frp 客戶端完成某些工作。
6、高度擴(kuò)展性的服務(wù)端插件系統(tǒng),方便結(jié)合自身需求進(jìn)行功能擴(kuò)展。
7、服務(wù)端和客戶端 UI 頁面。
二、TeamViewer 介紹TeamViewer 是一個能在任何防火墻和 NAT 代理的后臺用于遠(yuǎn)程控制的應(yīng)用程序,桌面共享和文件傳輸?shù)暮唵吻铱焖俚慕鉀Q方案。
為了連接到另一臺計(jì)算機(jī),只需要在兩臺計(jì)算機(jī)上同時(shí)運(yùn)行 TeamViewer 即可,而不需要進(jìn)行安裝(也可以選擇安裝,安裝后可以設(shè)置開機(jī)運(yùn)行)。
該軟件第一次啟動在兩臺計(jì)算機(jī)上自動生成伙伴 ID。只需要輸入你的伙伴的 ID 到 TeamViewer,然后就會立即建立起連接
三、需求描述但由于 Teamviewer 個人版本如果頻繁使用的話,會被經(jīng)常檢測到用于商業(yè)用途
下面介紹在騰訊云主機(jī)上部署FRP+Teamviewer穿透內(nèi)網(wǎng)進(jìn)行遠(yuǎn)程運(yùn)維,使用 Teamviewer LAN 呼入方式來規(guī)避這個問題
四、具體操作步驟1、下載 frp Linux64 位版本下載地址:https://github.com/fatedier/frp/releases
2、云主機(jī)上安裝部署 frps 服務(wù)端為了演示方便,我這邊開通按量付費(fèi)的騰訊云主機(jī)一臺 公網(wǎng) IP 119.45.176.177
1)云主機(jī)配置 yum 源mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backupwget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repowget -O /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repoyum clean allyum makecache2)上傳 frp Linux64 位版本安裝包,解壓,重命名yum install lrzsz -ycd /optrz 上傳tar -zxf frp_0.34.0_linux_amd64.tar.gzmv frp_0.34.0_linux_amd64 frp3)vi 編輯 frps.inicd /opt/frp/vi frps.ini[common]bind_addr = 0.0.0.0bind_port = 7111log_file = /opt/frp/logs/frps.loglog_level = infolog_max_days = 3authentication_method = tokenauthenticate_heartbeats = falseauthenticate_new_work_conns = falsetoken = QCloud@FRP20204)修改 systemd/frps.service 文件中 ExecStart 腳本段為 frps 以及 frps.ini 實(shí)際路徑/opt/frp/frps -c /opt/frp/frps.inifrps.service 文件拷貝/usr/lib/systemd/system/目錄下到并注冊為系統(tǒng)服務(wù)cp /opt/frp/systemd/frps.service /usr/lib/systemd/system/frps.servicesystemctl enable frps.servicesystemctl start frps.service若有防火墻,需要防火墻放通如下端口firewall-cmd --zone=public --add-port=7111/tcp --permanentfirewall-cmd --zone=public --add-port=5398/tcp --permanentfirewall-cmd --zone=public --add-port=7122/tcp --permanentfirewall-cmd --reload5)云主機(jī)安全組規(guī)則需要放通相關(guān)端口6)排錯問題:/opt/frp/logs/frps.log 不產(chǎn)生日志
原因:由于 frps 服務(wù)是 nobody 用戶運(yùn)行的
解決辦法:chown -R nobody /opt/frp/logs/
然后重啟 service frps restart 這里日志才會寫入到/opt/frp/logs/frps.log 中
3、內(nèi)網(wǎng)機(jī)器安裝并配置 frpc 客戶端1)內(nèi)網(wǎng)機(jī)器安裝并配置 FRP
tar -zxf frp_0.34.0_linux_amd64.tar.gzmv frp_0.34.0_linux_amd64 frp2)修改 frpc.ini
[common]server_addr = 119.45.176.177server_port = 7111log_file = /opt/frp/logs/frpc.loglog_level = infolog_max_days = 3authentication_method = tokenauthenticate_heartbeats = falseauthenticate_new_work_conns = falsetoken = QCloud@FRP2020[192.168.31.80_ssh]type = tcplocal_ip = 127.0.0.1local_port = 22remote_port = 7122[192.168.31.51_teamviewer]type = tcplocal_ip = 192.168.31.51local_port = 5938remote_port = 59383)、修改 systemd/frpc.service 文件中 ExecStart 腳本段為 frpc 以及 frpc.ini 實(shí)際路徑
4)、注冊開機(jī)自啟動服務(wù),并啟動 frpc 服務(wù)
cp /opt/frp/systemd/frpc.service /usr/lib/systemd/system/frpc.servicesystemctl enable frpc.servicemkdir /opt/frp/logstouch /opt/frp/logs/frpc.logchown -R nobody /opt/frp/logssystemctl start frpc.servicetail -f /opt/frp/logs/frpc.log4、內(nèi)網(wǎng)機(jī)器配置 Teamviewer1)開啟 LAN 呼入
2)設(shè)置無人值守密碼
5、外網(wǎng) Teamviewer 測試連接輸入公網(wǎng) IP 地址進(jìn)行呼入連接
6、外網(wǎng) SSH 連接測試使用 119.45.176.177 7122 連接到內(nèi)網(wǎng) 192.168.31.80 的 SSH
五、總結(jié)1、因?yàn)?teamview 只能監(jiān)聽 5938 端口,不能自定義端口,所以 Teamviewer 受控端的 5938 frpc 配置文件 frpc.ini 中 local_port = 5938 與 remote_port = 5938 要一致
2、云主機(jī)安全組規(guī)則以及 CentOS7 內(nèi)置 firewalld 要放開相關(guān)端口
掃描二維碼推送至手機(jī)訪問。
版權(quán)聲明:本文由信途科技轉(zhuǎn)載于網(wǎng)絡(luò),如有侵權(quán)聯(lián)系站長刪除。
轉(zhuǎn)載請注明出處http://macbookprostickers.com/xintu/13095.html