{"id":34,"date":"2025-01-27T21:43:56","date_gmt":"2025-01-27T13:43:56","guid":{"rendered":"http:\/\/jp5.ssqwert.eu.org\/?p=34"},"modified":"2025-01-27T21:43:56","modified_gmt":"2025-01-27T13:43:56","slug":"%e6%89%8b%e6%90%93reality-%e5%81%b7%e8%87%aa%e5%b7%b1-%e6%9c%89%e8%af%81%e4%b9%a6-nginx-acme-%e6%9c%80%e5%bc%ba%e6%8a%97%e5%b0%81%e9%94%81%e5%8d%8f%e8%ae%ae%e4%b9%8b%e4%b8%80-%e4%bf%9d%e5%a7%86","status":"publish","type":"post","link":"https:\/\/jp5.ssqwert.eu.org\/index.php\/2025\/01\/27\/%e6%89%8b%e6%90%93reality-%e5%81%b7%e8%87%aa%e5%b7%b1-%e6%9c%89%e8%af%81%e4%b9%a6-nginx-acme-%e6%9c%80%e5%bc%ba%e6%8a%97%e5%b0%81%e9%94%81%e5%8d%8f%e8%ae%ae%e4%b9%8b%e4%b8%80-%e4%bf%9d%e5%a7%86\/","title":{"rendered":"\u624b\u6413Reality | \u5077\u81ea\u5df1 \u6709\u8bc1\u4e66 Nginx Acme \u6700\u5f3a\u6297\u5c01\u9501\u534f\u8bae\u4e4b\u4e00 \u4fdd\u59c6\u7ea7\u6559\u7a0b"},"content":{"rendered":"\n<p>#VPS\u8d2d\u4e70\u8fde\u63a5<br><a href=\"https:\/\/www.vkvm.info\/aff\/RTMSLPRM\" target=\"_blank\" rel=\"noreferrer noopener\">VKVM\u5b98\u7f51<\/a><\/p>\n\n\n\n<p>#\u5b89\u88c5sudo<br>apt install sudo<\/p>\n\n\n\n<p>#Nginx\u5b89\u88c5<br>sudo apt update &amp;&amp; sudo apt upgrade -y &amp;&amp; apt-get install -y gcc g++ libpcre3 libpcre3-dev zlib1g zlib1g-dev openssl libssl-dev wget sudo make curl socat cron &amp;&amp; wget https:\/\/nginx.org\/download\/nginx-1.27.1.tar.gz &amp;&amp; tar -xvf nginx-1.27.1.tar.gz &amp;&amp; cd nginx-1.27.1 &amp;&amp; .\/configure \u2013prefix=\/usr\/local\/nginx \u2013sbin-path=\/usr\/sbin\/nginx \u2013conf-path=\/etc\/nginx\/nginx.conf \u2013with-http_stub_status_module \u2013with-http_ssl_module \u2013with-http_realip_module \u2013with-http_sub_module \u2013with-stream \u2013with-stream_ssl_module \u2013with-stream_ssl_preread_module \u2013with-http_v2_module &amp;&amp; make &amp;&amp; make install &amp;&amp; cd<\/p>\n\n\n\n<p>#service\u8def\u5f84<br>\/lib\/systemd\/system<\/p>\n\n\n\n<p>#\u91cd\u542fnginx<br>systemctl daemon-reload &amp;&amp; systemctl enable nginx.service<\/p>\n\n\n\n<p>#nginx\u914d\u7f6e\u8def\u5f84<br>\/etc\/nginx\/<\/p>\n\n\n\n<p>#\u5b89\u88c5acme\uff1a<br>curl https:\/\/get.acme.sh | sh<\/p>\n\n\n\n<p>#\u6dfb\u52a0\u8f6f\u94fe\u63a5\uff1a<br>ln -s \/root\/.acme.sh\/acme.sh \/usr\/local\/bin\/acme.sh<\/p>\n\n\n\n<p>#\u5207\u6362CA\u673a\u6784\uff1a<br>acme.sh \u2013set-default-ca \u2013server letsencrypt<\/p>\n\n\n\n<p>#cloudflare API<br>export CF_Key=\u4f60\u7684API Token<br>export CF_Email=\u4f60\u7684Cloudflare\u6ce8\u518c\u90ae\u7bb1<\/p>\n\n\n\n<p>#\u7533\u8bf7\u8bc1\u4e66\uff1a<br>acme.sh \u2013issue \u2013dns dns_cf -d \u4f60\u7684\u57df\u540d<\/p>\n\n\n\n<p>#\u5b89\u88c5\u8bc1\u4e66<br>acme.sh \u2013install-cert -d \u4f60\u7684\u57df\u540d \u2013ecc \\<br>\u2013key-file \/etc\/ssl\/private\/private.key \\<br>\u2013fullchain-file \/etc\/ssl\/private\/fullchain.cer \\<br>\u2013reloadcmd \u201csystemctl force-reload nginx\u201d<\/p>\n\n\n\n<p>#Xray\u5b89\u88c5<br>bash -c \u201c$(curl -L https:\/\/github.com\/XTLS\/Xray-install\/raw\/main\/install-release.sh)\u201d @ install -u root<\/p>\n\n\n\n<p>#Xray \u914d\u7f6e\u8def\u5f84<br>\/usr\/local\/etc\/xray<\/p>\n\n\n\n<p>\u7ae0\u8282\uff1a<br>00:00 \u524d\u8a00<br>00:59 Reality\u539f\u7406<br>04:27 VPS\u63a8\u8350<br>06:31 \u89e3\u6790\u57df\u540d<br>06:51 \u5b89\u88c5nginx<br>08:12 \u7533\u8bf7\u8bc1\u4e66<br>09:47 \u5b89\u88c5\u548c\u914d\u7f6exray\u914d\u7f6e<br>12:48 \u914d\u7f6ev2rayN<br>14:25 \u4f2a\u88c5\u7f51\u7ad9<\/p>\n\n\n\n<p>#nginx.service\u914d\u7f6e\u6587\u4ef6<\/p>\n\n\n\n<p>[Unit]<\/p>\n\n\n\n<p>Description=A high performance web server and a reverse proxy server<\/p>\n\n\n\n<p>Documentation=man:nginx(8)<\/p>\n\n\n\n<p>After=network.target nss-lookup.target<\/p>\n\n\n\n<p>[Service]<\/p>\n\n\n\n<p>Type=forking<\/p>\n\n\n\n<p>PIDFile=\/usr\/local\/nginx\/logs\/nginx.pid<\/p>\n\n\n\n<p>ExecStartPre=\/usr\/sbin\/nginx -t -q -g &#8216;daemon on; master_process on;&#8217;<\/p>\n\n\n\n<p>ExecStart=\/usr\/sbin\/nginx -g &#8216;daemon on; master_process on;&#8217;<\/p>\n\n\n\n<p>ExecReload=\/usr\/sbin\/nginx -g &#8216;daemon on; master_process on;&#8217; -s reload<\/p>\n\n\n\n<p>ExecStop=-\/sbin\/start-stop-daemon &#8211;quiet &#8211;stop &#8211;retry QUIT\/5 &#8211;pidfile \/run\/nginx.pid<\/p>\n\n\n\n<p>TimeoutStopSec=5<\/p>\n\n\n\n<p>KillMode=mixed<\/p>\n\n\n\n<p>[Install]<\/p>\n\n\n\n<p>WantedBy=multi-user.target<\/p>\n\n\n\n<p>#nginx\u914d\u7f6e\u6587\u4ef6<\/p>\n\n\n\n<p>user root;<\/p>\n\n\n\n<p>worker_processes auto;<\/p>\n\n\n\n<p>error_log \/usr\/local\/nginx\/logs\/error.log notice;<\/p>\n\n\n\n<p>pid \/usr\/local\/nginx\/logs\/nginx.pid;<\/p>\n\n\n\n<p>events {<\/p>\n\n\n\n<p>worker_connections 1024;<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>http {<\/p>\n\n\n\n<p>log_format main &#8216;[$time_local] $proxy_protocol_addr &#8220;$http_referer&#8221; &#8220;$http_user_agent&#8221;&#8216;;<\/p>\n\n\n\n<p>access_log \/usr\/local\/nginx\/logs\/access.log main;<\/p>\n\n\n\n<p>map $http_upgrade $connection_upgrade {<\/p>\n\n\n\n<p>default upgrade;<\/p>\n\n\n\n<p>&#8220;&#8221; close;<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>map $proxy_protocol_addr $proxy_forwarded_elem {<\/p>\n\n\n\n<p>~^[0-9.]+$ &#8220;for=$proxy_protocol_addr&#8221;;<\/p>\n\n\n\n<p>~^[0-9A-Fa-f:.]+$ &#8220;for=\\&#8221;[$proxy_protocol_addr]\\&#8221;&#8221;;<\/p>\n\n\n\n<p>default &#8220;for=unknown&#8221;;<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>map $http_forwarded $proxy_add_forwarded {<\/p>\n\n\n\n<p>&#8220;~^(,[ \\\\t]*)*([!#$%&amp;&#8217;*+.^_`|~0-9A-Za-z-]+=([!#$%&amp;&#8217;*+.^_`|~0-9A-Za-z-]+|\\&#8221;([\\\\t \\\\x21\\\\x23-\\\\x5B\\\\x5D-\\\\x7E\\\\x80-\\\\xFF]|\\\\\\\\[\\\\t \\\\x21-\\\\x7E\\\\x80-\\\\xFF])*\\&#8221;))?(;([!#$%&amp;&#8217;*+.^_`|~0-9A-Za-z-]+=([!#$%&amp;&#8217;*+.^_`|~0-9A-Za-z-]+|\\&#8221;([\\\\t \\\\x21\\\\x23-\\\\x5B\\\\x5D-\\\\x7E\\\\x80-\\\\xFF]|\\\\\\\\[\\\\t \\\\x21-\\\\x7E\\\\x80-\\\\xFF])*\\&#8221;))?)*([ \\\\t]*,([ \\\\t]*([!#$%&amp;&#8217;*+.^_`|~0-9A-Za-z-]+=([!#$%&amp;&#8217;*+.^_`|~0-9A-Za-z-]+|\\&#8221;([\\\\t \\\\x21\\\\x23-\\\\x5B\\\\x5D-\\\\x7E\\\\x80-\\\\xFF]|\\\\\\\\[\\\\t \\\\x21-\\\\x7E\\\\x80-\\\\xFF])*\\&#8221;))?(;([!#$%&amp;&#8217;*+.^_`|~0-9A-Za-z-]+=([!#$%&amp;&#8217;*+.^_`|~0-9A-Za-z-]+|\\&#8221;([\\\\t \\\\x21\\\\x23-\\\\x5B\\\\x5D-\\\\x7E\\\\x80-\\\\xFF]|\\\\\\\\[\\\\t \\\\x21-\\\\x7E\\\\x80-\\\\xFF])*\\&#8221;))?)*)?)*$&#8221; &#8220;$http_forwarded, $proxy_forwarded_elem&#8221;;<\/p>\n\n\n\n<p>default &#8220;$proxy_forwarded_elem&#8221;;<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>server {<\/p>\n\n\n\n<p>listen 80;<\/p>\n\n\n\n<p>listen [::]:80;<\/p>\n\n\n\n<p><strong>return<\/strong> 301 https:\/\/$host$request_uri;<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>server {<\/p>\n\n\n\n<p>listen 127.0.0.1:8003 ssl default_server;<\/p>\n\n\n\n<p>ssl_reject_handshake on;<\/p>\n\n\n\n<p>ssl_protocols TLSv1.2 TLSv1.3;<\/p>\n\n\n\n<p>ssl_session_timeout 1h;<\/p>\n\n\n\n<p>ssl_session_cache shared:SSL:10m;<\/p>\n\n\n\n<p>ssl_early_data on;<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>server {<\/p>\n\n\n\n<p>listen 127.0.0.1:8003 ssl proxy_protocol;<\/p>\n\n\n\n<p>set_real_ip_from 127.0.0.1;<\/p>\n\n\n\n<p>real_ip_header proxy_protocol;<\/p>\n\n\n\n<p>server_name xx.com; # \u586b\u7531 Nginx \u52a0\u8f7d\u7684 SSL \u8bc1\u4e66\u4e2d\u5305\u542b\u7684\u57df\u540d\uff0c\u5efa\u8bae\u5c06\u57df\u540d\u6307\u5411\u670d\u52a1\u7aef\u7684 IP<\/p>\n\n\n\n<p>ssl_certificate \/etc\/ssl\/private\/fullchain.cer;<\/p>\n\n\n\n<p>ssl_certificate_key \/etc\/ssl\/private\/private.key;<\/p>\n\n\n\n<p>ssl_protocols TLSv1.2 TLSv1.3;<\/p>\n\n\n\n<p>ssl_ciphers TLS13_AES_128_GCM_SHA256:TLS13_AES_256_GCM_SHA384:TLS13_CHACHA20_POLY1305_SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305;<\/p>\n\n\n\n<p>ssl_session_tickets on;<\/p>\n\n\n\n<p>ssl_stapling on;<\/p>\n\n\n\n<p>ssl_stapling_verify on;<\/p>\n\n\n\n<p>resolver 1.1.1.1 valid=60s;<\/p>\n\n\n\n<p>resolver_timeout 2s;<\/p>\n\n\n\n<p>location \/ {<\/p>\n\n\n\n<p>sub_filter $proxy_host $host;<\/p>\n\n\n\n<p>sub_filter_once off;<\/p>\n\n\n\n<p>set $website www.lovelive-anime.jp;<\/p>\n\n\n\n<p>proxy_pass https:\/\/$website;<\/p>\n\n\n\n<p>resolver 1.1.1.1;<\/p>\n\n\n\n<p>proxy_set_header Host $proxy_host;<\/p>\n\n\n\n<p>proxy_http_version 1.1;<\/p>\n\n\n\n<p>proxy_cache_bypass $http_upgrade;<\/p>\n\n\n\n<p>proxy_ssl_server_name on;<\/p>\n\n\n\n<p>proxy_set_header Upgrade $http_upgrade;<\/p>\n\n\n\n<p>proxy_set_header Connection $connection_upgrade;<\/p>\n\n\n\n<p>proxy_set_header X-Real-IP $proxy_protocol_addr;<\/p>\n\n\n\n<p>proxy_set_header Forwarded $proxy_add_forwarded;<\/p>\n\n\n\n<p>proxy_set_header X-Forwarded-<strong>For<\/strong> $proxy_add_x_forwarded_for;<\/p>\n\n\n\n<p>proxy_set_header X-Forwarded-Proto $scheme;<\/p>\n\n\n\n<p>proxy_set_header X-Forwarded-Host $host;<\/p>\n\n\n\n<p>proxy_set_header X-Forwarded-Port $server_port;<\/p>\n\n\n\n<p>proxy_connect_timeout 60s;<\/p>\n\n\n\n<p>proxy_send_timeout 60s;<\/p>\n\n\n\n<p>proxy_read_timeout 60s;<\/p>\n\n\n\n<p>proxy_set_header Early-Data $ssl_early_data;<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>#xray\u914d\u7f6e\u6587\u4ef6<\/p>\n\n\n\n<p>{<\/p>\n\n\n\n<p>&#8220;log&#8221;: {<\/p>\n\n\n\n<p>&#8220;loglevel&#8221;: &#8220;warning&#8221;<\/p>\n\n\n\n<p>},<\/p>\n\n\n\n<p>&#8220;routing&#8221;: {<\/p>\n\n\n\n<p>&#8220;domainStrategy&#8221;: &#8220;IPIfNonMatch&#8221;,<\/p>\n\n\n\n<p>&#8220;rules&#8221;: [<\/p>\n\n\n\n<p>{<\/p>\n\n\n\n<p>&#8220;type&#8221;: &#8220;field&#8221;,<\/p>\n\n\n\n<p>&#8220;port&#8221;: &#8220;443&#8221;,<\/p>\n\n\n\n<p>&#8220;network&#8221;: &#8220;udp&#8221;,<\/p>\n\n\n\n<p>&#8220;outboundTag&#8221;: &#8220;block&#8221;<\/p>\n\n\n\n<p>},<\/p>\n\n\n\n<p>{<\/p>\n\n\n\n<p>&#8220;type&#8221;: &#8220;field&#8221;,<\/p>\n\n\n\n<p>&#8220;ip&#8221;: [<\/p>\n\n\n\n<p>&#8220;geoip:cn&#8221;,<\/p>\n\n\n\n<p>&#8220;geoip:private&#8221;<\/p>\n\n\n\n<p>],<\/p>\n\n\n\n<p>&#8220;outboundTag&#8221;: &#8220;block&#8221;<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>]<\/p>\n\n\n\n<p>},<\/p>\n\n\n\n<p>&#8220;inbounds&#8221;: [<\/p>\n\n\n\n<p>{<\/p>\n\n\n\n<p>&#8220;listen&#8221;: &#8220;0.0.0.0&#8221;,<\/p>\n\n\n\n<p>&#8220;port&#8221;: 443,<\/p>\n\n\n\n<p>&#8220;protocol&#8221;: &#8220;vless&#8221;,<\/p>\n\n\n\n<p>&#8220;settings&#8221;: {<\/p>\n\n\n\n<p>&#8220;clients&#8221;: [<\/p>\n\n\n\n<p>{<\/p>\n\n\n\n<p>&#8220;id&#8221;: &#8220;&#8221;, \/\/ run `xray uuid` to generate<\/p>\n\n\n\n<p>&#8220;flow&#8221;: &#8220;xtls-rprx-vision&#8221;<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>],<\/p>\n\n\n\n<p>&#8220;decryption&#8221;: &#8220;none&#8221;<\/p>\n\n\n\n<p>},<\/p>\n\n\n\n<p>&#8220;streamSettings&#8221;: {<\/p>\n\n\n\n<p>&#8220;network&#8221;: &#8220;tcp&#8221;,<\/p>\n\n\n\n<p>&#8220;security&#8221;: &#8220;reality&#8221;,<\/p>\n\n\n\n<p>&#8220;realitySettings&#8221;: {<\/p>\n\n\n\n<p>&#8220;show&#8221;: <strong>false<\/strong>,<\/p>\n\n\n\n<p>&#8220;dest&#8221;: &#8220;8003&#8221;,<\/p>\n\n\n\n<p>&#8220;xver&#8221;: 1,<\/p>\n\n\n\n<p>&#8220;serverNames&#8221;: [<\/p>\n\n\n\n<p>&#8220;&#8221; \/\/ server name<\/p>\n\n\n\n<p>],<\/p>\n\n\n\n<p>&#8220;privateKey&#8221;: &#8220;&#8221;, \/\/ run `xray x25519` to generate<\/p>\n\n\n\n<p>&#8220;shortIds&#8221;: [<\/p>\n\n\n\n<p>&#8220;&#8221; \/\/ 0 to f, length is a multiple of 2, maximum length is 16<\/p>\n\n\n\n<p>]<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>},<\/p>\n\n\n\n<p>&#8220;sniffing&#8221;: {<\/p>\n\n\n\n<p>&#8220;enabled&#8221;: <strong>true<\/strong>,<\/p>\n\n\n\n<p>&#8220;destOverride&#8221;: [<\/p>\n\n\n\n<p>&#8220;http&#8221;,<\/p>\n\n\n\n<p>&#8220;tls&#8221;,<\/p>\n\n\n\n<p>&#8220;quic&#8221;<\/p>\n\n\n\n<p>]<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>],<\/p>\n\n\n\n<p>&#8220;outbounds&#8221;: [<\/p>\n\n\n\n<p>{<\/p>\n\n\n\n<p>&#8220;protocol&#8221;: &#8220;freedom&#8221;,<\/p>\n\n\n\n<p>&#8220;tag&#8221;: &#8220;direct&#8221;<\/p>\n\n\n\n<p>},<\/p>\n\n\n\n<p>{<\/p>\n\n\n\n<p>&#8220;protocol&#8221;: &#8220;blackhole&#8221;,<\/p>\n\n\n\n<p>&#8220;tag&#8221;: &#8220;block&#8221;<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>],<\/p>\n\n\n\n<p>&#8220;policy&#8221;: {<\/p>\n\n\n\n<p>&#8220;levels&#8221;: {<\/p>\n\n\n\n<p>&#8220;0&#8221;: {<\/p>\n\n\n\n<p>&#8220;handshake&#8221;: 2,<\/p>\n\n\n\n<p>&#8220;connIdle&#8221;: 120<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<p>}<\/p>\n","protected":false},"excerpt":{"rendered":"<p>#VPS\u8d2d\u4e70\u8fde\u63a5VKVM\u5b98\u7f51 #\u5b89\u88c5sudoapt install sudo #Nginx\u5b89\u88c5sud [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-34","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/jp5.ssqwert.eu.org\/index.php\/wp-json\/wp\/v2\/posts\/34","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jp5.ssqwert.eu.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jp5.ssqwert.eu.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jp5.ssqwert.eu.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jp5.ssqwert.eu.org\/index.php\/wp-json\/wp\/v2\/comments?post=34"}],"version-history":[{"count":1,"href":"https:\/\/jp5.ssqwert.eu.org\/index.php\/wp-json\/wp\/v2\/posts\/34\/revisions"}],"predecessor-version":[{"id":35,"href":"https:\/\/jp5.ssqwert.eu.org\/index.php\/wp-json\/wp\/v2\/posts\/34\/revisions\/35"}],"wp:attachment":[{"href":"https:\/\/jp5.ssqwert.eu.org\/index.php\/wp-json\/wp\/v2\/media?parent=34"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jp5.ssqwert.eu.org\/index.php\/wp-json\/wp\/v2\/categories?post=34"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jp5.ssqwert.eu.org\/index.php\/wp-json\/wp\/v2\/tags?post=34"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}