# 使用 pass 密碼管理工具來提供 OpenVPN 帳號密碼(詳細指南) 想要儲存密碼但又不想要直接露出明文?~~喜歡露出除外~~ 使用 pass 來安全地存儲 OpenVPN 的帳號密碼,達到避免存放明文 credentials.txt,同時保持 OpenVPN 的自動登入功能。 ## 🔹 步驟 1: 安裝 pass 在 Ubuntu 上: ```bash= sudo apt update sudo apt install pass -y ``` --- ## 🔹 步驟 2: 初始化 pass ✅ 生成GPG金鑰,如果你尚未有 GPG 金鑰,請先生成: ``` gpg --full-generate-key ``` 📌1. 選擇 RSA and RSA(預設選項)  📌2.密鑰大小輸入 4096 *小知識  📌3.選擇無限期有效(建議:2y)  📌4.設置 GPG 密碼(用於解密密碼,所以不要忘記)  --- #### 🔹 確認 GPG 金鑰 ID: ``` gpg --list-secret-keys --keyid-format LONG ``` 如果成功你會看到: ```b= sec rsa4096/幫我記得這段 2025-02-04 [SC] [expires: 2027-02-04] 2C88CEF2AD7D7D86EC8CFED4DB14E4349DB2DB3C uid [ultimate] openvpn (openvpn_key) ssb rsa4096/97D2781144EEDC0E 2025-02-04 [E] [expires: 2027-02-04] ``` #### ✅ 初始化 pass 請使用你的 GPG Key ID ``` pass init "幫我記得這段" ``` 📌 解讀成功訊息  * 已建立 pass 密碼存儲目錄 (~/.password-store/) pass 會將所有加密密碼存儲在這個資料夾內,每個密碼都是獨立的 GPG 加密文件。 * 密碼存儲已初始化,並與GPG金鑰 XXXXXXXXXXXX 綁定 這表示只有該GPG金鑰的擁有者(你)可以解密和讀取密碼。 --- ## 🔹 步驟 3: 儲存 OpenVPN 帳號密碼 1. 儲存OpenVPN帳號密碼 ``` pass insert -m openvpn/credentials # -m 允許多行輸入 ``` 📌然後輸入:  第一行是 VPN 帳號 第二行是 VPN 密碼 輸入完成Ctrl+D儲存退出 2. 測試讀取密碼 ``` pass openvpn/credentials ``` 📌如果成功即將看到:(如果沒有請把上述在跑一次good luck)  --- ## 🔹 步驟 4: 配置 OpenVPN 來使用 pass 1. 打開 OpenVPN 設定文件(通常是 /etc/openvpn/vpn.ovpn) ``` sudo vim /etc/openvpn/vpn.ovpn ``` 2. 修改 auth-user-pass 設定 ``` auth-user-pass /etc/openvpn/credentials.txt ``` 改為 ``` auth-user-pass /dev/stdin ``` ## 🔹 步驟 5: 啟動 OpenVPN 並自動讀取密碼 1. 使用 pass 來提供帳號密碼: ``` (echo "$(pass openvpn/credentials)") | sudo openvpn --config /etc/openvpn/vpn.ovpn --auth-user-pass /dev/stdin ``` 這會將 pass openvpn/credentials的輸出作為OpenVPN的密碼輸入,而不需要明文存放~~credentials.txt~~ ## 🔹 完成測試  ✅出現:"Initialization Sequence Completed" 表示成功🔥 # 🎓小知識 ### 🔹 什麼是密鑰大小(Key Size)? 密鑰大小指的是 **RSA 加密密鑰的長度(以 bit 為單位)**,影響 **安全性** 和 **性能**: | **密鑰大小** | **安全性** | **速度** | **建議用途** | |-------------|-----------|---------|-------------| | **1024 位** | ❌ 不安全(已可破解) | ✅ 快速 | 不建議使用 | | **2048 位** | 🟡 尚可,但未來可能有風險 | 🔹 適中 | 仍可使用,但建議 3072+ | | **3072 位(預設)** | ✅ 安全 | 🔹 適中 | 一般建議使用 | | **4096 位** | 🔥 最安全 | ❌ 最慢 | 高安全性需求 | --- References: [Ubuntu automatically connect to Open VPN on startup](https://blog.markkulab.net/ubuntu-automatically-connect-to-openvpn-startup/) [使用 Unix 標準的密碼管理工具 pass (password-store) 管理密碼](https://josix.tw/post/password-store-guide/ )
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up