Loading

从零开始打造远程开发环境

背景

有一台处于内网的 Ubuntu Desktop 远程开发机,需要通过 VS code、VNC viewer 等工具连接。

为 root 指定密码

第一次使用 su 命令前需要为 root 指定密码。

sudo password root

安装 SSH server

apt update && apt install openssh-server

VS Code 远程登陆

参考:https://juejin.cn/post/6867728457904685069

VNC 远程登陆

参考:https://blog.csdn.net/lucky7213/article/details/107008246

内网穿透

开源项目 frp 提供了内网穿透解决方案。docker 版本更易用。

下面以 SSH 场景为例,借助一台具有公网 IP 的服务器,可以不用再挂 VPN 访问处于内网的服务器。

角色:

A:内网服务器

B:公网服务器

C:个人电脑

在 B 新建/etc/frp/frps.ini,内容如下:

[common]
bind_port = 7000

在 A 新建 /etc/frp/frpc.ini,内容如下:

[common]
server_addr = X.X.X.X
server_port = 7000
tls_enable = true

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

B 运行:

docker run --restart=always --network host -d -v /etc/frp/frps.ini:/etc/frp/frps.ini --name frps snowdreamtech/frps

A 运行:

docker run --restart=always --network host -d -v /etc/frp/frpc.ini:/etc/frp/frpc.ini --name frpc snowdreamtech/frpc

然后,可以在 C 上运行

ssh -oPort=6000 user_in_A@addr_of_B

将 B 作为跳板访问 A。

需要注意的是,一个 frps 对应一个 frpc,多个主机内网穿透需求需要起多个 frps 容器,并注意分配不同端口。

posted @ 2022-02-12 23:07  Lambyte  阅读(170)  评论(0)    收藏  举报