frp内网穿透(windows和服务器)

 1.frp下载

https://github.com/fatedier/frp/releases

 windows端可以下载windows版本,服务器和客户端尽量保持版本一致,当前最新版本为0.43.0.

2.外网服务器frp服务端配置

   2.1 使用

mkdir frp


   命令创建一个新的文件夹frp,然后在文件夹下使用命令:

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

  2.2 解压,并进入解压文件夹

1 | tar -zxvf frp_0.32.1_linux_amd64.tar.gz
2 | cd frp_0.32.1_linux_amd64/

  2.3 删掉不必要的客户端文件

1 | rm -rf frpc
2 | rm -rf frpc.ini

  2.4 编辑frps.ini文件
 

vim frps.ini

打开该文件,并将该文件内容修改为:

[common]
# 服务器端监听客户端连接请求的端口
bind_port = 7000
# 服务器端监听http请求的端口
vhost_http_port = 80

保存退出。

2.5 防火墙开启相关端口
开启端口(阿里云等云服务器也需要在安全组加入对应端口)

firewall-cmd --zone=public --add-port=7000/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=45635/tcp --permanent
重启防火墙:systemctl restart firewalld.service

 2.6 启动服务的几种方式
     2.6.1 正常启动

./frps -c ./frps.ini

      2.6.2 使用nohup后台挂起服务

nohup ./frps -c frps.ini > ./log.txt 2>&1 &

日志输出到log.txt

2.6.3 制作一键启动sh脚本
    2.6.3.1 启动脚本start.sh

#! /bin/bash
nohup ./frps -c frps.ini > log.txt 2>&1 &
echo $! >./pid.txt

    2.6.3.2停止脚本stop.sh

#! /bin/bash
PID=$(cat ./pid.txt)
kill -9 $PID

    2.6.3.4 实时日志查看

tail -f ./log.txt

 

4 内网服务器frp客户端配置
    4.1 使用

mkdir frp

命令创建一个新的文件夹frp,然后在文件夹下使用命令:

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

下载frp。

3.2 解压,并进入解压文件夹

tar -zxvf frp_0.32.1_linux_amd64.tar.gz
cd frp_0.32.1_linux_amd64/

3.3 删掉不必要的客户端文件
 

rm -rf frps
rm -rf frps.ini

3.4 编辑frpc.ini文件

vi frpc.ini

打开该文件,并将该文件内容修改为:

[common]
server_addr = xx.xx.xx.xx(外网主机ip)
server_port = 7000

# 内网web服务,监听端口为80
[web]
type = http
local_port = 80
custom_domains = xx.xx.xx.xx(外网主机ip,和server_addr的相同,或者写域名,但是要做dns解析)

# websocket服务,端口假设为45635
[web01]
type = tcp
local_port = 45635
custom_domains = xx.xx.xx.xx(外网主机ip,和server_addr的相同,或者写域名,但是要做dns解析)
remote_port = 45635

保存退出。

3.5 防火墙开启相关端口
开启端口:

firewall-cmd --zone=public --add-port=7000/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=45635/tcp --permanent
重启防火墙:systemctl restart firewalld.service

3.6 启动服务的几种方式
    3.6.1 正常启动

 

./frpc -c ./frpc.ini

    3.6.2 使用nohup后台挂起服务

nohup ./frpc -c frpc.ini > ./log.txt 2>&1 &

   日志输出到log.txt

    3.6.3 制作一键启动sh脚本
    3.6.3.1 启动脚本start.sh

#! /bin/bash
nohup ./frpc -c frpc.ini > log.txt 2>&1 &
echo $! >./pid.txt

   3.6.3.2 停止脚本stop.sh

#! /bin/bash
PID=$(cat ./pid.txt)
kill -9 $PID

   3.6.3.4 实时日志查看

tail -f ./log.txt

 4.部署客户端。
    4.1. 复制frp软件到你指定的位置,路径中最好不要有中文或空格。打开frpc.ini文件,键入:

[common]
server_addr = xx.xx.xx.xx(外网主机ip)
server_port = 7000

# 内网web服务,监听端口为80
[web]
type = http
local_port = 80
custom_domains = xx.xx.xx.xx(外网主机ip,和server_addr的相同,或者写域名,但是要做dns解析)

# websocket服务,端口假设为45635
[web01]
type = tcp
local_port = 45635
custom_domains = xx.xx.xx.xx(外网主机ip,和server_addr的相同,或者写域名,但是要做dns解析)
remote_port = 45635

这两句是用来建立客户端与服务器端的连接用的,端口需与服务器端一致。

4.2、写批处理启动frp
在frp程序目录下,新建start.bat文件,录入:frp内网穿透(windows和服务器)_第1张图片

 

你可能感兴趣的:(服务器,windows,linux)