搭建frp内网穿透服务器_内网穿透 无需公网ip

搭建frp内网穿透服务器_内网穿透 无需公网ipfrp实现内网穿透

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

写在前面:国内 腾讯云 和 阿里云服务器 都需要对安全组进行配置才可以访问!

一、云服务器

阿里云服务器(推荐)

初次登录需要密码,这时可通过重置 root 密码解决。

腾讯云服务器

默认会分配一个普通的用户,切换到 root 使用:

su -i
passwd  # 修改 root 账户密码

二、使用 frp 实现内网穿透

官方下载链接:Releases · fatedier/frp,配置流程如下。

1. 上传 frp

将下载好的 frp 压缩包分别传送到 云服务器 和 Linux 服务器(目标代理机器,即我们要代理的那台机器)。其中云服务器作为 frps(frp 服务端),目标代理机器 作为 frpc(frp 客户端)。该压缩包同时包含了 frps & frpc,因此不需要分别下载。

2. 安装

2.1 在 云服务器 上安装

tar -zxvf frp_0.38.0_linux_386.tar.gz -C target_dir   # 解压到指定目录

# 删除无用的文件(客户端)
rm -f frpc* systemd/frpc*

本次实验中没有对文件进行任何额外的操作,如果要自定义 内网穿透服务器 的端口,可以在 frps.ini 文件中进行修改,更多的参数参考 frps_full.ini 文件,实际使用的还是 frps.ini 没有使用 frps_full.ini 配置文件,后面的 frpc 同理。

2.2 在 目标代理机器 上安装

tar -zxvf frp_0.38.0_linux_386.tar.gz -C target_dir  # 解压到指定目录

# 删除无用的文件(服务端)
rm -f frps* systemd/frps*

修改配置文件 frpc.ini(目前只修改 云服务器的地址,其他设置作为后续的改进方案),更多详细配置参考 frpc_full.ini

server_addr = 120.79.173.220

保存退出。

3. 给 云服务器主机 配置 安全组策略

3.1 阿里云

image.png

image.png
修改完成后,重启机器!!!使得配置生效。

3.2 腾讯云

腾讯云-控制台

image.png

以上添加的安全组策略无法应用到实例上,只能使用以下方法针对实例进行设置。服务器 – 轻量应用服务器 – 控制台

在这里插入图片描述
在这里插入图片描述

修改后无需重启即可生效!

注意

  1. 默认会创建一个 lighthouse 普通用户,用于一键登录,如果不需要该用户,直接在 登录 选项栏里选择关闭一键登录功能即可。
    在这里插入图片描述

  2. 如果要修改账户密码,可以在 服务器 – 轻量应用服务器 – 控制台(更多–>重置密码) 进行修改!
    在这里插入图片描述
    如果要切换到 root 用户,只需要运行以下命令即可,

sudo -i/s  # -i 或 -s 都可以

4. 运行测试(开机自启动,后台运行等作为升级方案放在后面)

  1. 在服务端(frps)启动
./frps -c frps.ini

在这里插入图片描述

  1. 在客户端(frpc)启动
./frpc -c frpc.ini

在这里插入图片描述

此时 服务端 frps 的响应为,
在这里插入图片描述

优化升级

(1)服务端

修改 frps.service

[Unit]
Description=Frp Server Service
After=network.target

[Service]
Type=simple
# 如果只有单个 root 用户,必须指定为 root,否则使用默认的 nobody 即可
# User=nobody 报错:code=exited, status=203/EXEC frp
User=root
Restart=on-failure
RestartSec=5s
# 路径修改
ExecStart=/root/env/frp/frps -c /root/env/frp/frps.ini
LimitNOFILE=1048576

[Install]
WantedBy=multi-user.target

参考链接:frp服务器端程序frps自启动出错-Bluesky’s blog 非常感谢这个作者!!!

将修改后的文件添加到系统文件中(注册服务?):

sudo cp systemd/frps.service /etc/systemd/system/
sudo systemctl start frps.service
systemctl status frps.service
sudo systemctl enable frps.service  # 开机自启动

ps -ef | grep frps

删除 frp 服务(比如安装文件出错,要重新安装):

systemctl stop frps.service
systemctl disable frps.service
rm -f /etc/systemd/system/frps.service
systemctl daemon-reload
systemctl reset-failed
systemctl status frps.service

