VPNとSSHトンネルはどちらも、暗号化された接続を介してネットワークトラフィックを安全に「トンネリング」できます。それらはいくつかの点で似ていますが、他の点では異なります。どちらを使用するかを決定しようとしている場合は、それぞれがどのように機能するかを理解するのに役立ちます。
SSHトンネルは、より複雑なサーバーセットアッププロセスなしでVPNと同じ機能の一部を提供できるため、「貧乏人のVPN」と呼ばれることがよくありますが、いくつかの制限があります。
VPNのしくみ
VPNは「仮想プライベートネットワーク」の略で、その名前が示すように、インターネットなどのパブリックネットワークを介してプライベートネットワークに接続するために使用されます。一般的なVPNの使用例では、企業はファイル共有、ネットワークプリンター、およびその他の重要なものを備えたプライベートネットワークを持っている場合があります。一部の企業の従業員は出張する可能性があり、道路からこれらのリソースに頻繁にアクセスする必要があります。ただし、企業は重要なリソースをパブリックインターネットに公開することを望んでいません。代わりに、企業はVPNサーバーをセットアップでき、外出中の従業員は会社のVPNに接続できます。従業員が接続すると、そのコンピュータは企業のプライベートネットワークの一部であるように見えます。実際に物理ネットワーク上にいるかのように、ファイル共有やその他のネットワークリソースにアクセスできます。
VPNクライアントは、パブリックインターネットを介して通信し、暗号化された接続を介してコンピューターのネットワークトラフィックをVPNサーバーに送信します。暗号化は安全な接続を提供します。つまり、ビジネスの競合他社は接続をスヌープして機密のビジネス情報を見ることができません。 VPNによっては、すべてのコンピューターのネットワークトラフィックがVPNを介して送信される場合もあれば、一部のみが送信される場合もあります(ただし、通常、すべてのネットワークトラフィックはVPNを通過します)。すべてのWebブラウジングトラフィックがVPN経由で送信される場合、VPNクライアントとサーバーの間の人々はWebブラウジングトラフィックをスヌープできません。これにより、パブリックWi-Fiネットワークを使用する際の保護が提供され、ユーザーは地理的に制限されたサービスにアクセスできます。たとえば、従業員がWebを検閲する国で働いている場合、インターネット検閲を回避できます。従業員がVPNを介してアクセスするWebサイトからは、WebブラウジングトラフィックはVPNサーバーから来ているように見えます。
重要なのは、VPNはアプリケーションレベルよりもオペレーティングシステムレベルで機能することです。つまり、VPN接続を設定すると、オペレーティングシステムは、すべてのアプリケーションからVPN接続を介してすべてのネットワークトラフィックをルーティングできます(ただし、VPNの構成方法によって、VPNごとに異なる場合があります)。個々のアプリケーションを構成する必要はありません。
独自のVPNの使用を開始するには、次のガイドを参照してください。 TomatoルーターでOpenVPNを使用する 、 DD-WRTルーターへのOpenVPNのインストール 、または DebianLinuxでVPNを設定する 。
SSHトンネルのしくみ
「セキュアシェル」の略であるSSHは、ネットワークトラフィックの転送専用に設計されたものではありません。通常、SSHは、リモート端末セッションを安全に取得して使用するために使用されますが、 SSHには他の用途があります 。 SSHも強力な暗号化を使用しており、SSHクライアントをSOCKSプロキシとして機能するように設定できます。取得したら、SOCKSプロキシを使用するようにコンピューター(Webブラウザーなど)でアプリケーションを構成できます。トラフィックはローカルシステムで実行されているSOCKSプロキシに入り、SSHクライアントはSSH接続を介してトラフィックを転送します。これはSSHトンネリングと呼ばれます。これは、VPNを介してWebを閲覧するのと同じように機能します。Webサーバーの観点からは、トラフィックはSSHサーバーから来ているように見えます。コンピューターとSSHサーバー間のトラフィックは暗号化されているため、VPNの場合と同じように暗号化された接続を参照できます。
ただし、SSHトンネルはVPNのすべての利点を提供するわけではありません。 VPNとは異なり、SSHトンネルのプロキシを使用するように各アプリケーションを構成する必要があります。 VPNを使用すると、すべてのトラフィックがVPNを介して送信されることが保証されますが、SSHトンネルではこの保証はありません。 VPNを使用すると、オペレーティングシステムは、リモートネットワーク上にいるかのように動作します。つまり、Windowsネットワークファイル共有への接続は簡単です。 SSHトンネルではかなり難しくなります。
SSHトンネルの詳細については、を参照してください。 PuTTYを使用してWindowsでSSHトンネルを作成するためのこのガイド 。 LinuxでSSHトンネルを作成するには、次のリストを参照してください。 SSHサーバーでできるクールなこと 。
どちらがより安全ですか?
どちらがビジネスでの使用に対してより安全であるかが心配な場合、答えは明らかにVPNです。システム上のすべてのネットワークトラフィックを強制的に通過させることができます。ただし、暗号化された接続でコーヒーショップや空港の公共Wi-FiネットワークからWebを閲覧したいだけの場合は、VPNサーバーとSSHサーバーの両方に強力な暗号化機能があります。
他の考慮事項もあります。初心者ユーザーはVPNに簡単に接続できますが、VPNサーバーのセットアップはより複雑なプロセスです。 SSHトンネルは、初心者ユーザーにとってはより困難ですが、SSHサーバーのセットアップは簡単です。実際、多くの人は、リモートでアクセスするSSHサーバーをすでに持っています。すでにSSHサーバーにアクセスできる場合は、VPNサーバーを設定するよりもSSHトンネルとして使用する方がはるかに簡単です。このため、SSHトンネルは「貧乏人のVPN」と呼ばれています。
より堅牢なネットワークを探している企業は、VPNに投資したいと思うでしょう。一方、SSHサーバーにアクセスできるオタクの場合、SSHトンネルは、ネットワークトラフィックを暗号化してトンネリングする簡単な方法であり、暗号化はVPNの暗号化と同じくらい優れています。