FreeBSD 9.0

さくらVPS (v3) 2GコースでFreeBSD 9.0をインストールしたメモ。

手順概要

FreeBSD 9.0インストール

  1.  まずはカスタムOSからFreeBSD 8.1をインストール。

    具体的な手順は、さくらのマニュアルどおり。
    cf. http://support.sakura.ad.jp/manual/vps/mainte/custom_freebsd.html

    OSは、FreeBSD 8.1 i386を選択。
    インストールできるものの制約が大きそうなので、amd64はパスした。
    Minimalインストールで。

  2. /etc/freebsd-update.confの次の行を編集して、srcを削除する。
    ※/usr/src/lib/libc/gen/libc_dlopen.cがないとエラーが出る不具合への対処。

  3. まず現状を最新版に

  4. 9.0へアップグレード

    freebsd-update installとrebootを適宜繰り返し。

  5. パスワードファイルを更新しておく。

    これをしておかないと、後々adduserでユーザ追加するときにエラーが出たり、ユーザ追加を含むパッケージインストールが失敗したりする。

    cf. 「pwd_mkdb: パスワードファイルの作成」(北澤私的記録)

ネットワーク設定の変更

  1. 転送速度を上げるため、OSのネットワーク変数を変更。

  2. /etc/sysctl.confを開き、次の行を追加。

    cf. 「さくらのVPSで「FreeBSD」を利用していますが、回線速度が遅くアクセスに時間がかかります。」(さくらインターネットFAQ)

su許可ユーザの設定

  1.  rootでsshログインしなくて済むよう、管理者ユーザーがsuできるように設定しておく。/etc/group で wheel に管理者ユーザ名を追加。

    cf. 「suでrootになろう」(自宅サーバをめぐる冒険)

ログインメッセージの抑制

  1. ログイン時に長いシステムメッセージが表示されるのを抑制。
    というか、削除。

ssh設定

  1. ファイルがないとエラーが出てうるさいので、ファイルを作成しておく。

    cf. 「OpenSSH 5.7p1 で新しい鍵形式(ECDSA)の警告」(matoken’s memo)

  2. pwagentを使って自動接続するため、サーバとクライアント側に鍵を登録する。
    登録する鍵は、Windows上でPuTTYgen.exeを使って生成。

    生成した鍵は、秘密鍵と公開鍵をそれぞれファイルに保存する。(ここでは秘密鍵をid.ppk、公開鍵をid.pubに保存したものとする。)

  3. Windows上で、pageaent.exeをスタートアップに登録し、引数に保存した秘密鍵のファイル名を指定。
  4. PuTTYgen の「OpenSSHのauthorized_keysファイルにペーストするための公開鍵」の欄にあるコードをコピー&ペーストして、サーバ側の ~/.ssh/authorized_keysファイルに書き込む。または、id.pubをサーバに転送し、次のコマンドでOpenSSH用に変換す る。

    authorized_keysファイルの書き込み許可がowner以外に与えられていると参照されないので、必要に応じてファイルパーミッションも設定。

  5. PC上に保存したパスフレーズを削除したい場合は、レジストリを直接編集して次のキーを削除。

  6. PuTTYを使って接続し、パスフレーズなしでログインできることを確認する。
  7. /etc/ssh/ssh_configを開き、次の行を変更する。

    セキュリティ強化のため、ユーザIDとパスワードでの認証を禁止しておく。

  8. sshdを再起動。

最新のportsの取得

  1. FTPでお手軽に。
    FTPサーバーは、さくらインターネット内にあるftp3.jp.freebsd.orgを利用。

csup設定

  1. ひな形からports更新用のファイルをコピーし、supfile作成。

  2. コピー後のファイル (/usr/local/etc/ports-supfile) を編集して、default hostを変更する。

  3. ports自動更新のため、crontabに登録。

    次の行を追加。

    これで、インストール済みのportに更新されたものがないか毎夜自動的にチェックしてメールで知らせてくれる。インストールは手動で。
    cf. 「csupを使った kernel ソースツリーの更新」 (@OMAKASE)

sudoインストール

  1. portsから。
  2. visudoで次の行を編集(コメントをはずす)。

xinetdインストール

  1. xinetdのインストール
  2. /etc/servicesに次の行を追加。

    ポート番号は適当。ポートスキャン対策で、プライベートに番号を割り当てておく。ここで定義したポート番号を指定すればtelnet接続ができる。

  3. /usr/local/etc/xinetd.confを作成し、次の内容を記述。

    only_fromで接続できる場所を特定しておく。

  4. /etc/rc.confに次の行を追加。

cf. 「xinetd の設定方法」 (NEC)

bashインストール

  1. 自分はbashに慣れているので、追加インストール。
  2. /etc/passwdも編集して、自分の使用するシェルを変更しておく。