さくらのVPSにFreeBSD 9.0-RELEASEをインストールしてみた(3)

今回はntpdとportsの展開です。

  • ntpd

    初期インストールされているntpdをそのまま使用。簡単な設定のみです。

    • /etc/rc.conf

      ntpd_enable=”YES”

    • /etc/ntp.conf

      より上位のntpサーバーを指定したい場合はNICTのサーバーを指定してみましょう。
      server ntp.nict.jp iburst maxpoll 9

    • 動作確認

      # ntpq -p

  • portsの取得と展開

    最新のportsを取得します。

    • 取得

      # portsnap fetch

    • 最初の展開

      # portsnap extract

    • 2回目以降

      # portsnap fetch
      # portsnap update

さくらのVPSにFreeBSD 9.0-RELEASEをインストールしてみた(2)

今回はファイヤーウォールipfwの設定です。
さくらのVPSを運用してみるとわかるのですが、攻撃が結構スゴイです。恐らく狙い撃ちされているのでしょう。本来は一通りの設定を終えてからファイヤーウォールを設定した方が面倒でないのですが、最小限の設定を先にしてしまいます。

  • ipfw

とりあえず、mailとDNS、NTP、SSHだけを空けておきます。

  • /etc/ipfw.conf (新ファイル作成)

    # statefull
    add 10000 check-state
    add 10010 deny all from any to any frag
    add 10020 deny tcp from any to any established
    add 10030 pass all from me to any out keep-state
    add 10040 pass icmp from any to any

    #add 11000 pass tcp from any to me 20 setup keep-state
    #add 11010 pass tcp from any to me 21 setup keep-state
    add 11020 pass tcp from any to me 25 setup keep-state
    add 11040 pass tcp from any to me 53 setup keep-state
    add 11050 pass udp from any to me 53 keep-state
    add 11060 pass udp from any to me 123 keep-state
    add 11070 pass tcp from any to me 20022 setup keep-state
    #add 11080 pass tcp from any to me 50000-51000

    #add 64999 deny log all from any to any
    add 65000 deny all from any to any

  • /etc/rc.conf

    firewall_enable=”YES”
    firewall_type=”/etc/ipfw.conf”
    firewall_logging=”YES”

  • 動作確認

    # ipfw -a list

64999行の#を外すと最終的に弾いたパケットのログ(⇒ /etc/security)が採れます。

さくらのVPSにFreeBSD 9.0-RELEASEをインストールしてみた(1)


さくらのVPSの新サービスキャンペーンに乗ってサーバーの移行が完了。旧サーバーは解約したが、5/31まで使用できるので、今一度、FreeBSDをインストール。一通りのサービスの設定メモ。

  • OS(amd64 minimal構成)

まず『さくらのVPSカスタムOSインストール機能』について参照。
FreeBSD 8.1Rをインストールして後に9.0Rへupgradeします。i386版(32bit)とamd64版(64bit)がありますが、契約メモリが4GB未満であればi386の方がメモリ、HDDの消費が少ないですが、パフォーマンスはamd64の方が高いようです。(VPSのベースOSは間違いなく64bitなのでオーバーヘッドが少ないのでしょう)
以下、FreeBSDのインストーラーのデフォルトから変更するところを列挙。

  • 配布パッケージ ⇒ 『Minimal』を選択
  • サービス設定 ⇒ 基本的にすべて『No』を選択しあとで設定
  • タイムゾーンの設定CMOSクロック設定 ⇒ UTCを選択(重要!)
  • パッケージコレクション(ports) ⇒ 『No』を選択しあとで設定
  • ユーザアカウントの設定 ⇒ 少なくとも1アカウントを登録(GroupはWheel)
  • sshd

VNCコンソールでは作業性が悪いので、Teratermなどからアクセスできるようにsshdの設定をします。
以下、関連設定ファイルの変更点を列挙。

  • /etc/group
    wheel groupに上で追加したユーザアカウントを追加。
    wheel:*:0:root,username
  • /etc/ssh/sshd_config
    ・#Port 22 ⇒ Port 20022
    ※#を外してポート番号を任意の番号に変更(セキュリティ対策)
    ・#PermitRootLogin no ⇒ PermitRootLogin no
    ※既にrootでのログイン禁止であるが#を外して明示的に設定
    ・#PasswordAuthentication no ⇒ PasswordAuthentication yes
    ※#を外してパスワード認証を許可
  • /etc/rc.conf
    sshd有効化のため以下を追加
    inetd_enable=”YES”
    sshd_enable=”YES”
  • /etc/hosts.allow
    特定のホストからしかssh接続を許可しないために以下を設定
    #sshd : .evil.cracker.example.com : deny ⇒ sshd : .abc.co.jp : allow
    ※この例ではabc.co.jpドメインからのアクセスのみ許可
  • FreeBSD 8.1R ⇒ 9.0Rへupgrade

以下のコマンドを順に実行。詳しくはここを参照

  • # freebsd-update fetch
  • # freebsd-update install
  • # freebsd-update upgrade -r 9.0-RELEASE
  • # freebsd-update install
  • # shutdown -r now
  • # freebsd-update install

以上でさくらVPS上でFreeBSD 9.0-RELEASEが稼働しました。今日はここまで。
尚、今回はFreeBSD 8.1Rから9.0Rへupgradeする手法を用いましたが、さくらの田中社長のblogのここで説明されている方法を使えば最初から9.0Rのインストールも可能です。どちらが良いかは意見の分かれるところでしょう。

次回はipfwあたりの設定

FreeBSD 9.0-RELEASEのインストール


311の計画停電時にいろいろと懲りたので、さくらのVPSをバックアップ用に借りています。新契約を追加したので、インストール中。デフォルトのOSはCentOSですが、FreeBSD好きなので、FreeBSD 9.0-RELEASEをインストール中です。

そのメモです。(執筆途中)

  • OS(amd64 minimal構成) CMOS設定がUTCであることを忘れずに!
  • sshd ・・・OK
    • /etc/ssh/sshd_config
    • /etc/rc.conf
    • /etc/hosts.allow
  • ftp ・・・OK
    • /etc/inetd.conf
    • /etc/rc.conf
    • /etc/hosts.allow
  • bind9.9.0(ports) ・・・OK
    • /etc/namedb/0.0.127.in-addr.arpa
    • /etc/namedb/named.ca
    • /etc/namedb/named.conf
    • /etc/namedb/rndc.*
    • /etc/resolv.conf
    • /etc/rc.conf (named_program)
    • /etc/mtree/BIND.chroot.dist (uname=bind)
  • postfix 2.9.1(ports) ・・・OK
    • /usr/local/etc/postfix/main.cf
    • /usr/local/etc/postfix/virtual
  • gawk ・・・OK
  • ipfw ・・・OK

ちなみにこのblogは非力なC3マシンでテスト的に動かしているので超遅いです。
すみませんです。