如何產生客戶端用的 ovpn 檔
注意事項
- 已有 OpenVPN server、ca.key
- 用戶端在使用此憑證時無需輸入密碼
- 固定 IP ,已經定好的檔名,後續不可修改
先在 server 生成憑證、密鑰和配置
$ ssh {your_server}
$ sudo docker run \
-v /volume1/docker/tun/etc:/etc/openvpn \
--rm -it kylemanna/openvpn \
easyrsa build-client-full {your_file_name} nopass
# 原 /etc/openvpn/ 的檔已存在 /volume1/docker/tun/etc 裡了,所以這裡要輸入ca.key的密碼
Enter pass phrase for /etc/openvpn/pki/private/ca.key:
成功應該要出現這些訊息:
Enter pass phrase for /etc/openvpn/pki/private/ca.key:
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
commonName :ASN.1 12:'{your_file_name}'
Certificate is to be certified until Mar 9 01:15:10 2026 GMT (825 days)
Write out database with 1 new entries
Data Base Updated
_________________
以上會生成三個檔, pki/issued/{your_file_name}.crt、pki/private/{your_file_name}.key、pki/reqs/{your_file_name}.req
設該 ovpn 設定檔的固定 IP
$ sudo docker exec -it {your_container_name} /bin/bash
$ cd /etc/openvpn/ccd
$ pwd
# 查是否有該 ip 的設定,eg.
$ grep -Rnw . -e '10.8.0.121'
# OR
$ grep -rnw . -e '10.8.0.121'
$ ls -alt
$ vi {your_file_name} # 給固定 IP
# 內容: "ifconfig-push 10.8.0.121 255.255.255.0"
$ cat {your_file_name}
$ exit
取得 ovpn 檔,放到 ~ 下,後續可以備份
sudo docker run \
-v /volume1/docker/tun/etc:/etc/openvpn \
--rm kylemanna/openvpn \
ovpn_getclient {your_file_name} > ~/{your_file_name}.ovpn
留言
張貼留言