美文网首页
CentOS7 自动部署脚本实现内网穿透服务器

CentOS7 自动部署脚本实现内网穿透服务器

作者: 往后余生9375 | 来源:发表于2020-11-10 14:27 被阅读0次

脚本

frp.sh

#!/bin/bash
# -*- coding: UTF-8 -*-
#############################################
#  作者:Dongzp
#  功能:自动化部署frp服务器实现内网穿透
#  兼容:适用于所有CentOS 7
#  参考:https://blog.csdn.net/qq_27229113/article/details/105118938
#  Github:https://github.com/fatedier/frp
#############################################


# 下载frps并安装
install_frps(){
    wget https://myfilecdn.oss-cn-shenzhen.aliyuncs.com/frps/frp_0.34.1_linux_amd64.tar.gz
    tar -xvf frp_0.34.1_linux_amd64.tar.gz -C /usr/local/
    rm -rf frp_0.34.1_linux_amd64.tar.gz
    cd /usr/local/
    mv frp_0.34.1_linux_amd64 frp
    cd frp
    # 删除客户端使用的配置文件 服务器不需要
    rm -f frpc frpc.ini LICENSE frpc_full.ini frps.ini frpcs_full.ini
    cd systemd
    # 删除客户端服务
    rm -rf frpc.service frpc@.service
    cd ../
    # 下载配置文件
    wget https://myfilecdn.oss-cn-shenzhen.aliyuncs.com/frps/frps.ini
    chmod 777 frps.ini
    echo "frp服务器安装完成,版本:0.34.1,为了使用请修改frps.ini里面的最后一行。填入您当前服务器的域名"
    
}

# 卸载frps
uninstall_frps(){
    rm -rf /usr/local/frp
    echo "frp服务器卸载完成"
}

# 启动服务
run_frps(){
    cd /usr/local/frp
    pid=`ps -ef | grep frps | grep -v "grep"| awk -F " " '{print $2}'`

    if [ $pid ] ; then
       kill -9 $pid
    fi
    echo "启动服务成功"
    nohup ./frps -c ./frps.ini &
}

# 杀死服务 
kill_frps(){
    pid=`ps -ef | grep frps | grep -v "grep"| awk -F " " '{print $2}'`

    if [ $pid ] ; then
       kill -9 $pid
       echo "关闭服务成功"
    fi
}

echo "1、安装frps服务端"
echo "2、卸载frps服务端"
echo "3、启动frps服务端"
echo "4、关闭frps服务端"

read num
case "$num" in
    [1] )
    install_frps
    ;;
    [2] )
        uninstall_frps
    ;;
    [3] )
    run_frps
    ;;
    [4] )
        kill_frps
    ;;
    *) echo "选择错误,退出";;
esac

客户端配置

[common]
server_addr = 172.16.100.100    //服务器地址
server_port = 7000              //服务器绑定端口
token = 12345678

# 通过 SSH 访问内网机器,外网通过6000可以访问22端口
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

# 通过自定义域名访问内网的 Web 服务,服务器已设置虚拟主机端口7500
[web]
type = http
local_port = 80
custom_domains = www.yourdomain.com

[web2]
type = http
local_port = 8080
custom_domains = www.yourdomain2.com

# 转发 DNS 查询请求
[dns]
type = udp
local_ip = 8.8.8.8
local_port = 53
remote_port = 6000

# 转发 Unix 域套接字
[unix_domain_socket]
type = tcp
remote_port = 6000
plugin = unix_domain_socket
plugin_unix_path = /var/run/docker.sock

# 对外提供简单的文件访问服务
[test_static_file]
type = tcp
remote_port = 6000
plugin = static_file
# 要对外暴露的文件目录
plugin_local_path = /tmp/file
# 用户访问 URL 中会被去除的前缀,保留的内容即为要访问的文件路径
plugin_strip_prefix = static
plugin_http_user = abc
plugin_http_passwd = abc

# 为本地 HTTP 服务启用 HTTPS
[test_htts2http]
type = https
custom_domains = test.yourdomain.com

plugin = https2http
plugin_local_addr = 127.0.0.1:80

# HTTPS 证书相关的配置
plugin_crt_path = ./server.crt
plugin_key_path = ./server.key
plugin_host_header_rewrite = 127.0.0.1
plugin_header_X-From-Where = frp

# 安全地暴露内网服务
[secret_ssh]
type = stcp
# 只有 sk 一致的用户才能访问到此服务
sk = abcdefg
local_ip = 127.0.0.1
local_port = 22

控制台

http://你的域名:7500/

注意事项

如果你的服务器对应域名是q.abc.com 你必须新增一个*.q.abc.com到服务器IP下。

客户端打印

frpc -c frpc.ini


image.png

让本地http支持https访问

https://blog.csdn.net/Linuxprobe18/article/details/108821251

相关文章

  • CentOS7 自动部署脚本实现内网穿透服务器

    脚本 frp.sh 客户端配置 控制台 http://你的域名:7500/ 注意事项 如果你的服务器对应域名是q....

  • Springboot实现跨域

    为了实现内网穿透,使用的frp。 请求链路:localhost前端—>云端服务器—>经frp穿透内网到localh...

  • 使用 Jenkins 部署 PHP Laravel 项目

    目标: 通过脚本手动部署项目到远程服务器 使用 GitHub webhook 在分支变更时自动部署 部署脚本 分析...

  • frp内网穿透技术

    目的:为了实现外网访问内网服务器,实现内网服务器的穿透1.准备工作准备一台云服务器,这里使用阿里云服务器。下载fr...

  • 利用反向代理实现内网的ssh连接

    内容实现了再补 参考文章:SSH如何反向代理稳定穿透内网利用ssh反向代理以及autossh实现从外网连接内网服务器

  • 内网端口穿透

    内网端口穿透 内网穿透在实际生活中,我们经常会在内网里部署服务让外网访问内网应用。这里我用的花生壳免费的内网穿透。...

  • git自动部署代码

    git自动部署代码服务器创建裸仓库: 配置自动部署代码的脚本: 权限问题:git:git nginx:www...

  • CentOs7 PXE自动批量部署

    CentOs7 PXE自动批量部署 目录 主服务器信息 环境 PXE工作原理 部署主服务器配置网卡IP配置本地yu...

  • 自建NAS系列04——网络服务

    内网穿透 花生壳 公网服务器与frp 内网穿透 内网穿透就是将自己内网中的服务映射到公网ip,达到公网可访问的目的...

  • 自行制作yum源仓库

    背景 客户服务器为内网机器,centos7系统,且无法与外网连接。需要部署对应的LANMP环境及其它软件 解决思路...

网友评论

      本文标题:CentOS7 自动部署脚本实现内网穿透服务器

      本文链接:https://www.haomeiwen.com/subject/vwhjbktx.html