CentOS6でOpenVPN2.3.7を実行しています。ルーティング(tun)を使用しており、OpenVPNのインスタンスが2つあります。 2番目のインスタンスには、相互に表示したい2つのクライアント、つまりping、アクセスポートなどがあります。これらは両方とも同じサブネット内にあるため、かなり単純なはずです。静的アドレスを使用して構成されます。 ccd。
Server.confでclient-to-client
を有効にせずに、2つのクライアントがOpenVPN LANIPアドレスを介してお互いを認識できるようにしたい。
私はCSFを使用していますが、ファイアウォールとして使用しているiptablesを使用して実行できると確信していますが、iptablesのラッパーです。
クライアントのIPv4アドレスは次のとおりです。
OpenVPN Client #1: 10.8.2.14
OpenVPN Client #2: 10.8.2.17
クライアント2で実行されているサービスにアクセスできるようにするには、クライアント#1が必要です。応答が必要な場合は、互換性のあるクライアント#2がクライアント#1を確認できると思います。
OpenVPNサーバーでいくつかのFORWARDチェーンルールを試しましたが、2つのクライアント間で通信を取得できません。 OpenVPNサーバーは明らかに両方のクライアントにpingを実行でき、クライアントはOpenVPNサーバーゲートウェイにpingを実行でき、クライアントは明らかにお互いを見ることができません。
私がすでに試したが機能しなかったいくつかのルール:
iptables -A FORWARD -s 10.8.2.14 -d 10.8.2.17 -j ACCEPT
iptables -A FORWARD -s 10.8.2.17 -d 10.8.2.14 -j ACCEPT
クライアント間を有効にせずに、2つのクライアントを相互に表示するためのiptablesのヘルプを探しています。これは、2つのクライアントの特別な要件であり、他の場所では必要ありません。
別の方法は、NATを介してVPNクライアント上のサービスを公開することですが、セキュリティのためにこれを行うことは避けたいと思います。
どんな洞察も役に立ちます!
ありがとう、
ジェームズ
逆にすることをお勧めします:enable client-to-client
次に、iptablesを使用してすべてのクライアントをブロックしますが、2つは相互に通信できるようにします。
私はこの質問が古いことを知っていますが、まだこのページにアクセスしている可能性のある新しいユーザーにそれを明確にするために:
client-to-client
を使用すると、実際にファイアウォールを使用できなくなります。OpenVPNサーバーからパケットが返されることはないため、サーバーはこれらのパケットをまったく認識しません。したがって、パケットはホストレイヤーに到達していないため、ファイアウォールに到達せず、そのようにルールが役に立たないため、ファイアウォールを使用できます。