OpenBSD
はじめに
[編集]OpenBSDは、セキュリティとコードの正確性を最優先に設計されたオープンソースのUNIX系オペレーティングシステムです。1995年にNetBSDから分岐して誕生し、そのモットー「Secure by default」が示す通り、デフォルトで高いセキュリティを提供します。OpenBSDは、ファイアウォール、VPN、暗号化ツールなど、セキュリティ関連のソフトウェア開発でも知られています。このハンドブックでは、OpenBSDの基本的な使い方から、その特徴や応用までを解説します。
OpenBSDの基本概念
[編集]OpenBSDの特徴
[編集]OpenBSDは、以下のような特徴を持っています。
- セキュリティ:
- OpenBSDは、デフォルトで高いセキュリティを提供します。コードの徹底的な監査とバグ修正が行われています。
- セキュリティホールを防ぐための多くの機能(例:
pledge、unveil)が実装されています。
- コードの正確性:
- OpenBSDは、コードの品質と正確性に重点を置いています。バグや脆弱性を減らすための厳格な開発プロセスが採用されています。
- ライセンス:
- OpenBSDは、BSDライセンスの下で提供されており、商用利用や改変が自由です。
- ドキュメント:
- OpenBSDは、高品質なマニュアルページ(manページ)とドキュメントを提供しています。これにより、ユーザーはシステムの詳細を容易に理解できます。
OpenBSDのインストール
[編集]インストールメディアの準備
[編集]OpenBSDのインストールには、公式サイトからインストールイメージをダウンロードします。ISOイメージやUSBインストーラを作成し、起動可能なメディアを準備します。
インストール手順
[編集]- インストールメディアからシステムを起動します。
- インストーラの指示に従い、言語、キーボードレイアウト、ディスクパーティションなどを設定します。
- ネットワーク設定を行い、必要なパッケージを選択します。
- インストールが完了したら、システムを再起動します。
基本的なシステム操作
[編集]ログインとシェル
[編集]OpenBSDのデフォルトシェルはKorn Shell(ksh)です。ログイン後、シェルプロンプトが表示されます。
$ echo $SHELL /bin/ksh
ユーザー管理
[編集]新しいユーザーを追加するには、useraddコマンドを使用します。
doas useradd -m -s /bin/ksh username doas passwd username
パッケージ管理
[編集]OpenBSDでは、pkg_addを使用してソフトウェアをインストールします。
doas pkg_add package_name
パッケージを削除するには、pkg_deleteを使用します。
doas pkg_delete package_name
ネットワーク設定
[編集]ネットワークインターフェースの設定
[編集]OpenBSDのネットワーク設定は、/etc/hostname.ifファイルで行います。例えば、em0インターフェースに静的IPアドレスを設定するには、以下のように記述します。
inet 192.168.1.100 255.255.255.0 192.168.1.255
設定を反映させるには、ネットワークインターフェースを再起動します。
doas sh /etc/netstart em0
ファイアウォールの設定
[編集]OpenBSDでは、pf(Packet Filter)を使用してファイアウォールを設定できます。/etc/pf.confファイルにルールを記述し、pfを有効にします。
doas pfctl -f /etc/pf.conf doas pfctl -e
システム管理
[編集]プロセス管理
[編集]実行中のプロセスを確認するには、psコマンドを使用します。
ps aux
特定のプロセスを終了するには、killコマンドを使用します。
doas kill -9 プロセス番号
ログの確認
[編集]システムログは、/var/log/ディレクトリに保存されます。dmesgコマンドでカーネルメッセージを確認できます。
dmesg | less
セキュリティ
[編集]ユーザー権限の管理
[編集]OpenBSDでは、doasを使用して特権コマンドを実行します。doasは、sudoと同様の機能を持ちながら、設定がシンプルでセキュリティ面での利点があります。doasを設定するには、/etc/doas.confファイルを編集します。
doas vidoas
以下は、doas.confの設定例です。
permit keepenv :wheel
この設定により、wheelグループのユーザーが特権コマンドを実行できるようになります。
セキュリティアップデート
[編集]OpenBSDのセキュリティアップデートは、定期的に提供されます。システムを最新の状態に保つために、以下のコマンドで更新します。
doas sysupgrade
カスタマイズとチューニング
[編集]カーネルの再構築
[編集]OpenBSDでは、カーネルをカスタマイズして再構築できます。カーネルソースを取得し、設定ファイルを編集します。
cd /usr/src/sys/arch/$(uname -m)/conf doas cp GENERIC MYKERNEL doas vi MYKERNEL
カーネルをビルドしてインストールします。
doas make build doas make install
起動サービスの管理
[編集]起動時に実行されるサービスは、/etc/rc.conf.localファイルで管理します。例えば、sshdを有効にするには、以下のように記述します。
sshd_flags=""
OpenBSDの応用
[編集]ファイアウォールとVPN
[編集]OpenBSDは、pfとOpenIKEDを使用して、強力なファイアウォールとVPNを構築できます。pfは、パケットフィルタリングとNATを提供し、OpenIKEDはIPsec VPNをサポートします。
暗号化ツール
[編集]OpenBSDは、opensslやbcryptなどの暗号化ツールを提供します。これらのツールを使用して、データの暗号化やパスワードのハッシュ化を行えます。
おわりに
[編集]OpenBSDは、その高いセキュリティとコードの正確性から、多くのユーザーに支持されているオペレーティングシステムです。このハンドブックが、OpenBSDの基本的な操作から高度なカスタマイズまでを理解する一助となれば幸いです。OpenBSDの世界を探索し、自分に合った使い方を見つけてください。
参考資料
[編集]補足: doas について
[編集]doasは、sudoと同様に特権コマンドを実行するためのツールですが、以下のような利点があります。
- 設定がシンプル:
doas.confファイルは、数行の設定で済むため、管理が容易です。
- セキュリティの向上:
doasは、sudoに比べてコードベースが小さく、セキュリティホールのリスクが低いです。
- 軽量:
doasは、リソースの使用量が少なく、システムのパフォーマンスに影響を与えません。
Linuxディストリビューションでも、doasの使用を強く推奨します。doasは、OpenBSDで開発され、NetBSDや他のBSD系システムでも採用されています。Linux環境でも、doasをインストールして使用することが可能です。
sudo apt install doas # Debian/Ubuntu系 sudo yum install doas # RHEL/CentOS系
doasの設定ファイルは、/etc/doas.confに配置されます。以下は、doas.confの設定例です。
permit keepenv :wheel
この設定により、wheelグループのユーザーが特権コマンドを実行できるようになります。