本帖最後由 bunch 於 2021-5-14 13:44 編輯
由於冇耐前有巴打問關於升左MERLIN 386之後既野, 手痕同自己部R7000升埋
就順便整埋一份QUICK SETUP NOTE比自己參考(其實主要都係COPY AND PASTE)
主要參考左LIHKG同Enterprise
基本上除左DOWNLOAD V2RAY PACKAGE唔同之外, 所有行Merlin嘅機都一樣做法
(Setup Merlin in R7000)
1. Firmware響http://xvtx.ru/xwrt/download.htm,基本動作flash完Hard Reset唔講太多
2. 刷CFE(可跳過), 因為要行AIMESH, 拎ASUS DDNS, LAN TABLE要WORK, 就要改MAC ADDRESS去到ASUS MAC RANGE
而且我HARDWARE NAT行親FA就會拖死HKBN ROUTER, 但要用IP PHONE又唔甩得
ASUS MAC ADDRESS RANGE就自己上網查, 雖然VORTEX份GUIDE話- ETH MAC Address = LAN_MAC_Address (from the bottom of the case)
- WL1 MAC Address = ETH MAC Address (Press "=" button)
- WL2 MAC Address = ETH MAC Address + 4 (Press "=" button, Then press "+" button four times)
複製代碼 我自己試實際情況係- ETH MAC Address = ASUS_MAC_Address
- WL1 MAC Address = ETH MAC Address + 8
- WL2 MAC Address = ETH MAC Address + 1
複製代碼 另外由於386.2_4封左唔比行mtd-write
所以刷CFE我係用- dd if=customCFE.bin of=/dev/mtd0
複製代碼 3. Reset Router
(Setup Entware, Skynet, Diversion)
4. 正常SETUP ROUTER, (如果要裝DIVERSION)LAN DHCP唔好派X.X.X.2出街
5. 用SSH入ROUTER
準備一隻手指FORMAT做EXT4, 插落ROUTER
6a. 用fdisk -l 或者 df -k去認出邊一隻係你隻手指(如超過一隻)
6b. (假設係sda1)- mke2fs -t ext4 /dev/sda1
- tune2fs -O ^has_journal /dev/sda1
複製代碼 7. amtm->ep, (裝entware)跟住instruction黎裝
8. (amtm menu)->2, (裝Skynet)都係跟住做, 中間會問你SWAP FILE開幾大, 手指夠大就2GB, 手指得果2GB就開1GB, 主要都係避免一直響JFFS寫入寫出
9. (amtm menu)->1, (裝Diversion)都係跟住黎做, 中間叫你入IP就打STEP 4留起左果粒, 自動RESTART
(裝SS)
10. 用SSH入ROUTER
11. opkg update->opkg install shadowsocks-libev-ss-server
12. 由於我自己用開WinSCP黎改FILE, 以下主要都係叫你用WinSCP, 你都可以自己行NANO去寫FILE
以下FILE你可以去https://mega.nz/file/gItQTBhR#AGVLmjPASGpfmxtj8QRxXvNja77PYgHSejznaM5im7s下載, 又或者你喜歡就跟LIHKG自己做一次, 但千其唔好行wget, 佢寫FILE用錯編碼
13. 將admin, isup.sh, ss-init直接掉落/jffs/scripts
14. 打開firewall-start, 加一句(PORT NUMBER自行更改)- iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
複製代碼 15. 打開services-stop, 加一句- /jffs/scripts/ss-init stop
複製代碼 16. 打開services-start(如果裝左Diversion, 會同你改左名做services-start-obsolete, 改返轉頭), 加以下一段- #ss
- sleep 60
- /jffs/scripts/ss-init stop
- /jffs/scripts/ss-init start
- cronfile="/jffs/scripts/admin"
- dest="/var/spool/cron/crontabs/"
- /bin/cp "$cronfile" "$dest"
複製代碼 16B(Necessary if installed Diversion). 響services-start度將RC相關嘅DELETE哂
17. 將admin, isup.sh, ss-init, services-start全部改做755 PERMISSION(即係所有X都揀哂), 又或者你可以行COMMAD- chmod +x admin isup.sh ss-init services-start
複製代碼 18. 去/mnt/sda1/entware/etc開個folder叫shadowsocks,入面開個file叫config.json
Server port同password自己轉- {
- "server":"0.0.0.0",
- "server_port":8080,
- "password":"Your_password_here_need_change",
- "local_port":1080,
- "timeout":600,
- "method":"chacha20-ietf-poly1305",
- "fast_open":false,
- "workers":1
- }
複製代碼 18(Optional). 如果你好似我咁HARDWARE ACCELERATION剩係開得CTF唔行得FA, 就同services-start, services-stop, services-event加- nvram set ctf_fa_cap=0
- nvram commit
複製代碼 唔知點解呢部份即使改左CFE, 每次RESTART LAN都會轉成1, 但DL返CFE落黎又真係仲係0黎. 所以暫時每次ACTION都FORCE佢做0
19. REBOOT
(裝V2RAY, 呢度其實先係重點, 上面係方便我返公司果陣用既低耗PROXY)
以下會用比較新既VLESS, 據作者所講, 舊有VMESS響TLS有好多浪費資源既地方, 搞到佢慢過TROJAN之類好多, 亦大食
另外正常如果本身係ASUS ROUTER, 或者有改MAC ADDRESS(印象中VORTEX好似一開波就幫你改左LAN同WIFI1), 你就可以拎ASUS DDNS, 仲順便可以拎埋LETS ENCRYPE CERT, 冇搞過或者唔得嘅就要自己申請個免費DDNS, 再用acme.sh拎CERT
20. 首先去GITHUB拎最新版V2RAY(而家最新係4.39.1)
R7000用既係ARM32_V5, 其他機我唔知, 要自己去查返
21. 解壓後成舊野掉落/jffs
22. 將v2ray同v2ctl轉成755 PERMISSION
23. 打開CONFIG.JSON改成下面咁
留意返8443係我連入V2RAY既PORT, 10000係我用nginx起嘅防白阻WEB, 1234你V2RAY掛WS嘅PORT
EMAIL隨便打垃圾野, PATH可以改但一改同時改兩個位(要一樣)
ID要你自己去GEN嘅
運作原理: 你CLIENT經8443連入去果陣會分開TCP同WS, TCP就直接對ID之類, WS就會自動REDIRECT去PORT1234, TCP FAIL就會彈去PORT 10000個WEB(HTTP就夠用)- {
- "log" : {
- "access": "/var/log/v2ray/access.log",
- "error": "/var/log/v2ray/error.log",
- "loglevel": "error"
- },
- "inbounds": [
- {
- "port": 8443,
- "protocol": "vless",
- "settings": {
- "clients": [
- {
- "id": "00000000-0000-0000-0000-000000000000",
- "level": 0,
- "email": "a@b.com"
- }
- ],
- "decryption": "none",
- "fallbacks": [
- {
- "dest": 10000
- },
- {
- "path": "/v2ray",
- "dest": 1234,
- "xver": 1
- }
- ]
- },
- "streamSettings": {
- "network": "tcp",
- "security": "tls",
- "tlsSettings": {
- "alpn": [
- "http/1.1"
- ],
- "certificates": [
- {
- "certificateFile": "/mnt/sda1/ssl/cert.pem",
- "keyFile": "/mnt/sda1/ssl/key.pem"
- }
- ]
- }
- }
- },
- {
- "port": 1234,
- "listen": "127.0.0.1",
- "protocol": "vless",
- "settings": {
- "clients": [
- {
- "id": "00000000-0000-0000-0000-000000000000",
- "level": 0,
- "email": "a@b.com"
- }
- ],
- "decryption": "none"
- },
- "streamSettings": {
- "network": "ws",
- "security": "none",
- "wsSettings": {
- "acceptProxyProtocol": true,
- "path": "/v2ray"
- }
- }
- }
- ],
- "outbounds": [
- {
- "protocol": "freedom"
- }
- ]
- }
複製代碼 24. 打開services-start響最尾加下面堆野, DOMAINNAME你就自己改返自己果個, 正路經華碩的話, CERT同KEY就放響
/jffs/.le/入面, 用WINSCP入的話Ctrl+O可以打PATH- mkdir /var/log/v2ray/
- sleep 240
- #cert copy
- cp /jffs/.le/domainname.asuscomm.com/fullchain.cer /mnt/sda1/ssl/cert.pem
- cp /jffs/.le/domainname.asuscomm.com/domainname.asuscomm.com.key /mnt/sda1/ssl/key.pem
- #v2ray start
- mkdir /var/log/v2ray/
- nohup /jffs/v2ray/v2ray --config=/jffs/v2ray/config.json > /dev/null 2>&1 &
- iptables -I INPUT -p tcp --dport 8443 -j ACCEPT
- #check v2ray every 15 minute
- cru a check-v2ray "*/15 * * * * /jffs/scripts/v2ray-check.sh > /dev/null"
- #let v2ray auto restart
- cru a restart-v2ray "30 3 1 * * /jffs/scripts/v2ray-reload.sh > /dev/null"
複製代碼 25. 打開firewall-start, 加:- iptables -I INPUT -p tcp --dport 8443 -j ACCEPT
複製代碼 26. 開新FILE: v2ray-check.sh- #! /bin/sh
- case "$(pidof v2ray | wc -w)" in
- 0) echo "Restarting V2ray: $(date)" >> /var/log/v2ray/v2ray-status.log
- nohup /jffs/v2ray/v2ray --config=/jffs/v2ray/config.json >/dev/null 2>&1 &
- ;;
- 1) # all ok
- ;;
- *) echo "Removed double V2ray: $(date)" >> /var/log/v2ray/v2ray-status.log
- kill $(pidof v2ray | awk '{print $1}')
- ;;
- esac
複製代碼 27. 開新FILE: v2ray-reload.sh- #!/bin/sh
- #find old v2ray process and kill it.
- ps -w | grep /jffs/v2ray/v2ray | grep -v grep | awk '{print $1}' | xargs kill
- #sleep 10s for wait port release
- sleep 10
- #load v2ray again
- nohup /jffs/v2ray/v2ray --config=/jffs/v2ray/config.json >/dev/null 2>&1 &
複製代碼 28. 將v2ray-reload.sh同v2ray-check.sh都改成755 PERMISSION
29. REBOOT
CDN
30. 首先你要買或者申請一個二級DOMAIN NAME(即係AAA.COM果類, 而唔係平時DDNS果種AAA.BBB.COM)
如果你去GODADDY買, 買一年就好, DOMAIN NAME永遠都係申請平, 續期貴, 反正只係中轉就年年轉就好
31. 再去CLOUDFLARE申請一個免費ACCOUNT
32. 響CLOUDFLARE度ADD SITE, 入返你申請左果個DOMAIN NAME
33. SCAN一次DNS, 佢會順手話你知你要去GODADDY(我例子)度轉NAMESPACE落去CLOUDFLARE
34. 響GODADDY, 管理NAME SPACE度入返CLOUDFLARE比你果兩個NAMESPACE, 之後就再冇佢事
35. 去返CLOUDFLARE, DNS所有RECORD清哂佢, 然後加一個新RECORD
TYPE: CNAME, NAME: www, Content: domainname.asuscomm.com, Proxy status: proxied
36. 去ssl/tls, 揀full (strict)
37. ssl/tls下面Edge Certificates, 停左tls 1.3(之前v2ray未支援, 我當佢而家都未支援先)
38. firewall, setting, security level: Essentially Off
去到呢度, SERVER SIDE所有野都SET完
喜歡嘅可以好似我咁起個NGINX響PORT 10000掛個HTTP(冇S), 防白撞
(當有人用XXX.ASUSCOMM.COM:8443又或者WWW.AAA.COM:8443試撞果陣會見到個有齊CERT嘅PAGE)
39. opkg install nginx
40. 打開/opt/etc/nginx/nginx.conf, 改左個PORT做10000
41. 打開/jffs/scripts/firewall-start, 加- iptables -I INPUT -p tcp --dport 10000 -j ACCEPT
複製代碼 42. 打開/jffs/scripts/services-start 加- #nginx
- /opt/etc/init.d/S80nginx start
- iptables -I INPUT -p tcp --dport 10000 -j ACCEPT
複製代碼 (CLIENT)
TCP: TCP CONNECTION係做唔到CDN嘅, 所以ADDRESS打返ASUSCOMM.COM果個
PORT就用8443(或者你自己改左乜就用乜), ID都照抄返你自己果個
SECURITY係NONE, FLOW用TCP, PATH唔洗打野, TLS就用TLS, ALLOWINSECURE建議FLASE(安全D好)
WS(冇CDN): WS CONNECTION先做到CDN, 如果你想SET個冇CDN先既, 照抄上面(包括PORT都係8443), 剩係轉
FLOW: WS, PATH: /v2ray(或者睇你JSON改左乜)
先假設我買左aaa.com
WS(CDN): ADDRESS用www.aaa.com, PORT 8443, ID同PATH照抄
SECURITY: NONE, FLOW: WS, TLS: TLS, ALLOWINSECURE: FALSE
TLS SERVER NAME(如有): www.aaa.com
其實VMESS同VLESS個client setting係差唔多
P.S. 之前曾經有多舊XTLS出黎取代TLS, 不過唔知係咪BUG左, 作者更新完拎走左
另外實測, 用VLESS係真係快過VMESS唔少, ROUTER CPU少左扯到100%咁...
經CDN由2千幾MS PING跌到800MS, 而唔經CDN維持響200水平 |