搭建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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 报错415怎么解决_服务器请求415

    报错415怎么解决_服务器请求415415错误

    2025年6月19日
    2
  • pycharm 2022.01.21激活码(JetBrains全家桶)2022.03.08

    (pycharm 2022.01.21激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~40…

    2022年4月2日
    84
  • [Network]Wireless and Mobile

    [Network]Wireless and Mobile

    2022年1月22日
    46
  • Centos7 安装yum源

    Centos7 安装yum源参考链接:https://www.cnblogs.com/guanbin-529/p/11980400.html一、安装wget的rpm包:1、下载wget的rpm包:首先去http://mirrors.163.com/centos/7/os/x86_64/Packages/下找到wget的rpm包,复制链接,使用curl命令下载:curlhttp://mirrors.163.com/centos/7/os/x86_64/Packages/wget-1.14-18.el7_6

    2022年6月4日
    192
  • inputstream输出到文件_input type file

    inputstream输出到文件_input type filepackagehtc;/*————FoolishDoger——————2017-9-28————–*/importjava.io.BufferedInputStream;importjava.io.BufferedReader;importjava.io.File;importjava.io.FileInp

    2022年9月26日
    6
  • 优秀的程序员真的不写注释吗?

    优秀的程序员真的不写注释吗?我在很多地方看到这样一个观点,“请停止写注释,因为只有烂的代码才需要注释。”这个观点非常巧妙,它让我想起了孟子的一句话,“杨氏为我,是无君也;墨氏兼爱,是无父也。无父无君,是禽兽也。”动不动就骂别人是“禽兽”,我总觉得有点不妥,这很不符合孟子的浩然之气啊。有些大牛也有孟子这样的觉悟,如果有人要他给自己的代码加上注释,就好像是对他的一种侮辱:“我的代码写得这么优雅,你难道看不懂吗?注释是多余的!”我必须得承认,每个程序员都应该有一颗追求“优雅”的心,力争自己的代码更易阅读和理解——不只是针对机器,还有我

    2022年5月30日
    34

发表回复

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

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