Opensenseをメインルーターとして使っていますが、やっぱりLinux製のほうが中で何が動いているのか把握しやすいです。そのためメンテナンスがしやすいOpnsenseからVyosに切り替える準備をしていこうと思います。OpnsenseでFirewallの学習もできたのでそれも活かします。
前提の環境準備
dockerを準備します。OSはdockerが動けば何でも。 今回はubuntu 20.04でやります。 特にバージョン指定もないので、スクリプトで最新をささっと入れましょう。
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
毎回sudoもめんどくさいので消しときます。
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
これでいいでしょう。 あとはgitも入っているか確認しましょう。リポジトリから複製するのに使います。
sudo apt update
sudo apt install git
あとはvyosのドキュメントの手順に沿っていきます。
ビルド環境を作成していく
リポジトリをクローンします。 1.3の環境を作ってるので
git clone -b equuleus --single-branch https://github.com/vyos/vyos-build
cd vyos-build
コンテナはDockerHubから持ってくると最新を保ってくれるみたいなのでそっちを使います。まあコンテナ作成の速度の面でもこっちが便利でしょう。
docker pull vyos/vyos-build:equuleus
ios作成には常にコンテナを最新にしてビルドできるようにスクリプトを作ると便利みたいです。そうしましょう。 .bash_aliasesに以下を追記していきます。
alias vybld='docker pull vyos/vyos-build:equuleus && docker run --rm -it \
-v "$(pwd)":/vyos \
-v "$HOME/.gitconfig":/etc/gitconfig \
-v "$HOME/.bash_aliases":/home/vyos_bld/.bash_aliases \
-v "$HOME/.bashrc":/home/vyos_bld/.bashrc \
-w /vyos --privileged --sysctl net.ipv6.conf.lo.disable_ipv6=0 \
-e GOSU_UID=$(id -u) -e GOSU_GID=$(id -g) \
vyos/vyos-build:equuleus bash'
bashを読み直しましょう。
source .bashrc
最後にvyos-buildフォルダーでaliasを入力しましょう。
vybld
これで環境を作成して環境に入ることができました。 あとはカスタマイズをしてisoを作成しましょう。
isoの作成
カスタマイズの./configureについてはドキュメント参照してください。 LTSを作成するなら別にいじる必要もない気もしますが。
./configure --architecture amd64 --build-by "damilab"
sudo make iso
パッとできるわけではないのでボケーっと待ちます。
終わると、buildフォルダーに「live-image-amd64.hybrid.iso」として出力されます。 最後に元のコンソールに戻りましょう。
exit
次回はこれをインストールしましょう。