如果觉得样式不好:跳转即可 (md文件复制过来有些样式会不一样)
原文地址:https://www.firstsaofan.top/archives/yun-fu-wu-qi-da-jian-frpdockernginx-zhuan-fa-dao-ben-ji-nas-yi-ji-docker-fu-wu
所有的博客已迁移到新域名,老地址将会在今年6月到期,以后地址都不会变了。长期维护。(www.firstsaofan.top)
购买香港服务器搭建prc
野草云:https://www.yecaoyun.com/(推荐链接:https://my.yecaoyun.com/aff.php?aff=2490)(跑路不负责) 我选择的是Ubuntu22
Ubuntu22版本安装docker,根据官方一键安装脚本即可
https://www.runoob.com/docker/ubuntu-docker-install.html
--官方命令一键安装 curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
然后基于docker搭建frp
参考博客地址:
https://i007it.com/2022/06/18/Docker%E6%90%AD%E5%BB%BAfrp%E5%86%85%E7%BD%91%E7%A9%BF%E9%80%8F%E6%9C%8D%E5%8A%A1%E5%99%A8/
一、搭建frp server(服务器端)
云服务器:带Docker的Ubuntu22
1.创建配置文件(frps.ini)
先建个frp的目录,随便放哪里,比如我就放在用户目录(`/home)下:
mkdir frp
可以直接在服务器(Linux)系统中用创建配置文件、编辑、保存。
也可以在本地直接创建好了,用FTP工具上传到 目录下。
frps.ini 文件内容如下:(644A82D6-EA46-283D-09C0-8E38D594DD4D 服务端与客户端要一致,建议生成一个guid) 在线生成地址:https://www.iamwawa.cn/guid.html 644A82D6-EA46-283D-09C0-8E38D594DD4D
[common] # 监听端口 bind_port = 7000 # 面板端口 dashboard_port = 7500 # 登录面板账号设置 dashboard_user = admin dashboard_pwd = admin # 设置http及https协议下代理端口(非重要) vhost_http_port = 7080 vhost_https_port = 7081 # 身份验证 token = 644A82D6-EA46-283D-09C0-8E38D594DD4D
2.获取镜像
官方地址:https://hub.docker.com/r/snowdreamtech/frps
docker pull snowdreamtech/frps
碰到没有权限的时候,命令前面加上就行。
我这里配置文件在:
docker run --restart=always --network host -d -v /home/frp/frps.ini:/etc/frp/frps.ini --name frps snowdreamtech/frps
参数注释
--network host:网络模式host -v /home/frp/frps.ini:/etc/frp/frps.ini:配置文件映射 --name frps:容器名称,可以随便取
启动后,通过命令查看容器列表。
创建好后,打开网址:服务器ip:7500 就可以看到frp面板了。(例如:127.0.0.1:7500)
如果出现无法访问的情况,可以在以下网站上查询一下,看服务器端口是否开放: https://tool.chinaz.com/port
成功界面
127.0.0.1:7500
二、搭建frp client(客户端)
Nas 添加Frpc套件 用的矿神的 直接打开套件 配置文件内容如下:(如果是windows等其他系统可以自己搜索博客参考)
1.创建配置文件(frpc.ini)
在所有套件设置里面添加 矿神 https://spk7.Imnks.com/
如果群晖系统是7版本以下的
则https://spk.Imnks.com/ 搜索frpc下载对应的套件(C代表client客户端 S代表服务端) 配置文件内容如下:
[common] # server_addr为FRPS服务器IP地址 server_addr = 云服务器ip # server_port为服务端监听端口,bind_port,与frps.ini中保存一致 server_port = 7000 # 身份验证,与frps.ini中保存一致 token = 644A82D6-EA46-283D-09C0-8E38D594DD4D [nas] type = tcp local_ip = 127.0.0.1 local_port = 5000 remote_port = 5000 # [nas] 为服务名称,下方此处设置为,访问frp服务段的2288端口时,等同于通过中转服务器访问127.0.0.1的22端口。 # type 为连接的类型,此处为tcp # local_ip 为中转客户端实际访问的IP # local_port 为目标端口 # remote_port 为远程端口 # 远程桌面Nas,连接需要5000端口 [halo] type = tcp local_ip = 127.0.0.1 local_port = 8090 remote_port = 8090 [wiki] type = tcp local_ip = 127.0.0.1 local_port = 3000 remote_port = 3000
三:使用docker+nginx 监听80、443端口根据url 转发
docker pull nginx:latest(nginx配置文件有改动) docker pull nginx:1.23.0 # 2 在主机创建要挂载的文件夹 mkdir -p /data/nginx/{conf,conf.d,html,logs,certs} # 以下命令是将该文件夹所有的文件和文件夹权限设置成 777 chmod -R 777 /data/
docker run --name nginx -d -p 80:80 -p 443:443 -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/conf.d/:/etc/nginx/conf.d -v /data/nginx/html:/etc/nginx/html -v /data/nginx/logs:/var/log/nginx -v /data/nginx/certs:/etc/nginx/certs -v /etc/localtime:/etc/localtime:ro nginx
nginx配置文件
server { listen 80; listen [::]:80; server_name 自己的域名; #填写域名 #将所有HTTP请求通过rewrite指令重定向到HTTPS rewrite ^(.*) https://$server_name$1 permanent; } #配置443端口 server { listen 443 ssl; # 1.1版本后这样写 server_name 自己的域名; #填写域名 ssl_certificate certs/cert-file-name.pem; #需要将cert-file-name.pem替换成已上传的证书文件的名称。 ssl_certificate_key certs/cert-file-name.key; #需要将cert-file-name.key替换成已上传的证书私钥文件的名称。 ssl_session_timeout 5m; #表示使用的加密套件的类型。 ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; #表示使用的TLS协议的类型。 ssl_prefer_server_ciphers on; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_session_cache shared:SSL:1m; fastcgi_param HTTPS on; fastcgi_param HTTP_SCHEME https; location / { proxy_pass http://云服务器ip:8090/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-PORT $remote_port; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; root html; index index.html index.htm; } location /nas/ { proxy_pass http://云服务器ip:5000/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-PORT $remote_port; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } location /wiki/ { proxy_pass http://云服务器ip:3000/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-PORT $remote_port; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
#1、查询portainer镜像(可视化管理云服务器的docker的) 命令:docker search portainer #2、拉取portainer镜像 #命令 docker pull portainer/portainer #3、安装portainer docker run -d -p 9000:9000 -l portainer=portainer -v /var/run/docker.sock:/var/run/docker.sock -v /portainer_data:/dataportainer/portainer --name portainer portainer/portainer #4、登录设置账号密码,选择local进行连接 admin 密 admin
由于野草云默认是没开启防火墙的虽然可以访问但是不够安全,需要把自己需要用到的端口开放并开启防火墙 5000 7000 7500 7080 7081 80 443 8090 9000 3000 端口全部开放然后开启防火墙
ubuntu开放80端口的操作方法:
1.打开终端命令行模式。 netstat -aptn 查看所有开放端口
2.输入以下命令查看已经开启的端口。
sudo ufw status
3.若没开发80端口,则输入以下命令开放。
sudo ufw allow 80 sudo ufw allow 443 sudo ufw allow 7000 sudo ufw allow 7500 sudo ufw allow 7080 sudo ufw allow 7081 sudo ufw allow 8090 sudo ufw allow 9000 sudo ufw allow 3000 sudo ufw allow 5000
4.最后重启一下防火墙即可。
sudo ufw reload #重启防火墙
相关命令:
sudo ufw enable #开启防火墙 sudo ufw disable #关闭防火墙
参考博客:
0.Ubuntu安装docker 利用官方一键安装脚本
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
参考地址:
https://www.runoob.com/docker/ubuntu-docker-install.html
1.利用服务器搭建Frp
https://i007it.com/2022/06/18/Docker%E6%90%AD%E5%BB%BAfrp%E5%86%85%E7%BD%91%E7%A9%BF%E9%80%8F%E6%9C%8D%E5%8A%A1%E5%99%A8/
3.docker安装nginx以及配置证书 参考自己的博客
注意事项:博客的nginx版本大约是1.1或者1.2 不要用nginx最新的镜像,挂载的目录不一样,会报错,图简单直接把用nginx 1.20版本即可
https://www.firstsaofan.top/archives/babb59e1-5d52-d2f7-19bc-29a91fe128ac
https://www.firstsaofan.top/archives/d7a39bf7-5996-9d0f-3e45-f487ce5cd1a2
本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕,E-mail:xinmeigg88@163.com
本文链接:http://www.xrbh.cn/tnews/2426.html