参考链接:CentOS使用systemctl彻底删除服务 | 瑞瑞哥的博客


(2)客户端

frpc.service 配置文件修改,

[Unit]
Description=Frp Client Service
After=network.target

[Service]
Type=simple
# 由于有多个用户,因此不用指定唯一的用户名
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/home/guest/xxx/env/frp/frpc -c /home/guest/xxx/env/frp/frpc.ini
ExecReload=/home/guest/xxx/env/frp/frpc reload -c /home/guest/xxx/env/frp/frpc.ini
LimitNOFILE=1048576

[Install]
WantedBy=multi-user.target

安装注册 frpc 服务,随着系统启动同时启动该服务,运行其中的脚本文件,

sudo cp systemd/frpc.service /etc/systemd/system/
sudo systemctl start frpc.service
systemctl status frpc.service
sudo systemctl enable frpc.service  # 开机自启动

ps -ef | grep frpc

删除 frpc 服务,

sudo systemctl stop frpc.service
sudo systemctl disable frpc.service
sudo rm -f /etc/systemd/system/frpc.service
sudo systemctl daemon-reload
sudo systemctl reset-failed
systemctl status frpc.service

连接测试

ssh 服务器用户名@frps服务器地址 -p 6000

在这里插入图片描述

小问题:连接上之后长时间不操作导致断连的解决办法。

#.1 客户端修改

~/.ssh/config 添加,

Host *
    ServerAliveInterval 60
    ServerAliveCountMax 3

#.2 服务端修改(不推荐)

这里就不介绍了,需要的直接看第一个链接。

参考链接

优化(注册服务,开机自启动…)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194541.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 八皇后问题详解(四种解法)

    八皇后问题详解(四种解法)如果你去百度百科八皇后这个问题,你会发现人家也是历史上有头有脸的一个问题,最后一句“计算机发明后就有一万种方式解决这个问题”读起来也让程序猿们很快活。闲话少说,开始阐述我的思路:最无脑的解法一定是八个for遍历,浪费了太多的计算资源在各种无用功上面,我们稍微构思一下:首先如何决定下一个皇后能不能放这里可以有两种思路,第一种是尝试维护一个8*8的二维矩阵,每次找到一个空位放下一个皇后就把对应行列对

    2022年6月30日
    22
  • java使用多线程导出excel「建议收藏」

    java使用多线程导出excel「建议收藏」前言在一个业务中,需要将数据库的一张日志表导出到excel中做统计分析归类,由于单表的数据量特别大,发现在最终导出excel的时候,由于数量太大,导出速度特别慢,想了一些办法,不管使用何种API,单线程始终是操作的瓶颈,因此最终考虑使用多线程进行改善总体思路:1、数据总量分段2、每个线程处理不同分段的数据3、提交线程池下面来看具体的代码,为测试方便,这里直接使用一个测试接口进行调用,…

    2022年5月5日
    820
  • SAE J1939学习笔记(一)「建议收藏」

    SAE J1939学习笔记(一)「建议收藏」1.总线布局2.差分信号线J1939通讯传输的是一系列的“1”或“0”。 1代表在J1939(+)与J1939(-)之间是高电压差。0代表在J1939(+)与J1939(-)之间是低电压差250K波特率时,在J1939高、低导线间的电压从0到1每秒变化250K次是可能的。用一个高频示波器可以看到此电压变化。3.ISO标准对应–Layer…

    2022年5月7日
    44
  • java写入文件

    java写入文件

    2021年7月16日
    70
  • JsonArray用法(二)

    JsonArray用法(二)一 json 格式字符串在 java 中转成 JSONArray 或者 JSONObject 一 java 处理 json 格式字符串首先转成 JSONArray 或 JSONObject 类型 1 如果是 JSONArray 格式 最外层是中括号 表示数组 JSONArrayarr JSONArray parseArray text 注 text 必须是 json 格式的

    2025年7月21日
    4
  • 如何进入tty_ffmpeg编译

    如何进入tty_ffmpeg编译1.我是用的Ubuntu11.102.必须装的软件,否则后面编译会出错的:①ncurses-devel必须的②texinfo(就是缺少makeinfo命令不然编译glibc会出错,可以看到出现缺少makeinfo命令的提示)③gawk(不是mawk,不然编译glibc会出错)错误如下:mawk: scripts/gen-sorted.awk:line19:re

    2022年8月12日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号