アスタリスクベースの政府通信!

ターンテーブル


画像



「ターンテーブル」は、ソ連の政党と政府の電話通信の閉鎖システムです。



もともとは、クレムリンの内部電話交換としてウラジミールレーニンの指示で作成されました。 「Turntable」と呼ばれたのは、通常の電話ネットワークとは異なり、当時は接続がオペレーターを介していたため、加入者はPBXとディスクダイヤラーを使用して相互に接続していました(「Turntable」)。



このシステムは大幅に拡張され、政府や軍事通信の他のシステムへのアクセスも提供されました。これらのシステムは、人々の間では「ピンホイール」とも呼ばれますが、正式には:



ATS-1-最高のカテゴリーの加入者のための最も権威のある通信システム-州の最初の人、大臣。



ATS-2は、市政府のコミュニケーションのより広いネットワークです。



風車はソビエト時代の重要なステータスシンボルでした。 政府の電話交換の定期的にアップグレードされたシステムは、現在まで動作し続けています。



「ターンテーブル」は、秘密の交渉を行うためのものではありませんが、モバイル無線電話(「コーカサス」)などを含む長期暗号強度の安全な通信の他の政府システムにリンクされています。



画像



1922 F. E. Dzerzhinskyによる「ターンテーブル」の電話番号は007です。



私たちの時代のアスタリスク+ OpenVPN「政府通信」!


OpenVPNを使用した暗号化を使用して、安全な通信チャネルを介してオフィス間のデータ転送を整理することができます。



さらに、ブランチを1つの番号スペースに結合してアスタリスクに接続する場合、多くの場合、NATのセットアップと干渉なしで音声トラフィックを渡すことに問題があります。



これらの問題は、OpenVPNを使用してオフィスを結合することにより解決されます。



画像



加入者デバイスとして、OpenVPNとの連携をサポートするYealinkなどのIP電話を使用することをお勧めします。 これは、VPNをサポートする高価なゲートウェイを使用せずに、VPNトンネルとオフィス間の暗号化を構成できる理想的なスキームです。



OpenVPNを使用する利点


追加のオフィスをアスタリスクに接続しやすく、NATに問題がない。



安全な通信チャネルで作業します。 オフィス間のすべてのトラフィックは、「7つのロック」の下、またはOpenSSLライブラリの保護下にあります。 このおかげで、このライブラリで利用可能な暗号のセット全体が関係しています。 HMACバッチ認証を使用して、セキュリティを強化し、ハードウェアアクセラレーションを使用して暗号化パフォーマンスを向上させることもできます。



OpenVPNをインストールする


1. swupdate.openvpn.net/community/releases/openvpn-2.1.4.tar.gzでOpenVPNディストリビューションをダウンロードします。



wget swupdate.openvpn.net/community/releases/openvpn-2.1.4.tar.gz



アーカイブを解凍します。



tar -xf openvpn-2.1.4.tar.gz



2.必要なLZO圧縮ライブラリをダウンロードします。これは、www.oberhumer.com / opensource / lzo / download / lzo-2.04.tar.gzでデータストリームを圧縮するために必要です。



wget www.oberhumer.com/opensource/lzo/download/lzo-2.04.tar.gz



アーカイブを解凍します。



tar -xf openvpn-2.1.4.tar.gz



3. gcc.i386ライブラリもインストールする必要があります

リポジトリからインストールします。



yum install gcc.i386



おそらく、このライブラリはすでにインストールされており、yum list | grep gcc.i386コマンドで確認できます。 次のようになります。



gcc.i386 4.1.2-48.el5がインストールされている

libgcc.i386 4.1.2-48.el5がインストールされている



このライブラリがインストールされていない状態でOpenVPNを直接インストールしようとすると、コンパイル中にエラーが発生します。



configure:エラー:$ PATHに受け入れ可能なCコンパイラが見つかりません



4.解凍されたアーカイブからLZOをインストールします(セクション2を参照)。



cd ... / lzo-2.04

./configure

作る

インストールする



5.解凍したフォルダーからOpenVPN自体を直接インストールします(ポイント1を参照)。



