docker-composeを使用してOpenVPNサーバーをインストールおよび構成する


みなさん、こんにちは、最近はインターネットで快適に感じることがますます難しくなっており、有用なリソースのほとんどは平均的なユーザーにはアクセスできません。 このような暗闇の中で、VPNはネットワークの制限を回避する唯一の安定した作業ソリューションです。


OpenVPNは、VPNトンネルを整理するための最も人気のあるプログラムの1つであり、docker-composeは、単一のdocker-compose.ymlファイルでプログラムをインストールおよび構成するための優れたツールです。


この記事では、docker-composeを使用してVPS上でOpenVPNサーバーを迅速かつ簡単に構成する方法を説明します。 kylemanna/docker-openvpnのイメージを基礎kylemanna/docker-openvpnます。


猫の下で興味を持ってください。


OpenVPNサーバーをインストールする


したがって、作業には、dockerおよびdocker-composeによってインストールされた独自のVPSサーバーが必要です。


新しいdocker-compose.yml作成します


 touch docker-compose.yml 

作成されたdocker-compose.yml次の行をコピーします


 version: '2' services: openvpn: cap_add: - NET_ADMIN image: kylemanna/openvpn container_name: openvpn ports: - "1194:1194/udp" restart: always volumes: - {path_to_save_openvpn_config}:/etc/openvpn 

{path_to_save_openvpn_config}をOpenVPNが設定を保存するパスに変更します。これは/home/administrator/openvpn/です。


Docker-composeファイルの準備ができました。 次のコマンドを実行してOpenVPNを初期化し、サーバー証明書を作成します。 {vpn_server_address}をサーバーのアドレスに置き換えて、
IPアドレス(10.10.10.8)またはドメイン名(vpn.server.com)のいずれかです。


 docker-compose run --rm openvpn ovpn_genconfig -u udp://{vpn_server_address} docker-compose run --rm openvpn ovpn_initpki 

証明書の生成中に、パスフレーズ(PEMパスフレーズを入力)と証明書名(共通名)を入力します。


制御フレーズを忘れないでください。なぜなら、 クライアント証明書を作成するときの次のステップで必要になります。


サーバー証明書の生成


通常、証明書の生成には時間がかかりますので、ゆっくりとくつろいでください。


証明書の準備ができたら、OpenVPNサーバーを起動できます。


 docker-compose up -d openvpn 

クライアント証明書の作成


OpenVPNサーバーに接続するには、クライアント証明書が必要です。


クライアント証明書を作成するには、次のコマンドを使用します。


 docker-compose run --rm openvpn easyrsa build-client-full {client_name} nopass 

{client_name}をクライアントの名前(my_phoneなど)に置き換えることを忘れないでください。


証明書を作成するとき、前のステップのパスファースを入力するように求められます。


最大限のセキュリティが必要な場合は、クライアント証明書にnopassを割り当てるために、前のコマンドからnopassオプションを削除することをお勧めします。


クライアント証明書が生成されたら、それを.ovpnファイルにエクスポートして、クライアントに送信しましょう


 docker-compose run --rm openvpn ovpn_getclient {client_name} > certificate.ovpn 


それだけです。この記事がインターネットで再び自由を感じてくれることを願っています。


詳細については、 kylemanna / docker-openvpnイメージの公式Webサイトを参照してください。



Source: https://habr.com/ru/post/J354632/


All Articles