300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 【内网穿透计算机】外网环境下基于Frp VNC技术远程访问计算机 实现内网穿透

【内网穿透计算机】外网环境下基于Frp VNC技术远程访问计算机 实现内网穿透

时间:2019-09-03 06:37:35

相关推荐

【内网穿透计算机】外网环境下基于Frp VNC技术远程访问计算机 实现内网穿透

外网环境下基于Frp、VNC技术远程访问计算机,实现内网穿透

之前文章先后向大家介绍了 Frp内网穿透原理,并 以访问内网samba服务为例,详细介绍了远程访问内网服务器方法,之后有小伙伴留言建议出一期FRP远程访问计算机的文章。

之前曾在评论区,推荐了两款计算机远程登录工具(两款都有PC端和移动端)。

第一款是TeamViewer(PC端和移动端同名)。

下载链接:/s/1eJHQNcwj2lrgHBZYfWs1_A 提取码:tah3

第二款是VNC远程登录工具,PC端叫做VNC-Server,移动端叫做VNC-Viewer。

PC端下载链接:/s/1nNdJnlCI_Tl-nQ0BtmkTBA 提取码:750b

针对TeamViewer,已经给用户提供了内网穿透环境,下载后可以通过右键状态栏图标开启无人值守模式,之后无需记忆远程密码,能够直接通过无人值守设置的密码进入目标计算机,此外还可以直接文件查看与传输。因此从上手难易程度来看,用户可以直接使用TeamViewer进行内网计算机的远程访问,相反,从安全性角度而言,VNC是首选,但VNC需要用户自己搭建穿透服务。

一、配置Frp

1. frps配置:

sudo apt-get updatewget /fatedier/frp/releases/download/v0.17.0/frp_0.17.0_linux_amd64.tar.gztar -zxvf frp_0.17.0_linux_amd64.tar.gz #解压缩:tar xvf 文件名cd frp_0.17.0_linux_amd64#进入解压目录#修改frps.ini文件sudo vim ./frps.ini添加以下内容:

[common]bind_addr = 0.0.0.0 # 0.0.0.0为服务器全局所有IP可用,假如你的服务器有多个IP则可以这样做,或者填写为指定其中的一个服务器IP,支持IPV6.bind_port = 7000 # 客户端与服务端进行通信的端口,即frp服务端口,需与客户端server_port一致dashboard_port = 7500 # 控制台端口 通过 Dashboard 可以方便的查看 FRP 的状态以及代理统计信息展示 通过 http://[server_addr]:7500 访问 Dashboard 界面,用户名密码默认都为 admin。

#后台保持启动 需要在frp_0.17.0_linux_amd64目录下操作nohup ./frps -c ./frps.ini &

返回:nohup: ignoring input and appending output to ‘nohup.out’ 代表执行成功,ctrl+c关闭即可;用ps -ef 会在进程中看见frp工作进程。

不要忘记放行VNC的默认端口5900。

2. frpc配置(即需要远程访问的计算机,本文以windows计算机为例):

点此下载与服务端对应的frp版本

将frp压缩包解压后修改frps.ini文件

[common]server_addr = your_server_ip#VPS服务器IPserver_port = 7000 [range:VNC]type = tcplocal_ip = 127.0.0.1local_port = 5900#5900是VNC的默认端口remote_port = 5900

由于frp目前没有图形化界面,所以我们不能直接点击 frpc.exe 运行程序,而是要打开 Windows 的命令行运行。

#开启命令行窗口CTRL + R ——> cmd#前往frp下载目录cd C:\Users\john\Desktop\工具\frp_0.17.0_windows_amd64#启动frpfrpc.exe -c frpc.ini

接下来会出现上述提示,表示连接成功,不要关闭这个窗口,否则 frp 就退出了。

在这里对两个最为常见的frp启动报错进行说明:

“login to server failed: EOF”

这个报错常常是因为服务端与客户端frp版本号不一致导致的。

“login to server failed: broken pipe broken pipe”

这个报错常常是由于frpc.ini配置错误导致的

计算机不要忘记放行5900端口

3. frp Windows 客户端的的开机自启:

Frp 成功连接后,我们遇到了两个问题,其一,每次开机Frp没有实现自启,需要手动输入命令开启,过于繁琐;其二,我们不想一直看到黑色窗口,希望能够后台执行。

本文主要采用vbs方式实现上述功能,具体操作方法如下:

(1) 创建txt文件并打开
(2) 在txt文件中写入:

Set ws = CreateObject("Wscript.Shell") ws.run "cmd /c C:\Users\john\Desktop\工具\frp_0.17.0_windows_amd64\frpc.exe -c C:\Users\john\Desktop\工具\frp_0.17.0_windows_amd64\frpc.ini",vbhide

其中“ cmd /c ”后写入的 frpc.exe 和 frpc.ini 的绝对路径。

(3) 另存为——>更改后缀为vbs——>保存类型改为“所有文件”——>保存
(4) 打开 Windows 的开始菜单——所有程序——启动——右键点击启动——打开所有用户,这样就打开启动文件夹了。
(5) 将 frpc.vbs 右键拖动到启动文件夹,在当前位置创建快捷方式。

经过以上设置,以后每次开机 frpc 就会自动启动了。

有部分机型用户反映,vbs不能在登陆windows前运行,这也意味着对于设置了开机账号密码的用户来说,如果想要实现全自动化操控计算机(远程开机 —— 远程登录 —— 远程操控),在远程登录环节将会受阻,自然也就无法使用VNC远程控制主机了。这显然是不妥的,因此在这里给两个亲测有效的解决方案:

方法一:
打开组策略(GPEDIT.MSC)定位到计算机配置—Windows设置—脚本(启动/关机)在右侧双击启动在”启动属性”中添加需要运行的vbs
方法二:
打开 任务计划工具(控制面板 ——> 管理工具 ——> 任务计划程序)在创建任务过程中,触发器(计划)选择“计算机启动时(在系统启动时)”

二、远程访问(以移动端为例)

在计算机开启VNC-Server环境下,移动端打开VNC-Viewer——>点击右上角 + ——>输入VPS服务器IP:5900——>自定义连接名称——>Save
首次登陆要求输入用户名和密码(即计算机的开机用户名和密码),为方便下次远程,可以选择记住密码,最后点击Continue
此时远程访问开启,计算机端也会收到如下提示。

至此,外网环境下基于FRP、VNC技术,实现了内网穿透,成功远程访问内网计算机。

能够远程访问计算机了,难道不再进一步实现远程开机?点此查看!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。