出来ますか? (この質問のタイトル)
グーグルVirtualization with one public IP address
何も役に立たない
私が持っているもの:
やりたいこと:
問題:
これは可能ですか?
申し訳ありませんが、このすべての初心者
調査
http://www.machine-unix.com/beginning-with-smartos/#comment-7256 私の問題は解決しません-ガイドは内部IPを設定します
http://blog.bgentil.fr/smartos-use-global-zone-as-gateway-for-guests.html
アイデア
はい、できます!
SmartOSの一般的なヘルプ:
GoogleはSmartOSをSolarisの同義語として扱います。常にsmartos.orgにある検索を使用してください。 Googleを直接使用しないでください。 Freenodeの#SmartOSとメーリングリストも貴重なリソースです。
データセンターでの単一のIPセットアップに関するセキュリティの懸念:
SmartOSには通常、管理インターフェイス(プライベート/ LAN)とパブリックインターフェイス(パブリック/ WAN)があります。展開ではこれが不可能な場合があることは承知していますが、KVM仮想ホストは管理インターフェイスで保護されていないVNCを実行することを知っておくことが非常に重要です。ファイアウォールを使用して、これを保護する必要があります。構成の変更。
ファイアウォール、ゲートウェイ、ロードバランサーなどとして機能するゾーンを設定します。そのファイアウォールゾーンには、管理インターフェイスとWANに1つずつ、合計2つのNICがあります。すべてのゲストを、物理スイッチに接続するような仮想スイッチに配置できます。
IPは1つしかないので、修正しようとします。これをゾーンに設定するのは難しい場合があります。ネットワーク構成を台無しにすると、マシンにアクセスできなくなる可能性があります。通常はお勧めしませんが、グローバルゾーンでファイアウォールを実行する必要がある場合があります。
ゲストがインターネットにアクセスできるようにするには、NATを設定します:http://wiki.smartos.org/display/DOC/ NAT + using + Etherstubs
着信https/httpの場合:nginxインスタンスを実行し、sites-available/sites-enabledフォルダー内の各サービス/ Webサイトのファイルを使用します。 SmartOSを使用したNGINXのデフォルト構成は最小限であり、これらのフォルダーは含まれません。
着信tcp/udpサービスの場合:ファイアウォールゾーンで組み込みのファイアウォール(man fwadmを参照)を使用するか、必要に応じてHAProxyを使用できます仮想ホスト。 (HAProxyを排他的に使用し、NGINXを排除することができます)
このために再現可能な要点を設定しました ここ 。パーマリンクを使用してgithubでセットアップされ、適切な変更が加えられたときに最新の状態に保つので、すぐにどこにも行くことはないはずです。
まず、達成したいことの図:
+------------------------------+
| Host |
+----------+ | +--------+ +--------+ |
| Internet +------+ Ext IF +--------+ Int IF | |
+----------+ | | e1000g | | gw0 | |
| +--------+ +---+----+ |
| | |
| +--+-----------+ | |
| |Z1| VNIC1+-----+ |
| +--------------+ | |
| +--------------+ | |
| |Z2| VNIC2+-----+ |
| +--------------+ | |
| +--------------+ | |
| |Z3| VNIC3+-----+ |
| +--+-----------+ |
| |
+------------------------------+
一般に、SmartOSでNATされた内部ネットワークをセットアップする方法は1つないことを最初に理解する必要がありますが、すべてのことがいくつかあります。メソッドは取り組む必要があります。これらの概要は次のとおりです。
rdr
と外部ポートマッピングを使用することです(ゲートウェイは、内部デバイスから別の外部ポートにアウトバウンドポートをマップし、その状態を追跡するため、リターンパケットは必要な内部IP)は、map
行で実現されます。私はジェフリーの答えにほとんど同意します。
しかし、私はその特定の目的(1つのパブリックIPでsmartosを実行する)のために あなたが言及した投稿 を書いたので、私の手順を適用した場合の私の提案をここに示します。
http/httpsトラフィック:
/etc/ipf/ipnat.conf(またはNAT/opt/custom/share/svc/smartos_setup.shのセクション)にポートリダイレクトを追加します
rdr e1000g0 0/0 port 80 -> 10.0.0.2 port 80 tcp
/etc/ipf/ipf.conf(または/opt/custom/share/svc/smartos_setup.shのFWセクション)にファイアウォールルールを追加します
pass in quick on e1000g0 from any to e1000g0/32 port=80
pass in quick on e1000g0 from any to 10.0.0.2 port=80
Ipfilterおよびipnatルールを再ロードします。
$ ipf -Fa -f /etc/ipf/ipf.conf
$ ipnat -FC -f /etc/ipf/ipnat.conf
sshトラフィック:
上記と同じですが、ポート2222が10.0.0.2:22にリダイレクトされ、10.0.0.3:22の場合は2223にリダイレクトされます。
rdr e1000g0 0/0 port 2222 -> 10.0.0.2 port 22 tcp
rdr e1000g0 0/0 port 2223 -> 10.0.0.3 port 22 tcp
必要に応じて、ゾーン/ etc/ssh/sshd_configでrootログインが有効になっていることを確認してください(PermitRootLogin yes)