nginx 和 frp共用80端口教程

之前用frp做内网穿透,把内网的服务器开放到外网。

如果是http服务的话,80端口的做法是使用二级域名xxx做个A记录指一台没有nginx 之类的服务器IP,然后用浏览器打开xxx.example.com就打开了。其他端口是在frpc.ini里指定的,就加个端口号如xxx.example.com:1234就打开了,这种情况用于外网服务器已经有nginx在运行占用了80端口, 这时如果不想用端口号来打开,就要做三级域名解析,同时nginx做反向代理,把这个1234端口代理到80.

其实只要给 nginx 增加一个简单的配置,就可以将某个域名的流量转发给 frp 了,还可以通过泛解析来映射不同的网站。

配置 nginx:

server {
    listen 80;
    server_name *.frp.example.com;
    location / {
        proxy_pass http://127.0.0.1:8081;
        proxy_set_header    Host            $host:80;
        proxy_set_header    X-Real-IP       $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_hide_header   X-Powered-By;
    }
}

上面这段写入/etc/nginx/sites-avaliable/default的最后面,监听*.frp.example.com, 并转发给127.0.0.8081, 接下来只要将frp默认监听 80 端口改成 8081 端口就好了.

配置 frp 服务端:

[common]
bind_port = 8787
vhost_http_port = 8081
token = passwd
max_pool_count = 100
subdomain_host = frp.example.com

[xxx]
type = http
subdomain = xxx

重点在于将 vhost_http_port 设为 8081, 还可以在common下加上dashboard相关的端口,用户,密码等信息。

配置 frp 客户端:

[common]
server_addr = exampel.com 
server_port = 8787 
token = passwd
login_fail_exit = false 

[xxx]
type = http
local_port = 80
subdomain = xxx

域名设置:

1, 增加二级域名frp的A解析,到外网服务器IP.

  1. 增加三级域名泛解析*.frp的CNAME解析,到frp.example.com.

这时要做完这2个域名解析就可以用xxx.frp.example.com访问了。

参考:http://www.miss.cat/frp-use-80-port-with-nginx/

https://blog.csdn.net/qq_36560161/article/details/79646523

如果是ssh,frpc如下面配置的话,还是一样的,跟http上面讲的东西没有关系:

[common]
server_addr = example.com 
server_port = 8787 
token = passwd
login_fail_exit = false 

[ssh-xxx]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 5000

还是这样登录:

ssh user@example.com -p5000

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/server/1002.html

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 2018年10月16日 下午9:19
如何为多个PHP-FPM容器构建单一的Nginx Docker镜像教程-linux运维教程
下一篇 2018年10月16日 下午9:19

相关推荐

  • 最新改版腾讯云轻量搭建Moltbot(原Clawdbot)一建傻瓜式操作部署

    Moltbot(原Clawdbot)并不是市场里第一个“能干活”的 AI Agent。但偏偏是它在 Claude Cowork 发布短短两三周之后,突然再次点燃大家的热情。深究其引爆技术圈的原因,可能不仅是因为它的代码100%由AI完成,更可能是它超出人们预期的“人机协作方式”:Clawdbot 运行在使用者自己的环境中(比如本地电脑、个人服务器等等),并且…

    2026年1月28日
    69700
  • 用户与组管理命令详解-linux教程

    如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 命令 参数 说明————————————————…

    服务器运维 2019年1月17日
    2.5K00
  • linux下中文乱码问题解决方案教程-学派吧

    如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624商祺云-阿里代理、景安代理、西部代理 刚开始学习和使用Linux系统的时候,大家都会遇到一个问题,那就是终端输入命令回显的时候中文显示乱码。其实乱码这个问题是由系统集成的字符集引起的,由于不能正确的使用相对应字符的字符集,因此OS不能识别出文字导致了乱码。如果你需要在Linux中…

    2019年1月14日
    4.0K00
  • win2008R2安装server2008 不能打开1433端口的解决方法教程-windows教程-学派吧

    这篇文章主要介绍了win2008 r2安装SQL SERVER 2008 R2 不能打开1433端口设置方法,需要的朋友可以参考下 服务器:WINDOWS SERVER 2008 R2 SQL:SQL SERVER 2008 R2 背景:同一个公司同一个局域网 网络可以ping通 但是不能连接服务器数据库 提示错误1326 前期设置: 经过前期设置都不行 t…

    服务器运维 2018年12月2日
    5.5K00
  • 详细解说配置启用NGINX状态页面-linux网络运维

    前言 Nginx是一款免费的开源,高性能,可靠,可扩展且可完全扩展的Web服务器,负载均衡器和反向代理软件。 它有一个简单和易于理解的配置语言。 它还支持多种静态模块(自第一个版本开始就存在于Nginx中)和动态模块 (在1.9.11版本中引入 )。 Nginx中的一个重要模块是ngx_http_stub_status_module模块,它通过“ 状态页面 …

    服务器运维 2018年10月16日
    3.4K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部