frp内网穿透-ssh访问

本文介绍了如何使用frp工具进行内网穿透,包括在具有公网IP的服务器上配置frps,内网服务器上配置frpc,并在个人电脑上通过ssh连接内网服务器。强调了frp的安全隐患,推荐使用安全措施以增强服务安全性。

目录

注意

1 具有公网IP的服务器-Server

2 内网服务器-Client

3 个人电脑


注意

其实这种穿透服务存在安全隐患,从整个链路来看,只要知道server的ip和端口,就能攻击内网的服务器。推荐使用安全地暴露内网服务或者点对点内网穿透,这两种穿透方式增加密钥保护,相对安全!

frpc和frps的区别,前者是客户端client,后者为服务器端server

官方 文档

1 具有公网IP的服务器-Server

如阿里云轻量服务器,腾讯云等

  • 下载

    官方网站 Github-fatedier/frp

     # 获取frp
     wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz
     # 解压
     tar zxvf ./frp_0.37.0_linux_amd64.tar.gz
     # 进入该文件夹
     cd frp_0.37.0_linux_amd64/
  • 修改端口

     # 修改端口,这里需要在阿里云服务器防火墙规则开放端口
     vim frps.ini
     # frps.ini
     [common]
     bind_port = 7000
  • 启动

    # 前台启动
    ./frps -c ./frps.ini
    
    # 可以结合systed或者supervisor等进行后台长期运行
    # 不过为安全起见,还是要用的时候再前台启动,不用了就关闭

2 内网服务器-Client

如实验室GPU服务器等

  • 下载

     # 获取frp
     wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz
     # 解压
     tar zxvf ./frp_0.37.0_linux_amd64.tar.gz
     # 进入该文件夹
     cd frp_0.37.0_linux_amd64/
  • 修改端口

     # 修改端口,这里需要在阿里云服务器防火墙规则开放端口
     vim frpc.ini
     # frpc.ini
     [common]
     # 阿里云服务器提供的公网ip
     server_addr = x.x.x.x 
     server_port = 7000
     ​
     [ssh]
     type = tcp
     local_ip = 127.0.0.1
     local_port = 22
     remote_port = 6000
  • 启动

    # 前台启动
    ./frpc -c ./frpc.ini
    
    # 可以结合systed或者supervisor等进行后台长期运行

3 个人电脑

  • 通过ssh远程连接

    # 可以使用vscode远程连接实验室服务器进行代码开发
    ssh 内网服务器主机名@公网ip -p 6000

### 配置FRP进行内网穿透访问SSH服务 为了使用FRP实现内网穿透从而能够通过SSH安全地连接至位于私有网络中的服务器,需分别设置FRP客户端(`frpc`)服务端(`frps`)。 #### 设置FRP服务端(frps) 确保已安装并运行了FRP的服务端部分。通常情况下,在公网上可被访问的一台机器上部署此组件,并指定监听的端口用于接收来自`frpc`的数据转发请求。基本配置如下: ```ini [common] server_addr = 0.0.0.0 server_port = 7000 ``` 上述配置使得FRP服务端侦听所有可用接口上的7000端口[^4]。 #### 编辑FRP客户端(frpc)配置文件 对于希望暴露给外部世界的每项内部资源(本例中为SSH),都需要定义一个新的条目于`frpc.ini`之中。针对SSH服务的具体配置应类似于下面这样: ```ini [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000 ``` 这段代码指定了当有人尝试经由公网IP地址以及所设定的远端端口号(此处设为6000)建立TCP连接时,流量会被重定向到本地环回地址上的标准SSH端口22[^3]。 完成以上两步之后,启动或重启FRP客户端程序使新的配置生效。此时应该可以从互联网任意位置利用命令行工具如OpenSSH发起对目标主机的安全shell会话: ```bash ssh -p 6000 username@public_server_address ``` 这里的`username`代表你在远程Linux系统的用户名;而`public_server_address`则是承载着FRPS实例那台计算机的真实公共IPv4/v6地址或是域名[^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值