通过frp实现内网穿透

2019-12-22  本文已影响0人  Jabes

为什么要用内网穿透就不说了,直接记录干货:

1. 准备工作

  1. 家里的ubuntu 18.04服务器
  2. 某云的EC2主机,带有公网IP地址,操作系统为windows 2008 server
  3. 下载frp,地址为:https://github.com/fatedier/frp/release,为EC2主机下载windows版本,家里的ubuntu下载Linux版本

2.安装frp

  1. 对于EC2我需要作为server,他是windows的机器,所以解压到某目录,然后编写frps.ini如下:
    [common]
    bind_port = 7000           #与客户端绑定的进行通信的端口
    vhost_http_port = 6081     #访问客户端web服务自定义的端口号

注意:最好把注释去掉

  1. 启动Server:
    通过CMD进入frp目录,然后运行
frps -c frps.ini
  1. 安装家里ubuntu的客户端
    解压tar.gz到相应的目录,并如下配置:
[common]
server_addr =x.x.x.x    #EC2的公网IP地址
server_port =7000
 
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
 
[web]
type = http
local_port = 8888
custom_domains = x.x.x.x  #EC2的公网IP地址,因为我没有域名就直接用IP地址代替域名了e
  1. 启动客户端
./frpc -c ./frpc.ini

看到客户端和服务端界面有success字样就可以

3,验证SSH登录

我在服务端通过putty,链接x.x.x.x的6000端口就可以实现SSH远程连接家里的ubuntu命令行。

4,启动jupyter

前提是安装jupyter,然后配置jupyter
参考:https://www.jianshu.com/p/2f84e9fddf91
这里因为前面的frp客户端配置了http的端口为8888,这个端口就是我的Jupyter要对外访问的端口

5. 验证HTTP访问jupyter

通过在EC2主机登录http://x.x.x.x:6081就可以实现远程访问家里的Jupyter。这里的6081是服务器配置的vhost_http_port。

5. 家里ubuntu实现自启动jupyter与frp

打开gnome-session-properties
配置jupyter自启动:

jupyter notebook --allow-root

配置frp自启动:

/home/xxx/software/frp_0.30.0_linux_amd64/frpc -c /home/xxx/software/frp_0.30.0_linux_amd64/frpc.ini
上一篇下一篇

猜你喜欢

热点阅读