配置内网穿透

一.内网穿透(作为teamviewer的替代,teamviewer响应过慢)

1.于阿里云购买服务器(学生专属)

云服务器ECS即可

2.在云命令行创建新用户

useradd -d /home/wangyida(cxm) -m wangyida(cxm)
passwd laowang(!cxm4545945)

3.开启密钥登陆

vi /etc/ssh/sshd_config
#输入 i 进入编辑模式,将PasswordAuthentication的值改为yes,然后esc + shift + :  +wq 保存
#输入如下命令,重启ssh服务,就可以使用账号密码连接服务器了
sudo service sshd restart

4.授予该用户root权限

(1)查看/etc/sudoers权限,可以看到当前权限为440
$ ls -all /etc/sudoers
-r–r----- 1 root root 744 6月 8 10:29 /etc/sudoers
(2)更改权限为777
$chmod 777 /etc/sudoers
(3)编辑/etc/sudoers
$vi /etc/sudoers
(4)在root ALL=(ALL:ALL) ALL 下面添加一行
wangyida ALL=(ALL)ALL
然后保存退出。
(5)把/etc/sudoers权限改回440
$chmod 440 /etc/sudoers
(6)操作完成,切换到wangyida用户测试一下

5.配置frp服务端

下载地址:https://github.com/fatedier/frp/releases
wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz
tar -zxvf frp_0.33.0_linux_amd64.tar.gz
mv frp_0.33.0_linux_amd64 frp

修改frps.ini
[common]
bind_port =7000
token = password2020
[web]
listen_port =6064

在阿里云平台实例->更多->网络和安全组->安全组配置->配置规则->手动添加
在这里插入图片描述

在这里插入图片描述

使frp在后台运行
在/lib/systemd/system/下创建frps.service 内容如下
[Unit]
Description=frps service
After=network.target syslog.target
Wants=network.target

[Service]
Type=simple
ExecStart=/home/wangyida(cxm)/frp/frps -c /home/wangyida(cxm)/frp/frps.ini

[Install]
WantedBy=multi-user.target
设置启动
systemctl start frps #输入的密码为根目录密码即为服务器登陆密码
设置随系统自动启动
systemctl enable frps

6.配置frp客户端

下载地址:https://github.com/fatedier/frp/releases
tar -zxvf frp_0.33.0_linux_amd64.tar.gz

mv frp_0.33.0_linux_amd64 frp
修改frpc.ini
[common]
server_addr = 121.199.4.67
server_port = 7000
token = password2020

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

[web]
type = tcp
local_port = 8089
local_ip = 127.0.0.1
remote_port = 6064

启动
cd frp
./ frpc -c frpc.ini

#需要在服务端也配置上自动开机启动,方法同5

7.测试

ssh -oPort=6000 wangyida@121.199.4.67

