frp内网穿透

简介: frp内网穿透

frp内网穿透

此教程可用于配置内网Linux服务器,这样就可以不在同一个局域网内也能远程访问到服务器。

一、公网IP

买一个云服务器(腾讯云或者阿里云均可)。会分配一个公网ip。

二、frp工具的使用

在云服务器和内网机器下载对应的安装包:

wget https://github.com/fatedier/frp/releases/download/v0.34.3/frp_0.34.3_linux_amd64.tar.gz

解压文件 tar -zxvf frp_0.34.3_linux_amd64.tar.gz

在云服务器上部署 frps,修改 frps.ini 文件:

[common]
bind_port = 7000

在我们的内网机器上部署 frpc,修改 frpc.ini 文件,x.x.x.x修改为 frps 所在云服务器的公网 IP:

[common]
server_addr = x.x.x.x
server_port = 7000

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

local_iplocal_port 配置为本地需要暴露到公网的服务地址和端口。remote_port 表示在 frp 服务端监听的端口,访问此端口的流量将会被转发到本地服务对应的端口。

注意:云服务器需要开启对应端口!

分别启动 frps 和 frpc。在云服务器上先通过 ./frps -c ./frps.ini 启动服务端,在内网机器上通过 ./frpc -c ./frpc.ini 启动客户端。

  • 通过 SSH 访问内网机器,假设用户名为 test:
    ssh -oPort=6000 test@x.x.x.x
  • frp 会将请求 x.x.x.x:6000 的流量转发到内网机器的 22 端口。

问题:

一、安装screen

yum install screen

安装成功后,输入screen会切换到另一个窗口,可以通过ctrl+a+d切换回原来的命令行界面
创建screen会话
重新读取screen会话

通过下面命令查询正在运行中的screen会话列表信息。

screen -ls

1、通过screen名字读取。

screen -r screen名字或者会话ID

如果存在多个同名名的会在会话名之前有会话ID+会话名称,如4078.test;

可以通过screen -r 4078.test或者screen -r 4078获取指定会话

2、关闭screen会话

若不再需要当前的screen会话,可以在当前的screen会话中执行 exit,提示[screen is terminating]表示已经成功关闭screen会话(不会保留在内存中),如果需要,请重建。
3、screen的快捷键

如之前讲到的Ctrl + a + d 可以暂时离开当前的screen会话,同时screen还提供其它的快捷键。

Ctrl + a + c :在当前screen会话中创建一个子会话

Ctrl + a + p :上一个子会话

Ctrl + a + n :下一个子会话

二、ubuntu如何开启22端口支持ssh访问

1.查看本机IP

ifconfig

执行后如果提示服务不存在,则需要下载该工具sudo apt install net-tools

2查看端口22是否被占用netstat -nltplgrep 22

-n不以进程的服务名称,以编号port number显示-t列出tcp网络封包的信息

-l列出目前正在网络监听listen服务-p列出该网络服务的进程

如果发现没有22端口进程,则执行如下命令:sudo apt-get install openssh-server

sudo apt-get install ufw

sudo ufw enable

sudo ufw allow 22用xshell连接是否成功

三、frp服务自启动

进入frp目录,复制文件

cp frps /usr/local/bin/frps

mkdir /etc/frp

cp frps.ini /etc/frp/frps.ini

创建frps.service服务:vim /lib/systemd/system/frps.service

[Unit]
Description=frpc daemon
After=syslog.target  network.target
Wants=network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/frps -c /etc/frp/frps.ini
Restart=always
RestartSec=1min
ExecStop=/usr/bin/killall frps

[Install]
WantedBy=multi-user.target

设置开机自启动:systemctl enable frps

开启服务:systemctl start frps

查看状态:systemctl status frps

active(running)则表示启动成功

四、多个ssh配置

在另一台机器进行下载frp,只需要修改frpc.ini文件,修改格式如下:

[common]
server_addr = x.x.x.x
server_port = 7000 

[ssh001] # 不能重复
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6001 # 不能重复

frpc命令启动即可。

更多内容请关注我的博客:bgemini.com

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
存储 弹性计算 数据库
阿里云权益中心,助力学生、开发者、企业用云上云无忧
阿里云权益中心支持学生、开发者和企业快速上云,提供“99计划”惠及中小企业和开发者,包括云产品试用、精选优惠和上云扶持。高校用户可通过“云工开物”计划享专属优惠。企业用户可获上云抵扣、1对1服务及成长权益。多种云产品免费试用,降低上云门槛。
阿里云权益中心,助力学生、开发者、企业用云上云无忧
|
Linux
CentOS7.9服务器一键脚本部署FRP内网穿透服务端与客户端
CentOS7.9服务器一键脚本部署FRP内网穿透服务端与客户端
1354 1
|
开发工具
frp-免费内网穿透
frp-免费内网穿透
1975 0
|
安全 网络协议 Linux
内网穿透工具Frp
【10月更文挑战第6天】内网穿透工具Frp
1418 67
|
网络协议 Linux 网络安全
如何用阿里云实现内网穿透?如何在外网访问家里内网设备?
使用NPS自建内网穿透服务器教程,带WEB管理
36243 12
|
12月前
|
安全 数据安全/隐私保护
frp http转发
通过FRP实现HTTP转发,可以方便地将内网服务暴露到外网,解决了内网穿透问题。在实际应用中,通过合理配置FRP和增强安全措施,可以实现稳定、高效和安全的内网服务外网访问。
649 12
|
弹性计算 网络协议 Linux
阿里云主机构建FRP内网穿透家用服务器避坑指南
详述了利用FRP工具搭建内网穿透的流程,包括阿里云ECS的配置、家用服务器的准备、FRP工具的下载与配置,以及通过SSH远程访问本地服务器的解决策略,确保了内外网间的稳定连接。
5398 1
阿里云主机构建FRP内网穿透家用服务器避坑指南
|
运维 监控 网络安全
小米路由器R2D开启SSH+Frp内网穿透,让爸妈在老家轻松追剧
小米路由器R2D开启SSH+Frp内网穿透,让爸妈在老家轻松追剧
1207 0
|
网络协议 Ubuntu Linux
frp内网穿透
frp内网穿透
|
数据建模 Docker Windows
内网穿透frp配置
内网穿透frp配置
625 0