校外网络连接校园网内的linux服务器方法(使用frp实现内网穿透)

简介: 平常在校园里连接校内实验室的linux服务器可以直接使用ssh直接链接私有ip地址,一旦本地移动到了校园网外部(如:使用手机流量wifi,或着暑假回家使用家庭wifi)便无法在使用ssh连接校内的服务器。本文提供一个实现校外也能访问校内服务器的方法

一:需要准备一台具有公网IP的服务器(称外网服务器),校内linux服务器(称内网服务器),本地端。

这里的外网服务器便使用的是阿里云提供的免费服务器。

二:过程

首先需要在外网服务器上下载frp:(引号内内容为终端命令)

1."cd /home/用户名"进入相应用户目录

2."mkdir ~/frp"建立frp文件夹然后"cd frp"

2."wget https://github.com/fatedier/frp/releases/download/v0.38.0/frp_0.38.0_linux_amd64.tar.gz"下载frp

4."tar -zxvf frp_0.38.0_linux_amd64.tar.gz"解压,"cd frp_0.38.0_linux_amd64"

5.在内网服务器上重复1-4步.

6."vim frps.ini",在外网服务器上修改frps的配置文件

[common]
# frp监听的端口
bind_port = 7000
# 授权码
token = 12345678
# frp管理后台端口,可以自定
dashboard_port = 7500
# frp管理后台用户名和密码,后面登录浏览器会用到
dashboard_user = admin
dashboard_pwd = password
enable_prometheus = true

7.进入阿里云服务器控制台

image.png

image.pngimage.png

添加如下规则

image.png

8.将frps相关文件复制到linux系统对应文件夹下,使用systemctl start frps命令启动frps服务

cd ~/frp/frp_0.38.0_linux_amd64/
sudo mkdir -p /etc/frp
sudo cp frps.ini /etc/frp
sudo cp frps /usr/bin
sudo cp systemd/frps.service /usr/lib/systemd/system/
sudo systemctl enable frps
sudo systemctl start frps

接着打开浏览器输入"外网服务器IP地址:7500",可进入frps服务后台

image.png

此处输入frps.ini里面配置的dashboard相关内容

image.png

成功进入后台

9.进入内网服务器的frps解压地址,"vim frps.ini"

# 服务端
[common]
server_addr = 外网服务器ip
server_port = 7000
token = 12345678 #必须和外网服务器的一致
# ssh
[ssh7501]
type = tcp # 不要修改
local_ip = 127.0.0.1 # 不要修改
local_port = 22 # 不要修改
remote_port = 7501  #这个端口号可以自定义,用于指定内网服务器编号

10.同第7点操作,开放7501端口

11.将frps相关文件复制到内网服务器linux系统的对应位置,使用"sudo systemctl start frpc"启动frps服务,并让内网服务器使用frps连接外网服务器

cd ~/frp/frp_0.38.0_linux_amd64/
sudo mkdir -p /etc/frp
sudo cp frpc.ini /etc/frp
sudo cp frpc /usr/bin
sudo mkdir /usr/lib/systemd/system/
sudo cp systemd/frpc.service /usr/lib/systemd/system/
sudo systemctl enable frpc
# Created symlink from /etc/systemd/system/multi-user.target.wants/frpc.service to /usr/lib/systemd/system/frpc.service.
sudo systemctl start frpc

如下图便连接成功

image.png

三、使用相关

现在位于校外的本地端需要修改ssh使用方法,例如"ssh -p 7501 root@外网ip",如此便可连接内网服务器了

实测此种办法可以实现ssh无密码登录,vscode的remoter server功能,pycharm remotessh解释器功能都可以实现。只不        过应当使用-p命令指定端口,而这个被指定的端口便唯一确定了一台内网服务器

目录
相关文章
|
7天前
|
安全 算法 Linux
Linux 服务器还有漏洞?建议使用 OpenVAS 日常检查!
在数字化时代,Linux 服务器的安全至关重要。OpenVAS 是一款优秀的开源漏洞扫描工具,可以帮助及时发现并修复服务器中的安全隐患。本文将介绍 OpenVAS 的主要功能、使用方法及应对漏洞的措施,帮助用户加强服务器安全管理,确保企业数字化安全。
23 7
|
10天前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
13天前
|
缓存 Unix Linux
服务器linux!!!
本文介绍了计算机的演变历史、硬件基础知识及服务器相关知识。从电子管时代的ENIAC到冯-诺伊曼架构,再到现代计算机系统组成,详细讲解了计算机的发展历程。此外,文章还介绍了服务器的分类、品牌、硬件组成以及IDC机房的上架流程,为读者提供了全面的技术背景知识。
32 0
服务器linux!!!
|
15天前
|
人工智能 安全 Linux
|
3天前
|
网络协议 安全 Linux
Linux 上设置自己的公共时间服务器
Linux 上设置自己的公共时间服务器
12 0
|
3天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
18 3
|
3天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
15 2
|
11天前
|
缓存 监控 Linux
|
14天前
|
Linux Shell 数据安全/隐私保护
|
15天前
|
域名解析 网络协议 安全