<think>嗯,用户让我介绍一下ngrok配置内网穿透。首先,我得回想一下自己对ngrok的了解。ngrok是一个内网穿透工具,允许将本地服务器暴露到公网,方便测试和开发。用户可能需要这个来让外部访问他们的本地服务,比如Web应用或者API。 首先,我需要解释什么是ngrok,它的用途和优势。然后,分步骤说明如何配置。记得用户可能需要具体的操作步骤,所以得详细一点,比如安装、基本命令、配置验证等。另外,用户可能关心安全性,所以得提到身份验证和域名管理。 还要考虑用户可能的场景,比如开发测试、临时演示或者需要持久化配置的情况。是否需要区分免费版和付费版的功能?比如免费版每次重启会变域名,而付费可以固定。这点可能对用户很重要,得提到。 用户的问题是用中文回答,所以语言要准确,避免专业术语过多,或者适当解释。比如“内网穿透”可能需要简单说明,让不太懂技术的用户也能理解。 可能还要给出常见问题,比如连接问题、配置错误,以及如何检查服务是否运行。此外,示例部分应该具体,比如运行一个本地服务并暴露端口,用户可以直接复制命令测试。 有没有遗漏的步骤?比如安装部分,是否需要说明不同操作系统的安装方法?用户可能用的是Windows、Mac或Linux,需要分别提及。或者给出官网链接让用户自行下载。 还要注意安全提示,比如ngrok暴露服务可能带来的风险,提醒用户仅在测试时使用,并保护authtoken。避免用户不小心暴露敏感数据。 总结一下,结构应该是:介绍ngrok,安装步骤,基本使用,高级配置,安全注意事项,常见问题。每个部分简明扼要,步骤清晰,示例实用。这样用户能快速上手,解决问题。</think>好的,以下是对 **ngrok 配置内网穿透**的详细介绍,分步骤说明其原理和使用方法: --- ### **什么是 ngrok?** Ngrok 是一个轻量级工具,可将本地内网服务(如 Web 服务器、数据库、SSH 等)通过公网 URL 暴露到互联网,实现内网穿透。它通过建立一个安全的隧道,将外部请求转发到本地端口,常用于开发调试、临时演示或测试场景。 --- ### **核心优势** 1. **无需公网 IP/服务器**:直接通过 ngrok 的服务器中转流量。 2. **支持多种协议**:HTTP/HTTPS、TCP、UDP 等。 3. **安全性**:默认使用 HTTPS 加密,支持密码保护和域名白名单。 4. **跨平台**:支持 Windows、macOS、Linux。 --- ### **配置步骤** #### 1. **安装 ngrok** - **官网下载**:访问 [ngrok 官网](https://ngrok.com/),注册账号并下载对应系统的客户端。 - **命令行安装**(Linux/macOS): ```bash # 使用 curl 安装(需替换为你的下载链接) curl -s https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip -o ngrok.zip unzip ngrok.zip ``` #### 2. **身份验证** - 登录 ngrok 官网,获取 **Authtoken**(在 Dashboard 的 `Your Authtoken` 页面)。 - 在终端运行命令绑定 token: ```bash ./ngrok authtoken <你的Authtoken> ``` #### 3. **启动内网穿透** - 假设本地运行了一个 Web 服务(如 `localhost:8080`),通过以下命令暴露到公网: ```bash # 暴露 HTTP 服务(默认端口 80) ./ngrok http 8080 # 暴露 TCP 服务(如 SSH) ./ngrok tcp 22 ``` - 运行后,终端会显示公网 URL(如 `https://abcd1234.ngrok.io`),外部用户可通过此链接访问你的本地服务。 #### 4. **高级配置** - **自定义子域名**(付费功能): ```bash ./ngrok http 8080 -subdomain=myapp ``` 访问地址变为:`https://myapp.ngrok.io` - **密码保护**: ```bash ./ngrok http -auth "用户名:密码" 8080 ``` - **配置持久化**: 编辑 `~/.ngrok2/ngrok.yml` 文件,预设常用参数: ```yaml authtoken: <你的Authtoken> tunnels: webapp: proto: http addr: 8080 auth: "user:pass" ``` --- ### **使用场景** 1. **开发调试**:将本地开发的 API 或网页分享给远程同事。 2. **演示测试**:临时展示项目给客户,无需部署到服务器。 3. **IoT 设备访问**:远程访问树莓派或内网设备。 --- ### **注意事项** 1. **免费版限制**:每次重启会生成新域名,付费版可固定域名。 2. **安全性**:避免暴露敏感服务,必要时设置密码或 IP 白名单。 3. **性能**:免费版流量经过 ngrok 服务器中转,延迟较高。 --- ### **常见问题** - **连接失败**:检查本地服务是否运行,防火墙是否放行端口。 - **域名被占用**:付费用户可尝试更换子域名。 - **查看请求日志**:访问 `http://127.0.0.1:4040` 实时监控流量。 --- 通过以上步骤,你可以快速配置 ngrok 实现内网穿透。如果需要长期稳定使用,建议购买付费计划获取更多功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值