異なるネットワーク間のデータベース間の同期をするにあたり、上記2方法を検討しており、どちらの方法も技術的には可能であるという実証はできております。
「VPN」と言っているものが IPsec を指していると仮定します。VPN という言葉自体は、公共のネットワーク上に、暗号化技術等を駆使して作られた私的なネットワーク、という概念を指す言葉です。
単純に、暗号化された通信の安全性だけだったら、どっちも変わらないです。実装しているソフトウェアのバージョンや設定に問題が無ければ、おそらく AES が使われるでしょう。実際には、SSH でも IPsec でも、双方が対応している暗号の中で、最も強力な物を選択する、という仕組が働きます。
それ以外の部分は、どちらも、きちんと設定して、きちんと使えば、やっぱり、それほど違いは無いように思います。
例えば、ssh の場合、普通に設定してしまうと、つなぐ時に使うユーザアカウントで、ssh を受ける側のシェルが実行できる、という状態になってしまいます。ssh でポートフォワーディングでしか使わないのであれば、この辺の工夫(そのアカウントのログインシェルを /sbin/nologin にする、とか)が必要になります。あと、使うアカウントのみが許可されるように設定する必要もあります。
IPsec であれば、基本的にはネットワークのインタフェースが一個増えた感じになるので、ファイアウォールの設定に気を付ける必要があります。
私が気がついた点は、こんなところですが、本家 Slashdot(英語)でも話題になった事がありました。
ざっと見た感じでは、「SSH のポートフォワーディングは TCP over TCP になるのがイケテないけど、NAT 超えも問題ないし、手軽で便利。だけど、ネットワークとしてのスケーラビリティは IPsec の方が上」といった感じの意見が多いようです。
コメント(0件)