web-dev-qa-db-ja.com

UNIXベースのVPNの作成:指針、ガイドライン、落とし穴?

  • UNIXベースの仮想プライベートネットワークの作成を直接経験した人はいますか?
  • これを達成するために利用できる最高のVPNクライアント/ツールは何ですか?
  • 避けるべき一般的な落とし穴はありますか?

私の特定のケースでは、私の主な関心はDebian互換のソリューションにあります。私の主な目標は、これまでに行ったことがないという理由だけでそれを機能させることですが、SSH接続を使用したくない場合にいくつかの可能な利点を見ることができます。

3
Aron Rotteveel

linuxでは、2つの主要なオプションがあります。

  • ipsec互換VPN-use freeswan / openswan / strongswan 。私が覚えているように、セットアップするのはかなり大変でした...
  • 標準化されていない[しかし本当に良い] sslvpn- openvpn 。セットアップはとても簡単です。

2つ目は本当に素晴らしいです、私はそれを本番環境で数年間使用しています。標準パッケージとしてdebianで利用できます。それは数十メガビットの容量に対して非常にうまく機能します[数百も同様ですが、私はオフィス間のそのような高速インターネット接続を持っていません]

openvpnのヒント:

  • より安全にするために、 '共有秘密' タイプのキーを使用せず、 証明書権限を作成し、によって署名されたキーを使用します代わりにit
  • 可能であれば、タップの代わりにtunモードを使用します[2つのイーサネットセグメントをブリッジする代わりにVPN経由でトラフィックをルーティングします]
  • 証明書機関のソリューションを利用する場合は、キーの有効期限が切れることに注意してください。キーを再生成するために、いくつかのリマインダーを自分で設定します。
  • 安全のために、opensvnに組み込まれているソフトウェアウォッチドッグを使用してください[ping-restartオプション] + openvpnプロセスが実行されているかどうかを周期的にチェックする追加の単純なbashスクリプトを配置します。 openpnは、過去3年間で約2回死亡しました。
  • [tcpの代わりに]可能な場合はいつでもudpを介したトンネリングを使用してください。 natの背後にあるオフィスからのvpnに問題がありました[Linuxボックスが安価なdlinkルーターの背後にあり、制御できませんでした]しばらくすると、udpパケットがブロックされました。その場合、tcpを使用せざるを得ませんでした。
  • ファイアウォール/ natsの背後からopenvpnをお楽しみください。一方の側にパブリックIPがあり、一方のポートでtcpまたはudpを介して到達できる限り、vpnを確立でき、もう一方のノードにはパブリックIPが必要ありません。
12
pQd

真のIPsecは頭痛の種に他なりません。プロトコルは、さまざまなネットワークトポロジ間でつまずきます。 OSが何であれ、クライアントは普遍的に不足しています。 IPsecのみを実行するハードウェアエンドポイントが必要な場合を除いて、絶対に避けてください。

ただし、OpenVPNはセットアップが簡単で、確実に使用でき、Linux、Windows、Mac用の非常に直感的なクライアントを備えています。

新しいユーザーをどのように管理し、古いユーザーを取り消すかを検討してください。これは、サポートを期待しているユーザーの数によって異なります。個人的には、2要素トークンに配置されたx509証明書を使用します。これは非常に拡張性がありますが、成長した場合はPKIを管理するための何らかの方法が必要です。

4
Dan Carley

私が見ておくことをお勧めできる2つのツールは、OpenVPN(前述)とAdito(最近、OpenVPN ALSに名前が変更されました)です。 http://sourceforge.net/projects/adito/http://adito.wiki.sourceforge.net/

1
Niels Basjes

ここでOpenVPNへの別の投票。以前の仕事で使用しましたが、堅実で、現在の仕事で使用しているPPTPおよびIPSECVPNトンネルと比較して問題が少なかったです。また、OpenVPNが提供する柔軟性に勝るものはありません。しかし、私の意見では、OpenVPNには1つの弱点があります。現在、多くのスマートフォンではサポートされていません。実際、私はそれが何であるかを知りません。 iPhoneに移植しようとしている人がいることは知っていますが、そのプロジェクトがどこにあるのかわかりません。

VPNソリューションがサポートする必要のあるクライアントの種類については言及していません。したがって、サードパーティのクライアントを回避する必要がある場合、またはスマートフォンのサポートが必要な場合は、PPTPの方が適している可能性があります。 Windows、OSX、および多くのスマートフォンにはすべて、ネイティブのPPTPクライアントがあります。 Poptopは、PPTPを実装するLinuxプロジェクトです。

1
3dinfluence

非常に柔軟で十分に文書化されたソリューションの1つがOpenVPNです( http://openvpn.net/ )これはUbuntuの標準リポジトリからパッケージとして入手でき、Debianにもあるはずです。

0

私は会社でOpenVPNを約2年間使用しています。問題はほとんどありませんでした。

クライアント固有の構成を使用して、さまざまなサブネットワークのユーザーにIPを割り当てています。それ以降、ファイアウォールのおかげで内部リソースへのアクセスを制限できます。

あまり快適ではないのは、PKI管理です(クライアントの認証には証明書を使用します)。しかし、2つまたは3つのスクリプトを使用すると、これは耐えられるようになります。

0
rolaf