Skip to content

命令列與環境變數

主程式 flags

Flag環境變數說明
-d <dir>CLASH_HOME_DIR設定與資料 home directory
-f <file>CLASH_CONFIG_FILE設定檔;- 表示 stdin
--config <base64>CLASH_CONFIG_STRINGBase64 編碼 YAML
--age-secret-key <key>CLASH_AGE_SECRET_KEYAge 解密 secret key
--ext-ui <dir>CLASH_OVERRIDE_EXTERNAL_UI_DIR覆寫 external UI directory
--ext-ctl <addr>CLASH_OVERRIDE_EXTERNAL_CONTROLLER覆寫 HTTP Controller address
--ext-ctl-tls <addr>CLASH_OVERRIDE_EXTERNAL_CONTROLLER_TLS覆寫 HTTPS Controller address
--ext-ctl-unix <path>CLASH_OVERRIDE_EXTERNAL_CONTROLLER_UNIX覆寫 Unix socket
--ext-ctl-pipe <path>CLASH_OVERRIDE_EXTERNAL_CONTROLLER_PIPE覆寫 Windows named pipe
--ext-ctl-routing-mark <n>CLASH_OVERRIDE_EXTERNAL_CONTROLLER_ROUTING_MARKLinux Controller socket mark
--secret <secret>CLASH_OVERRIDE_SECRET覆寫一般 Controller secret
--post-up <command>CLASH_POST_UPRuntime 啟動後執行 shell
--post-down <command>CLASH_POST_DOWNRuntime 關閉時執行 shell
-m啟用 geodata mode
-t驗證設定並離開
-v顯示版本、平台、Go、build time 與 tags

Shell 指令

--post-up--post-down 直接透過系統 shell 執行。不要讓 API、使用者輸入或不可信設定來源控制這兩個值。

設定來源範例

sh
# 預設 <home>/config.yaml
aster-core

# 指定 home 與 file
aster-core -d /etc/mihomo -f /etc/mihomo/config.yaml

# stdin
aster-core -d /etc/mihomo -f -

# Base64
aster-core --config "$(base64 -w0 config.yaml)"

產生 credentials 與 keys

UUID

sh
aster-core generate uuid

REALITY X25519

sh
aster-core generate reality-keypair

輸出 PrivateKeyPublicKey。Server 使用 private key,client 使用 public key。

WireGuard

sh
aster-core generate wg-keypair

ECH

sh
aster-core generate ech-keypair example.com

VLESS Encryption

sh
aster-core generate vless-mlkem768
aster-core generate vless-x25519

可選擇傳入既有 seed/private key,命令會同時輸出 server 與 client 建議設定。

Sudoku

sh
aster-core generate sudoku-keypair

Age 設定加密

sh
# X25519 identity
aster-core age keygen

# ML-KEM-768 + X25519 hybrid identity
aster-core age keygen-pq

# Secret key 轉 public recipient
aster-core age convert <secret-key>

# 加密與解密;source/target 可用 - 表示 stdio
aster-core age encrypt <public-key> <source> <target>
aster-core age decrypt <secret-key> <source> <target>

Rule set 轉換

sh
aster-core convert-ruleset <behavior> <format> <source> <target>

此工具可在 text/YAML/MRS 等支援格式間轉換 rule provider 資料。behavior 必須符合 domainipcidrclassical 等 provider 行為。

進階環境變數

變數用途
XDG_CONFIG_HOME預設 Mihomo 目錄不存在時使用的設定根目錄
SAFE_PATHS額外允許的檔案根目錄,使用 OS path-list 分隔
SKIP_SAFE_PATH_CHECK完全停用安全路徑檢查
DISABLE_EMBED_CA不使用內嵌 CA bundle
DISABLE_SYSTEM_CA不載入系統 CA
DISABLE_SYSTEM_HOSTS不查詢系統 hosts
DISABLE_LOOPBACK_DETECTOR停用 loopback connection detector
FORCE_ANET強制使用 anet path
HOST_PROCLinux procfs root,預設 /proc
SKIP_SYSTEM_IPV6_CHECK跳過系統 IPv6 能力偵測
DISABLE_NFTABLESTUN auto-redirect 不使用 nftables
DISABLE_OVERRIDE_ANDROID_VPN停用 Android VPN interface override
LISTEN_NAMEDPIPE_SDDLWindows named pipe SDDL
QUIC_GO_DISABLE_GSO停用 quic-go GSO
QUIC_GO_DISABLE_ECN停用 quic-go ECN

Signals 與結束行為

Signal行為
SIGHUP重新套用設定;檔案模式會重新讀檔
SIGINT正常關閉
SIGTERM正常關閉

正常關閉會執行 runtime shutdown、關閉 listeners、清理自動 iptables、保存 fake-IP,並 flush Aster traffic。