web-dev-qa-db-ja.com

ルートサーバー上のvmwareesxiホストを保護する方法は?

私の場合、vmwareマシンには通常2つのLANインターフェイスがあります。1つはLANまたは管理コンピュータに接続され、もう1つはパブリックアクセス用のWANインターフェイスに接続されています。

そのため、vmwareの「パブリックネットワークカード」の前にファイアウォールを配置し、「プライベートネットワークカード」を介してのみ管理インターフェイスにアクセスできるようにすることで、セキュリティが確保されます。

しかし、サーバーの前にファイアウォールがなく、サーバーの前に(私にとってはアクセス可能な)ルーティングがなく、複数のネットワークインターフェイスがない、複数のパブリックIPを持つ通常の専用ルートサーバーにvmware esxi 5.0をインストールする場合、セキュリティを確保するにはどうすればよいですか?

ファイアウォールに関する記事を見つけました: http://www.virtualizationadmin.com/articles-tutorials/vmware-esx-and-vsphere-articles/networking/understanding-vmware-esx-server-security-profiles。 html

しかし、どのIPでポートが開いていますか?すべてのパブリックIPにバインドされていますか?管理インターフェイスを特定のIPにバインドできますか? 1つのIPを管理インターフェイスにバインドし、残りを1つ以上の仮想マシンにバインドする方法は?

esxi内にvlanを作成し、ルーティングvm上にvpnを構築し、管理コンソールにvpnからのIPでのみアクセスできるようにすることを考えましたが、ロックアウトする方法を少し試しました。

ヒントはありますか?

編集:ルートサーバーのようなもの:server4you.com/root-server vmwareがインストールされ、インターネットに「直接」接続されている単一のサーバー->直接攻撃可能、十分に保護されたLANではない

edit2:第一言語として英語を持っていない人は、おそらくあなたとは異なる「ルートサーバー」のようなものを定義することを覚えておいてください。質問にコメントして、質問をより明確にする方法について何か書いてください。

おそらくこの言い回しの方が良いでしょう:ネットワークカードが1つだけで、インターネットに直接接続されているvmware esxi5.0サーバーを安全にする方法は?

そのようにネットに接続されたesxiを保護した経験はありません。kvmやvserverのような仮想化を実行する場合は、ホストサーバーをiptablesファイアウォールで保護し、そこでルーティングを処理するだけで、かなり簡単です。

私はそれをグーグルで検索する私の問題についての良い情報を見つけられませんでした、それは非常に特別な問題です、仮想化がどのようにvmwareサーバーのクラスター全体を持ち、しばしばそれらの前に1つのファイアウォールだけではないのですか?.

そのため、追加のファイアウォールと単一のネットワークインターフェイスなしで単一のvmwareesxiホストを保護する必要はありません。他の人は仮想化しないか、セキュリティを気にしないかもしれません。

だから私は反対派に尋ねます、この質問はとても悪いですか?

3
c33s

だからc33s、私はこのトピックを自分で調べた後あなたのための答えを持っています:-)

eSXi 4の4つの手順を説明します(5でも機能するはずです)。 ESXi 5では、VMwareにパケットフィルターが含まれていました(このトピックについては、Googleで多く見つける必要があります)。

始めましょう。まず、ESXiへのSSHアクセスが必要です。ルートサーバーの状況を少し改善するための4つのステップは次のとおりです。

1)ESXiウェルカム画面を削除します:https:// your-esxi / へのリクエストには、その方法を説明するページが表示されますESXiの使用を開始します。誰もあなたを除いて今これをする必要はありません。それでそれを読んで、その後ファイルの名前を変更してください:

mv /usr/lib/vmware/hostd/docroot/index.html /usr/lib/vmware/hostd/docroot/index.html.bak

2)sshでのauth_keyログインのみを許可して管理マシンのSSH auth_keyを生成します(テキストではさらに「YOUR-SSH-RSA」と呼びます)。 ESXiでこのコードを実行して、セットアップを確認します

mkdir /.ssh
chmod 0600 -R /.ssh
echo "YOUR-SSH-RSA" >> /.ssh/authorized_keys

ログインが機能するかどうかを確認します。もしそうなら、あなたはこれらの行をrc.localに入れることができます

vi /etc/rc.local

ESXiは再起動後にこれを忘れるため、これが必要になります。パスワードログインを無効にするには、次の手順を実行します。

vi /etc/inetd.conf

次の行にパラメータ-sを追加します。

ssh stream tcp nowait root /sbin/dropbearmulti dropbear ++min=0,swap,group=Shell -i -K60
ssh stream tcp6 nowait root /sbin/dropbearmulti dropbear ++min=0,swap,group=Shell -i -K60

後で次のようになります。

ssh stream tcp nowait root /sbin/dropbearmulti dropbear ++min=0,swap,group=Shell -s -i -K60
ssh stream tcp6 nowait root /sbin/dropbearmulti dropbear ++min=0,swap,group=Shell -s -i -K60

有効にするには、再起動(または少なくともinetdの再起動)が必要です。

3)SSHのデフォルトポートを変更します

vi /etc/services

検索する

ssh             22/tcp                         # SSH Remote Login Protocol
ssh             22/udp                         # SSH Remote Login Protocol

ポート22を好きなように変更します。他のポートとの競合に注意してください!

有効にするには、再起動(または少なくともinetdの再起動)が必要です。

4)ルーティングの変更ESXi 4にはパケットフィルターがないため、ルーティングを変更する必要があり、全員と話す方法がわかりません。ルーティングを間違えると、ESXi-Managementにローカルコンソールからしか到達できない可能性があるため、これは少し危険です。 ESXiの管理元となる静的IPまたは既知のネットワークが必要です。これにルートを追加し、後でデフォルトルートを削除します。

esxcfg-route -a x.x.x.x/sub y.y.y.y

ここで、「x.x.x.x」はネットワークまたはIPです。サブネットマスクを「サブ」します。ゲートウェイを「y.y.y.y」します。

たとえば、デフォルトゲートウェイ12.34.56.78を備えたESXiがあり、単一のIP98.76.54.21のみを追加したい場合、コマンドは次のようになります。

esxcfg-route -a 98.76.54.21/32 12.34.56.78

ルートが正しく設定されているかどうかを確認します。

esxcfg-route -l

もしそうなら、デフォルトルートを削除します

esxcfg-route -d default y.y.y.y

すべてが正しく行われた後でも、ESXiに到達するはずです。そうでない場合は、ローカルにログインしてすべてを元に戻す必要があります。

2
Mose