さくらのクラウドで仮想ルーターを作成する(Vyatta)

さくらのクラウドを個人的にはよく使わせていただいています。今回仮想ルーターをさくらのクラウドで作成してWEBサイトのセキュリティーを高めてみたいと思います。
引用元:[さくらのクラウド] さくらのクラウドで月1900円の固定IP環境を構築する

使うOS

今回使うOSは仮想ルーターとしてよく使われるVyatta(ヴィヤッタ)を使います。ルーター機能に特化しているため、標準でVPN、ファイアウォールなどがついています。

イメージ

logw_title_ip

イメージとしてはこんな感じになります。自宅のPCはインターネットさえ繋がればいいので固定IPにする必要性はありません。vyattaとVPN接続ができれば良いです。

さくらのクラウドにログイン

logw_title_sakura_cloud

まずはさくらのクラウドにログインします。VyattaはさくらのクラウドしかつくれないのでVPS契約しても作成はできません。ISOアップロードはできるので行ってよいかはさくらインターネットに確認してください。

サーバー一覧から追加をクリック

logw_title_severadd

サーバーの一覧から追加をクリックします。

Vyattaを作成

logw_title_vyatta

Vyattaを作成していきます。

  • 名前:好きな名前を入れてください
  • 説明:作成するサーバーの説明を入れてください。
  • タグ:空欄でも可
  • アイコン:特に設定しなくても問題ありません。
  • CPU:1コアを選択します。
  • ディスク:作成のままにしておきます。
  • ディスクプラン:SSDがお勧めです。
  • ディスクインターフェース:そのままにしておきます。
  • ディスクソース:アーカイブを選択します。
  • アーカイブ選択:20GB Vyatta Core 6.5R1 32bitを選択します。
  • ディスクサイズ:20GB。
  • ディスク修正:はい
  • ホスト名:好きな名前を入れてください。いれなくても可
  • パスワード:8文字以上でいれください。
  • 公開鍵:なし。
  • スタートアップスクリプト:なし
  • ISOイメージ:Vyatta Core
  • NIC:インターネットに接続
  • インターネットに接続:1IP共有セグメント/100Mbpsベストエフォート

とします。

img_sakura_cloudserver_vyatta
※画像はクリックで拡大します。

Vyattaの確認

logw_title_vyatta_down

サーバーの作成が終わったら一覧の情報から確認できます。作成後は電源がきれた状態になります。

img_vyatta
※画像はクリックで拡大します。

情報一覧が表示されたらNICのタブをクリックします。

NICの追加

logw_title_vyatta_nic

今度はNICの追加をします。Vyattaの現在の状態はeth0があり、eth1がないのでeth1を追加することになります。eth0=グルーバルIPアドレスになります。このIPで接続するということです。eth1=ローカルIPアドレスになります。このアドレスはVPN接続一番上の図でいうとこのクライアントマシンとvyattaを繫ぐことになります。

img_vyatta_nic002
※画像はクリックで拡大します。

NICの追加をします。コンソール画面の追加をクリックします。特になにも設定する必要はありません。

img_vyatta_nic003
※画像はクリックで拡大します。

追加された状態になります。この状態になれば完璧です!

サーバーを起動

電源を押して起動させます。ダウンとなっているとこを起動にすれば起動します。

コンソール画面でちょっと操作

ここからはコンソール画面での操作になります。ちょっと慣れないですが頑張ってください。SSHのサービスを起動すればターミナルやPuttyからでもアクセスできます。

img_console
※画像はクリックで拡大します。

Vyattaの設定

Vyatta login: に「vyatta」と入力し、Password: に仮想サーバ作成時にVyattaのパスワードを入力します。

ログインが成功すると vyatta@vyatta:~$ と表示されます。これが表示されていればとりあえずOKです。このモードでは一般モードとよばれるモードなのでVPNの設定などはできません。ここで設定をします。

configureコマンド

configureと入力すると、vyatta@vyatta#と表示されます。この表示になれば設定ができるようになります。

eth1設定

ローカルIPとなるeth1は設定されておりません。ここで設定をします。

set interface ethernet eth1 address 10.200.0.1/24

ポイント:10.200.0.1/24という箇所がローカルIPとなります。ここは任意で設定できます。

NATの設定

VPN接続に必要な設定を行います。

set nat source rule 999 outbound-interface eth0
set nat source rule 999 translation address masquerade

VPN(L2TP/IPSecの設定)

VPNを設定します。ここで使うVPNはL2TP/IPSecというタイプのになります。

set vpn ipsec ipsec-interface interface eth0
set vpn ipsec nat-networks allowed-network 0.0.0.0/0
set vpn ipsec nat-traversal enable

edit vpn l2tp remote-access
set authentication local-users username (L2TPユーザー名) password (L2TPパスワード)
set authentication mode local
set client-ip-pool start 10.200.0.200
set client-ip-pool stop 10.200.0.230
set dns-server server-1 133.242.0.3
set dns-server server-2 133.242.0.4
set ipsec-settings authentication mode pre-shared-secret
set ipsec-settings authentication pre-shared-secret (IPsec事前共有鍵)
set mtu 1280
set outside-address 仮想サーバーグローバルIPアドレス
set outside-nexthop 仮想サーバーデフォルトゲートウェイ

設定の反映

Vyattaでは設定を行ったらcommitというコマンドを叩きます。このコマンドが設定を反映させることになります。

サーバーの再起動後でも設定を保存したままにする

commitコマンドは、サーバーが再起動したら設定が解除されてしまいます。この設定を解除されないようにするため、saveコマンドを入れます。これをすることでサーバーを再起動しても設定は維持されたままになります。