さくらVPSにVyOSインストール

1. さくらのVPS契約

IHANetへの接続形態については色々検討しました。当初、自宅の光回線固定IPアドレスの契約を行い、小型PCを購入しソフトウェアルータを動かす事を考えました。ただ、自宅で小型PC等の機器を24時間365日の連続稼働をさせたくないことや、ひかり電話が使えなくなるという理由で諦めました。

最終的にさくらインターネットVPS(仮想専用サーバー)を契約し、その上でソフトウェアルータを動かす事としました。ちなみにソフトウェアルータとしては、当面の間はVyOSを利用し、その後、CentOS + FRroutingに変えたいと思っています(私のLinuxスキルが向上次第、移行します)。

なお、契約したさくらのVPSは、VyOSが稼働できれば良いので最小構成のモノを選択しました。月額685円で利用できるのでお得感がありますね。

項目 スペック
CPU 仮想1Core
メモリ 512MB
ストレージ 20GB SSD
利用料金 初期費用:1,080円、月額:685円

2. さくらのVPS上でのVyOSインストール

さくらVPSのサイトに記載の案内を読む限りでは、利用可能なOSは事前に用意されている「標準OS」または「カスタムOS」しかないのではないか...と思ったのですが、以下のさくらVPSコントロールパネルの画面イメージの通り、アップロードした任意のISOイメージから仮想サーバを起動してインストールを行うことが可能です。

f:id:komo-jp:20180702224532p:plain

2-1. VyOSインストール

VyOSのサイトからイメージをダウンロードします。検証環境では、VMware用のOVAイメージを利用しましたが、今回はISOイメージをダウンロードします。そのISOイメージをさくらのVPSにSFTPでアップロード後、さくらVPSコントロールパネルからISOインストールを実行します。

起動後、VyOSにログインします。ログインユーザー名/Passwordは、共に"vyos"になります。 ログイン後、下記コマンドを実行します。

install image

2018/07/07:追記

仮想マシンの再起動を行うと、VyOSが正常に起動しないというトラブルに見舞われました。色々とネット上の情報を確認した所、インストール手順でディスクのパーティション指定をしなければならない事が分かりました。

ディスクのパーティションの仕様には、MBR(Master Boot Record)とGPT(GUID Patition Table)があり、さくらVPSではGPTとなっているところを、VyOSがサポートしているMBRに変更する必要があるようです。

  • インストール手順中、"Partition (Auto/Union/Parted/Skip) [Auto]:"と表示されたら、"Parted"と入力する。
  • Parted対象のドライブの選択。デフォルト値のままなのでEnterキーを押下する。
  • プロンプトが(parted)と表示されたら、mklabel msdosと入力する。
  • 対象ドライブのデータが消えること旨の警告が表示される。Enterキーを押下する。

再度、"install image"コマンドでインストールを実行しますが、今度"Partition (Auto/Union/Parted/Skip) [Auto]:"が表示された際は、[Auto]のままで結構ですので、そのままEnterキーを押下して下さい。

2-2. VyOS基本設定

インストール完了後にリブートを行います。起動後、VyOSの初期設定を行っていきます。

VyOSのインターネットに接続しているインターフェースは、eth0になります。eth0インターフェースにグローバルIPアドレスを割り当て、デフォルトゲートウェイDNSタイムゾーンSSH等の基本設定を下記の通り行います。なお、使用するグローバルIPアドレス、ネットマスク、ゲートウェイDNSサーバアドレスは、全てさくらVPSコントロールパネル上で確認できます。

configure

set system host-name VyOS

set interfaces ethernet eth0 address 160.xxx.xxx.xxx/16
set interfaces ethernet eth0 description Internet

set protocols static route 0.0.0.0/0 next-hop 160.xxx.xxx.xxx

set system name-server 210.188.xxx.xxx
set system name-server 210.188.xxx.xxx
set system time-zone Asia/Tokyo
set service ssh port 10022

commit
save
exit

これで基本的な設定は終了です。