OpenVPNを使用してDebianからWindowsにすべてのポートを転送する方法

OpenVPNを使用してDebianからWindowsにすべてのポートを転送する方法

私の設定:
Debian 10青から
Windows 10青から

Debian 10OpenVPNのみをインストールし、このスクリプトを使用して設定したAzureの新しいサーバーですか?リポジトリ

Windows 10プログラムを入力してXamppを実行すると、OpenVPNとSSHを使用してWindows 10からDebian 10に接続できます。

質問:
私は私のWindows 10 IPアドレスを公開したくありませんが、人々はDebian 10 IPを使用してXamppのウェブサイトにアクセスしたいと思います。

ターゲット:
OpenVPN経由またはSSHを使用して実行できる場合は、Debian IP TCPポート(80、443、3000、8080)に対するすべての要求をWindows 10ポートに転送またはトンネリングできます。

進展:
次のスクリプトを使用してDebianでOpenVPNを設定しました。ここ動作し、Windows 10がOpenVPNに接続されました。

Windows 10ファイアウォールが無効になっています。

私はポートを転送するためにC2SとBitverse SSHを試しましたが、ローカルでのみ動作しました。

OpenVPNフォーラムにはこれを試みるスレッドがありますが、十分に包括的ではありません。これは協会

すべてのポートまたは特定のポートをLinuxからWindowsに転送する方法を使用できる場合は、これを行う方法を教えてください。よろしくお願いします。

答え1

OpenVPN は、擬似インターフェイス パスワードを管理し、その擬似インターフェイスをあるポイントから別のポイントにルーティングするツールです。

Debian コンピュータでポートを転送しようとしています。大丈夫です。ただし、これはOpenVPNの作業ではなく、Linuxなどのファイアウォールの作業iptablesですnftables

これを行うには、iptables次のガイドラインに従ってください。

あなたのVPN LANとは何か、そしてDebianがOpenVPNサーバー(通常tun0Debianで)を持つために使用するIPを記録してください。 Debian_VPN_IPと呼ぶ

Debian コンピュータのパブリック IP アドレスが何であるかを確認してください。

Windows 10コンピュータでOpenVPNが提供する内部IPアドレスを確認してください。あなたのWindowsコンピュータには、これらのIPを含む新しいインターフェイスが必要です。これをWindows_VPN_IPと呼びます。

パケットがパスを通過するようにDebianシステムでアクティブなIP転送を有効にしてから、natDebianのiptablesテーブルを使用してDebianからWindowsに必要なトラフィックを転送します。

iptables -t nat -A PREROUTING -p tcp -m tcp --dport 443 -j DNAT --to-destination <your Windows_VPN_IP>
iptables -t filter -A FORWARD -d <your Windows_VPN_IP> -p tcp -m tcp --dport 443 -j ACCEPT

転送したい各ポートに対してこの2行を繰り返します。

これで、Debian パブリック IP に対してのみ Windows コンピュータから Windows ルーターへのパスを設定し、Windows コンピュータのデフォルトパスを Debian VPN IP 経由で VPN インターフェイスに設定します。

お待ちください。

注:これは完全な設定ではないため、必要なものをすべてブロックして公開されたサービスを保護するには、ファイアウォールを完了する必要があります。

関連情報