メモのページ - チラシの裏メモ 3枚目

通信技術や気になった事を黙々とメモし続ける

OpenBSDにリプレース完了

Androidタブレット内でゲストOSとして古いDebian GNU/LinuxやMINIXを今まで動かし続けていたが、全てOpenBSDにリプレースした。
NetBSDや過去に使っていたFreeBSDではなくOpenBSDを選んだ理由は、強固なセキュリティ、Alpine Linuxより動作が軽い、今も活発に開発が継続されているの3点。
今年の3月には、AndroidタブレットであるNexus 7(2013)とVASTKING KingPad SA8のゲストOSとしてOpenBSDを導入しkshのコマンドをぽちぽち打って遊んでいたが、5月に入ってからログインシェルをbashに変更、SFTPの設定を有効にし、今月より家庭内SFTPサーバとして稼働を開始した。


OpenBSDとは
OpenBSDは、Berkeley Software Distribution(BSD)に基づく、セキュリティに重点を置いた、無料のオープンソースのUnixライクなオペレーティングシステム。
Theo de Raadt氏が1995年にNetBSDをフォークしてOpenBSDを立ち上げた。
OpenBSDのサイトによると、OpenBSDプロジェクトは「移植性、標準化、正確性、プロアクティブなセキュリティ、統合された暗号化」を強調している。
LinuxやWindows ServerやAIX等と比較するとマイナーなOSだが、実環境ではたまに出くわす。かつて自分が常駐していた所では開発環境・商用環境共にOpenBSDでWebサーバを動かしていた。
OpenBSDは、バージョン毎にOSだけでなくリリースソングやポスターも公開されている。(下記のリンク先参照)


Androidタブレットへの導入
Android側でisoファイルからのインストールは可能だが、PCのVirtualBoxにデプロイしたものをqcow2ファイルに変換し、Android側に移してLimbo PC Emulatorで動かす方が楽である。
Android側に移す前に、bashやcurlやvim等は予めインストールしておく。SFTPサーバとして稼働させるのであれば以下で充分である。

# export PKG_PATH=https://ftp.nluug.nl/OpenBSD/6.5/packages/i386
# pkg_add bash vim curl

 
自分の場合、起動に要する時間やコマンドを打った際の反応などが許容範囲内に収まり、且つdoasコマンドが打ててrcctlコマンドでサービス管理が出来るバージョンである6.5と5.8を導入。ついでに動作がやや軽快なバージョン3.8と4.8も導入した。
FTPサーバはvsftpdではなくSFTPを採用。
デフォルトのシェルはkshである為、後からbashをインストールしログインシェルに設定。
スマホでの動作について。SONY Xperia 1では快適に動作する。しかしOpenBSDのコンソールフォントのサイズの変更は出来ずスマホの小さな画面では文字が読み辛い為、画面が小さいスマホへの導入は見送った。
2022/5/19追記:バージョン6.5では動作が重たい為、以前入れていた5.8に戻した。
 
 
Limbo PC Emulatorの設定
OpenBSDのqcow2ファイルをAndroid側に移したら、Limbo PC Emulatorの設定に入る。Androidのroot化は不要。

CPU/Board
Architecture:x86 ※64bit版の場合はx86_64を選択。
Machine Type:pc
CPU Model:qemu64
CPU Cores:1
RAM Memory (MB):400 (KingPad SA8では512MB)

Storage
Hard Disk A:OpenBSDのqcow2ファイルを選択。

Removable Storage
設定無し。

Graphics
VGA Display:vmware

Audio
Sound Card:None
CLIのみの運用、且つ利用目的がSFTPサーバである為にAudioは不要。

Network
Network:User
Network Card:pcnet
DNS Server:8.8.8.8のまま

Limbo PC Emulatorのデフォルト設定では、外部からのSSH接続やFTP接続は破棄する為、FTPのポートとSSHのポートを明示的に指定し穴をあける必要が有る。
Host Forwardの欄内に以下を入力。
ポート番号設定の左側の値(22221と22222)は外部から見えるポート番号(ホストOS側のポート番号)、右側の値(22と21)は内部の(ゲストOS側の)ポート番号。
外部側と内部側のポート番号を同一に設定する事は出来ない為、以下のように変える必要が有る。

hostfwd=tcp::22221-:21,hostfwd=tcp::22222-:22

 
Boot Settings
Boot from Device:Hard Disk
Kernel:None
Initrd:None

User Interface
User Interface:SDL(Simple Direct media Layer)

Advanced
Disable HPETとDisable FD CheckとHigh Priorityにチェックを入れる。

上記のLimbo PC Emulatorの設定を終えた後、Limbo PC Emulatorの再生ボタン(三角ボタン)にタッチし、OpenBSDを立ち上げる。
OS起動途中の「reordering libraries」が遅すぎてイライラする場合、以下のコマンドを打って次回以降の起動の際にライブラリのリビルドをすっ飛ばす。

# rcctl disable library_aslr

OpenBSD 6.5 on Nexus7!!


 
 
2023/11/12追記
当記事を皮切りに、以下の環境にてOpenBSDが絶賛稼働中。
・Raspberry Pi3 Model B
・VirtualBox(MacBook Pro 2020、MacBook Air 2011)
・Limbo PC Emulator(VASTKING KingPad SA8)
・EeePC 701SD-X
 
 
リンク集など
OpenBSD
https://www.openbsd.org/

OpenBSDのisoファイルは以下よりダウンロード。(ミラーサイト一覧)
https://www.openbsd.org/ftp.html

古いバージョンはNLUUG(オランダのユーザ会)のサーバよりダウンロード。
https://ftp.nluug.nl/OpenBSD/6.5/i386/

リリースノート
https://www.openbsd.org/65.html

OpenBSDでは一部のバージョンを除きリリースソングが有る。
片手間の遊び程度と思う事なかれ。思っていた以上に本格的である。どこかで聴いた事があるような曲が散見されるのはご愛嬌。
全曲mp3形式とogg形式のファイルでダウンロード可能。
https://www.openbsd.org/lyrics.html

OpenBSDではバージョン毎にポスターやCD-ROMのジャケットが有る。
バージョン6.1以降は公式でインストールCD-ROMを出していないが、ジャケットやポスターは継続して作り続けられている。リリースソング同様、どこかで見たようなものが散見される。
https://www.openbsd.org/artwork.html

自分のお気に入りのポスターは以下のとおり。もう、バージョン5.8なんかほぼアレであるw
https://www.openbsd.org/images/Puffystock.gif OpenBSD 6.5
https://www.openbsd.org/images/poster34.jpg OpenBSD 5.8
https://www.openbsd.org/images/poster21.jpg OpenBSD 4.5

全て聴き終えた訳ではないが、自分はバージョン5.9や5.8のリリースソングがお気に入りである。
https://ftp.openbsd.org/pub/OpenBSD/songs/song59a.mp3 OpenBSD 5.9 "Doctor W^X"
https://ftp.openbsd.org/pub/OpenBSD/songs/song58a.mp3 OpenBSD 5.8 "20 years ago today"
https://ftp.openbsd.org/pub/OpenBSD/songs/song45.mp3 OpenBSD 4.5 "Games"


その他OpenBSDに関する情報
Why-OpenBSD.rocks
https://why-openbsd.rocks/fact/

OpenBSD Handbook
https://www.openbsdhandbook.com/