私の会社には、クラウド内の Python ソース コードの変更を追跡するために使用したい社内 SVN サーバー (VisualSVN) があります。ec2 インスタンスは Linux SVN クライアントを使用します。IPSec VPN を使用してホーム ネットワークに自動的に接続し、必要な SVN コマンドを実行してから VPN 接続を閉じるような設定をしたいと考えています。
懸念事項の 1 つは、EC2 と内部ネットワークの両方が 10 を使用していることです。。.* IP 範囲。VPN が接続されると、ネットワーク上の 1 つのサーバー (10.0.0.8) に接続するだけで済みます。誤ってルーティング テーブルを変更し、サーバーを完全に台無しにしてしまうのではないかと心配です。
現在、EC2 で Fedora を使用していますが、すぐに利用できるソリューションがあればディストリビューションの変更を検討します。
SVN コマンドを取得し、VPN 接続を作成し、ルーティング テーブルを設定し、SVN コマンドを実行し、完了したら VPN 接続を切断する方法を示すサンプル スクリプトを提供してくれる人はいますか?
よろしくお願いします。ラス・ライバ
編集: SSH 経由の SVN を提案している方へ。私は以前それを使用したことがあり、うまく機能しています。
バックアップしたいソースコードを含む EC2 サーバーは仕事用ネットワークの外部にあるため、ネットワーク内の SVN サーバーにアクセスするには IPSec が必要ではないでしょうか?
それとも、SSH は IPSec ファイアウォールを通過しますか? 作業用 SVN サーバーも Windows を実行しているため、私の知る限り、SSH サーバーは実行されていません。
答え1
IPSec VPN ではなく、svn+ssh を使用するのはいかがでしょうか。これについて言及するのは、IP への ssh は VPN アクセスを設定するよりもはるかに簡単だからです。サーバーのランダム ポートをアドバタイズし、内部サーバーに転送するだけです。
10.xxx ネットワーク (10.1.1.0/24 など) に単一のルートを追加しても、サーバーが台無しになることはありません。インターネットへのトラフィックは常にデフォルトのルートに送られます。
完全なスクリプトを提供することはできませんが、ssh キーを設定して svn+ssh を使用することをお勧めします。はるかに簡単で、ディストリビューションを変更したり、そのような大幅な変更を行う必要はありません。 :)
編集: ソースが仕事に関係している場合、私の意見では、IT 部門はセキュリティを維持しながらこれをできるだけ簡単にする義務があります。VPN サーバーとは何ですか? 一時的な接続を設定するのはかなり簡単なはずですが、使用している VPN の種類について詳しく知る必要があります。PPTP ですか?
IPSec ファイアウォールというものは存在しません。私の経験では、一般的にファイアウォールと呼ばれる汎用パケット フィルターがあるだけです。一般的に言えば、ファイアウォールは任意のポートを許可するために使用し、それ以外はデフォルトで拒否ルールを使用します。このためにポートを公開するのは非常に簡単で、プロセスの問題にすぎません。
また、サーバーが Windows を実行しているからといって、svnserve が実行されていないというわけではありません。リポジトリにどのようにアクセスしますか? URI の先頭のプロトコルは何ですか? svn://、http:// などです。