重要な要約:目標:VPNの下にローカルシステムのサービスと関連ポートをVPSに転送してネットワークからアクセスできるようにし、ポートチェッカーを使用して開く必要があるポートを確認します。
ポートがオープンとしてマークされておらず、ポートがまだローカルに接続されているため、プログラムが正しく実行されていないようです。両方のファイアウォールでポートが開いていても、ワイヤガード接続の下でVPSに転送されません。
全内容:
この問題を解決するには、Linuxの専門家の助けが必要です。私のローカルコンピュータでAirdcpp Webクライアントプログラムを実行しています。 3つのポートを使用しますが、この場合にはそのうち、、22000
322001
つを22002
例にランダムに使用します。
その後、firewalld
ファイアウォールプログラムのGUIを介してこれら3つのポートを許可しました。したがって、着信および発信トラフィックが許可されます。その後、ルータの設定ページに移動し、その3つのポートを自分のコンピュータのローカルIPアドレスに転送しました。例えば。 22000-22000 - > 192.168.1.104。この時点で、次のポートチェッカーを使用すると:https://www.yougetsignal.com/tools/open-ports/、開いており、プログラムが期待どおりに実行されていることを示します。
ところが問題は私たちの家IPが露出していてブロックしたいのですが、2つの方法を模索中です。プロキシまたはVPNを使用してください。
プロキシの場合、プログラムの本質的な制限により、何を設定しようとしてもデータ転送が制限されます。そのため、VPNが唯一のオプションになりました。
そのため、次のスクリプトを使用してWireguardを設定しました。https://github.com/angristan/wireguard-install私のLinode VPSで。この場合はインターネットに直接公開されていると思うので、ufw allow
上記の3つのポートを接続してからwg-quick up wg0
ローカルコンピュータに接続するだけです。その後、VPNを接続するとプログラムが実行され、IPが変更されます。問題は、ポートチェッカーを使用するとポートがまだ閉じているとマークされ、もちろんプログラムが最適な条件で実行されないことです。
この時点で、VPSとローカルコンピュータで許可されているすべてのポートを許可に設定しました。 VPS接続が正常です。また、別のポートを使用してVPSでプログラムを実行しており、Wireguardサーバーとして使用している場合でも、プログラムに問題なくアクセスできます。これは、VPSがネットワークに直接公開され、Linodeがブロックされていないことを示しています。何でも、特にこれら3つのポートは電子メールのように特別ではないからです。
だから私のローカルサービスがVPN接続で接続可能とマークされて開かれるようにするには、VPNプロトコルを介してそれらのうち3つを「配信」(実際の技術用語はわかりません)する必要があると推測しています。プログラムはVPSで実行されているように見え、VPSのIPおよびポート接続の下にあるポートチェッカーを使用してアクセスできます。今は何をすべきかわかりませんが、アイデアを提供できる先輩の助けが必要です。読んでくれてありがとう!有用なアイデアのあるコメントやガイド、または私のアイデアのエラーを指摘するすべてのコメントを歓迎します!
技術的な情報:
local machine OS: Arch Linux
program name: https://aur.archlinux.org/packages/airdcpp-webclient/
VPS: Linode ubuntu 20.04.1 LTS, running wireguard with a ufw firewall
編集:ワイヤーガードの設定
VPS側:
[Interface]
Address = 10.66.66.1/24,fd42:42:42::1/64
ListenPort = 49503
PrivateKey =
PostUp = iptables -A FORWARD -i eth0 -o wg0 -j ACCEPT; iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i eth0 -o wg0 -j ACCEPT; iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
### Client local_arch
[Peer]
PublicKey =
PresharedKey =
AllowedIPs = 10.66.66.2/32,fd42:42:42::2/128
内部IPと仮定して共有できますか?間違っていたら訂正してください。
ローカルマシン構成:
[Interface]
PrivateKey =
Address = 10.66.66.2/32,fd42:42:42::2/128
DNS = 1.1.1.1
[Peer]
PublicKey =
PresharedKey =
Endpoint = <linode.IP>:49503
AllowedIPs = 0.0.0.0/0,::/0