AWS の OpenVPN が機能しない - DigitalOcean では同じ設定が機能する

AWS の OpenVPN が機能しない - DigitalOcean では同じ設定が機能する

AWS 環境で VPN サーバーをセットアップしようとしています。稼働中の Digital Ocean ホストで使用しているのと同じ構成を使用してサーバーをセットアップしました (サーバー IP 範囲とポートが異なることを除く)。tunnelblick を実行しているクライアントから接続できます。

しかし、AWS VPNサーバーに接続すると、クライアントtunXデバイスでIPアドレスを取得できず、ルートも更新されません。DigitalOceanに接続すると、openvpn server.confからサーバーIP範囲内のIPアドレスを取得します。

AWS の VPC 上の NACL では、すべての受信トラフィックとすべての送信トラフィックが許可されます。

EC2インスタンスに関連付けられているセキュリティグループは1つだけであり、プロトコルAll、ポート範囲All、宛先0.0.0.0/0のすべてのトラフィックを許可します。

インスタンスではソース/宛先チェックが無効になっていますが、これを有効にすると同じ動作が発生しました。

EC2インスタンスが関連付けられているサブネットには有効なインターネットゲートウェイへのルートがあり、インターネットにアクセスできます。

私の AWS /etc/openvpn/server.conf は次のとおりです。

port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/ip-foo.crt
key /etc/openvpn/easy-rsa/keys/ip-foo.key
user nobody
group nogroup
dh /etc/openvpn/easy-rsa/keys/dh2048.pem
server 10.8.20.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
comp-lzo
push "route 172.100.0.0 255.255.0.0"
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
persist-key
persist-tun
status openvpn-status.log
verb 3

私のDigitalOcean server.confは

port 443
proto udp
dev tun
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/foo.crt
key /etc/openvpn/easy-rsa/keys/foo.key 
user nobody
group nogroup
dh /etc/openvpn/easy-rsa/keys/dh2048.pem
server 10.8.4.0 255.255.255.0
ifconfig-pool-persist 443ipp.txt
keepalive 10 120
comp-lzo
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
persist-key
persist-tun
verb 3

サンプルのクライアントログはhttps://pastebin.com/tYwAKFwn

AWSサーバーに接続すると、journalctl -fの出力に次の内容が表示されます。

Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 TLS: Initial packet from [AF_INET]my.public.ip:56720, sid=f565fbbe 3fc25003
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 VERIFY OK: depth=1, C=GB, ST=Your Province, L=Your City, O=Your Organisation, OU=Your organisational unit, CN=Your Organisation CA, name=EasyRSA, emailAddress=Organisation CA e-mail
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 VERIFY OK: depth=0, C=GB, ST=Your Province, L=Your City, O=Your Organisation, OU=Your organisational unit, CN=vpnclient, name=EasyRSA, emailAddress=Organisation CA e-mail
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 WARNING: 'link-mtu' is used inconsistently, local='link-mtu 1542', remote='link-mtu 1558'
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 WARNING: 'cipher' is used inconsistently, local='cipher BF-CBC', remote='cipher AES-256-CBC'
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 WARNING: 'keysize' is used inconsistently, local='keysize 128', remote='keysize 256'
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 WARNING: this cipher's block size is less than 128 bit (64 bit).  Consider using a --cipher with a larger block size.
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 WARNING: this cipher's block size is less than 128 bit (64 bit).  Consider using a --cipher with a larger block size.
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 Control Channel: TLSv1.2, cipher TLSv1/SSLv3 DHE-RSA-AES256-GCM-SHA384, 2048 bit RSA
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: my.public.ip:56720 [vpnclient] Peer Connection Initiated with [AF_INET]my.public.ip:56720
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: vpnclient/my.public.ip:56720 MULTI_sva: pool returned IPv4=10.8.20.6, IPv6=(Not enabled)
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: vpnclient/my.public.ip:56720 MULTI: Learn: 10.8.20.6 -> vpnclient/my.public.ip:56720
Feb 23 10:01:11 ip-172-100-54-88 ovpn-server[1872]: vpnclient/my.public.ip:56720 MULTI: primary virtual IP for vpnclient/my.public.ip:56720: 10.8.20.6

AWSサーバー上のifconfig tun0の出力は次の通りです。

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.8.20.1  P-t-P:10.8.20.2  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

しかし、tunデバイスでIPを取得できず、10.8.20.1にpingできません

何かアドバイスがあれば、ぜひお願いします!

答え1

現時点ではあなたのものを確認する時間はありませんが、OpenVPN のセットアップは機能しています。

役立つかもしれないいくつかのことを次に示します。

  • 私のサーバーとクライアントの設定server.conf と client.ovpn

  • これを使用して、AWS インスタンスを自動的に構成してみてください。 Nyr OpenVPNインストーラー

  • ランダムに生成されたIPではなく、静的IPを使用してみてください。

関連情報