有時(shí)候我們需要把外網(wǎng)可以訪問自己的內(nèi)網(wǎng),比如在微信公眾號(hào)開發(fā)調(diào)用接口時(shí)為了方便調(diào)試就需要配置回調(diào)地址或者是想把自己的nas可以在不在家就能訪問,這時(shí)候就需要內(nèi)網(wǎng)穿透。
使用內(nèi)網(wǎng)穿透主要有幾種方式,1.使用內(nèi)網(wǎng)穿透服務(wù)商提供的服務(wù),但是這種需要付費(fèi),免費(fèi)的話有很多限制而且還可能綁定不成功。2.自己搭建,自己搭建的話如果是單純的想讓外網(wǎng)訪問只需要自己有一臺(tái)外網(wǎng)服務(wù)器,如果是為了微信公眾號(hào)開發(fā)調(diào)試則還需要一個(gè)域名。
1.下載frp
2.解壓:
tar -zxvf frp_0.45.0_linux_amd64.tar.gz
4.進(jìn)入frp_0.45.0_linux_amd64
cd frp_0.45.0_linux_amd64
5.修改配置文件
vi frps.ini
內(nèi)容如下:
[common]
#服務(wù)器的IP
server_addr = xxx.xx.xxx.xxx
#服務(wù)器配置的端口
server_port = 3030
#服務(wù)器配置的Token(密碼)
token = xxxxx
#這個(gè)案例是http網(wǎng)頁(yè)的
[web]
#映射類型,詳見frpc_full.ini
type = http
#需要映射的本地服務(wù)ip
local_ip = 192.168.1.7
#需要映射的本地服務(wù)端口
local_port = 6080
#映射綁定的域名,沒有域名可以直接寫你的服務(wù)器IP
custom_domains =nat.xxx.com
6.啟動(dòng)
nohup ./frps -c frps.ini & > /dev/null 2> /dev/null &
查看ps -ef | grep frp
7.在客戶端(本地)配置Frpc
1.從Github下載Frpc,下載后解壓到文件夾里
8.配置Frpc.ini
如下:
[common]
#服務(wù)器的IP
server_addr = xxx.xxx.xxx.xxx
#服務(wù)器配置的端口
server_port = 3030
#服務(wù)器配置的Token
token = xxx
[web]
#映射類型,詳見frpc_full.ini
type = http
#需要映射的本地服務(wù)ip
local_ip = 192.168.1.7
#需要映射的本地服務(wù)端口
local_port = 6080
#映射綁定的域名或服務(wù)器IP
custom_domains =nat.xxx.com
9.運(yùn)行
10 配置服務(wù)端nginx
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main ‘**remote_addr – **remote_user [**time_local] “**request” ‘
‘**status **body_bytes_sent “$http_referer” ‘
‘”**http_user_agent” “**http_x_forwarded_for”‘;
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
upstream nat-server {
server xxx.xx.xxx.xxx:3031;
}
server {
listen 80;
server_name xxxx.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
#error_page 404 /404.html;
redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 80;
server_name www.xxxx.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
#error_page 404 /404.html;
redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 80;
server_name nat.xxxx.com;
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_set_header Upgrade $http_upgrade;
proxy_set_header Connection “upgrade”;
proxy_connect_timeout 7d;
proxy_send_timeout 7d;
proxy_read_timeout 7d;
location / {
proxy_pass http://nat-server;
proxy_read_timeout 36000;
}
}
}
重新加載nginx配置
/usr/local/nginx/sbin/nginx -s reload
域名綁定
nat.xxxx.com
訪問 xxxx.xxxx.xxxx:35000
-
Web服務(wù)器
+關(guān)注
關(guān)注
0文章
137瀏覽量
24356 -
TCP通信
+關(guān)注
關(guān)注
0文章
146瀏覽量
4200
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論