アーカイブ: : 5月, 2021

FreeBSDでletsencryptのメモ

FreeBSD-12.2でletsencryptを導入した。
環境はwebサーバ(apache24)
pkg install -y py37-certbot
apacheのモジュールは特に入れなかった。
証明書はwebrootで導入した。
この辺の記事は検索すればいっぱい出てくるが、FreeBSDに適した項目がある。
vi /etc/periodic.confに
weekly_certbot_enable=”YES”

通常はこの通りにすれば/etc/crontabのpriodic weeklyの設定が6ならば毎週土曜日の4時ごろに更新が行われる。
証明書の更新期限に達すれば自動更新される。
しかし、サーバソフトによってはrestartやreloadしないと証明書エラーになる。
py37-certbotをインストールすると/usr/local/etc/periodic/weekly内に500.certbot-3.7というスプリクトが配置されて
weekly_certbot_enable=”YES”で確認作業が行われる。
このスプリクトを読んでみるとPOST_HOOKとか書いてある。
その下に–pre-hook –post-hook -deploy-hookとあるので調べると以下の通り。
–pre-hook 証明書の更新の有無にかかわらず記述したサービスを更新前に停止する。
–post-hook 証明書の更新の有無にかかわらず記述したサービスを更新後に起動する。
–deploy-hook 証明書の更新が実行された後に記述したサービスを更新後に再起動する。
このスプリクトの中に直接記述してもよいが、weekly_certbot_deploy_hookを利用した方が良い感じに見える。
/etc/rc.confを書き換えるか/etc/defaults/rc.confを書き換えるか。に似てる。
なので/etc/periodic.confに以下を加えることにした。
weekly_certbot_deploy_hook=”apache24″
これで実行されると幸せになれる。

 

bhyveのインストール

インストールの概要
ハードウェア:Fujitsu TX1310 M1 Xeon E3-1226v3 2x1TB HDD 16GBメモリ
OS:FreeBSD 13.0-RELEASE
OSは通常インストール 今回はbiosがUFEI対応なのでBOOTをUEFIonlyに設定
windowsでisoをダウンロードしてrufusでUSBメモリに焼いた。
サーバを起動後F12を連打。boot menuからUSBメモリを選択して起動。
今まではキャラクター文字で描かれたBSDボール?がきれいなグラフィックで表示。
HDDは1TBx2なのでインストール先はzfsでmirrorを指定。
NTPdをオプションで指定。
再起動後、sshdのポートを変更して/etc/servicesのsshのポート番号を変更。リブート

bhyveの設定
kldload vmm
kldstatで確認
zfs create -o mountpoint=/usr/vm zroot/vm
vi /boot/loader.conf
vmm_load=”YES”

pkg install vm-bhyve
sysrc vm_enable=”YES”
sysrc vm_dir=”zfs:zroot/vm”
sysrc vm_list=””
sysrc vm_delay=”5″

vm init
cp /usr/local/share/examples/vm-bhyve/* /usr/vm/.templates/

今回はNICが2個あり管理用のプライベートネットワーク用がem0
仮想ホスト用のグローバルネットワーク用がigb0
igb0には仮のアドレスが必要
今回は利用できるグローバルアドレス中の最後のアドレスをigb0に割り当てる。
gwアドレスが無いので外部からアクセスできないはず。
vm switch create public
vm switch add public igb0
vm iso ftp://ftp.jp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/ISO-IMAGES/13.0/FreeBSD-13.0-RELEASE-amd64-dvd1.iso

基本インスタンスの作成
vm create -t default -s 100g vmbase

vm configure vmbase
メモリなどの容量を決める

インストール作業
vm install vmbase FreeBSD-13.0-RELEASE-amd64-dvd1.iso

確認
vm list

コンソールからのインストール作業
vm console vmbase

IPアドレスは仮にする。
インストール終了後、~.でコンソール終了
このインスタンスをコピーして新規インスタンスを作成してサイト作成。
基本インストールが終了している状態なので追加の設定してすぐに利用できる。
できればweb用やmail用のインスタンスを作成しておけば楽だと思います。