cd ... / openvpn-2.1.4

./configure

作る

インストールする



6.便宜上、OpenVPNに必要なすべてのフォルダーを作成し(インストール中、これらのフォルダーは自動的に作成されません)、そこに必要なファイルを解凍されたアーカイブからコピーします(ポイント1を参照)。



mkdir / etc / openvpn

cp ... / openvpn-2.1.4 / easy-rsa / 2.0 / * / etc / openvpn

mkdir / etc / openvpn / keys-証明書とキー用のフォルダーを作成します



7.必要に応じて、必要なパラメーターに従ってファイル/ etc / openvpn / varsを編集し、キーを生成するたびに同じパラメーターを再度入力しないようにします。



8. varsファイルから変数をエクスポートし、既存のキーをすべて削除します。



cd / etc / openvpn

ソース./vars

./clean-all



9.証明サーバー(CA)の秘密キーと証明書生成するか、別の方法で呼び出します。これに基づいて他のすべてのキー(VPNサーバーのキーと証明書、VPNクライアントのキーと証明書)が作成されます通常のPKIメカニズム(公開鍵インフラストラクチャ)を使用します。



./build-ca



10.サーバーの秘密鍵と証明書生成します。



./build-key-server name



11.クライアントの秘密鍵と証明書生成します。



./build-key client1



12. VPNトンネルを確立するときにキー認証メカニズムで使用されるDiffie-Hellmanアルゴリズムを使用して、1024ビットキー生成します。 このキーはサーバーに残ります。

Diffie-Hellmanアルゴリズム(DH、Diffie-Hellman)は、2つのパーティが、リスニングから保護されていないがスプーフィングから保護されている通信チャネルを使用して共有秘密鍵を取得できるようにするアルゴリズムです。



./build-dh



13. (オプション)VPNトンネルが確立される前であっても、チャネルの予備保護のために対称TLSキーを生成します。 このキーは対称であり、サーバーとクライアントの両方に配置する必要があります。 フォルダー/ etc / openvpn / keys /に生成します



openvpn --genkey --secret ./ta.key



-作成されたすべてのキー、証明書、およびサーバー側の要求は、/ etc / openvpn / keysフォルダーに配置されます(他の場所で生成された場合)。 クライアントキーと証明書は、安全な方法でクライアントマシンに送信されます。 さらに、証明書ごとに秘密鍵と証明書要求ファイルがあります。



* .key-秘密鍵。

* .csr-証明書リクエスト。

* .crt-証明書。



理想的には、クライアントの秘密キーはサーバーで生成されてからクライアントに送信されるべきではありませんが、インストールされている暗号化プロバイダーを使用してクライアント自体で生成される必要があります(たとえば、レジ​​ストリ、スマートカード、またはフラッシュドライブが秘密キーストレージとして使用されます)。 次に、生成された秘密キーに基づいて証明書要求ファイルが作成されます。この秘密キーは、ネットワーク経由で認証サーバー(認証機関)に既に送信され、生成された証明書はネットワーク経由で送信されます。 (証明書要求ファイルと暗号化証明書自体は秘密鍵のない値を構成しないため、安全でない通信チャネルで送信できます)。



-14 .例のserver.conf VPNサーバー構成ファイルを解凍したフォルダー(ポイント1を参照)から/ etc / openvpn battleフォルダーにコピーします。



cp ..... / openvpn-2.1.4 / sample-config-files / server.conf /etc/openvpn/server.conf



必要なパラメーターを編集します。



vi /etc/openvpn/server.conf



15.解凍したフォルダー(ポイント1を参照)から/ etc / openvpnバトルフォルダーにOpenVPNを開始および停止するスクリプトの例をコピーし、好みに応じて編集します。



cp ..... / openvpn-2.1.4 / sample-config-files / openvpn-startup.sh / etc / openvpn



16. OpenVPNサーバーを実行します。



/etc/openvpn/openvpn-startup.sh



そして、サービスが開始したかどうかを確認します。



netstat -luntp | grep openvp



この時点で、サーバー部分は完成しました。



次の記事でYealink IP Phoneのセットアップを検討します。



All Articles