mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

FreeBSD 10.0 - 初期設定!

[ サーバ構築 ] [ FreeBSD ]

こんばんは。

「FreeBSD 10.0 - 初期設定」についての記録です。

(旧バージョンでの個人の作業記録を更新しました。興味がなければスルーしてください)

0. 前提条件

  • インストール作業時に SSH サーバをインストールを行っている。
  • インストール作業に一般ユーザを作成している。(wheel グループ設定もしている)
  • 以下の作業は、リモート接続して行う。(リモートから ssh vbox で接続)
  • リモート端末は、 Linux Mint 17 マシンを想定しているが、 Unix 系 OS なら同じ。
  • 設定ファイル等のテキストファイルの編集には vi コマンドを使用。
  • 作業はリモート接続で一般ユーザから root になって行う。
  • 主にFreeBSDサーバー構築マニュアルを参照。

1. プロンプト表示変更

~/.cshrc
1
2
    #set prompt = "%N@%m:%~ %# "
    set prompt = "[%n@%m %c]# "   # <= 変更
1
2
# source ~/.cshrc
[root@vbox ~]#                        # <= 変更されたことを確認

(以降、説明上プロンプトは # or $ のみの簡略表示とする)

2. ports ツリー更新

1
2
# portsnap fetch    # <= ports ツリーの圧縮されたスナップショットを取得
# portsnap extract  # <= 抽出

crontab に登録して、自動で ports ツリー更新を行うようにする。(最終行に以下の記述を追記)

/etc/crontab
1
0       3       *       *       *       root    /usr/sbin/portsnap cron && portsnap update > /dev/null

3. portupgrade インストール

インストールした ports のアップグレードを簡単に行なうためのユーティリティ portupgrade をインストールする。

1
2
3
4
# cd /usr/ports/ports-mgmt/portupgrade/
# make BATCH=yes install clean
# rehash
# cd

4. portupgrade 設定

make 実行時に常時設定するパラメータを設定しておく。

1
# chmod 640 /usr/local/etc/pkgtools.conf
/usr/local/etc/pkgtools.conf
1
2
3
4
5
6
7
8
9
10
  MAKE_ARGS = {
    # ====[追加]===>
    '*' => [
      'WITH_BDB_VER=53',
      'WITHOUT_IPV6=yes',
      'WITHOUT_X11=yes',
      'WITHOUT_GUI=yes',
    ],
    # <===[追加]====
  }
  • WITH_BDB_VER=53 は、 BerkeleyDB のバージョンを5.3に統一する設定。
    (インストールされている BerkeleyDB のバージョンに合わせる。 pkg info | grep db 等で確認可)
  • WITHOUT_IPV6=yes は、 IPv6 関連をインストールしない設定。
  • WITHOUT_X11=yes は、 X11 関連をインストールしない設定。
  • WITHOUT_GUI=yes は、 GUI 関連をインストールしない設定。

5. FreeBSD Update (セキュリティアップデート機能)

1
2
# freebsd-update fetch
# freebsd-update install

crontab に登録して、自動で FreeBSD Update を行うようにする。(最終行に以下の記述を追記)

/etc/crontab
1
0       4       *       *       *       root    /usr/sbin/freebsd-update cron

6. TCP Wrapper設定

1
# mv /etc/hosts.allow /etc/hosts.allow.org  # <= 念の為オリジナルファイルを退避
/etc/hosts.allow
1
sshd: ALL    # <= 追加
/etc/hosts.deny
1
ALL: ALL     # <= 追加

7. SSH 設定ファイル編集

今回は、取り急ぎパスワード認証による SSH 接続とする。(公開鍵認証による SSH 接続はあらためて行う)

/etc/ssh/sshd_config
1
2
3
4
5
6
7
8
9
10
11
Port 9999                    # <= コメント解除&変更(セキュリティ上、デフォルトから任意の値に変更)

Protocol 2                   # <= コメント解除(SSH version 2プロトコルを利用)

PermitRootLogin no           # <= コメント解除(root でのログインを拒否)

PasswordAuthentication yes   # <= コメント解除&変更(パスワード認証でのログインを許可)

PermitEmptyPasswords no      # <= コメント解除(空パスワードでのログインを拒否)

AllowUsers masaru            # <= 追加(ログインを許可するユーザ)

8. SSH サーバ再起動

1
2
3
4
5
6
# /etc/rc.d/sshd restart
Performing sanity check on sshd configuration.
Stopping sshd.
Waiting for PIDS: 801.
Performing sanity check on sshd configuration.
Starting sshd.

9. SSH 再接続

一旦リモート接続を切断し、再度リモート端末からポートを指定して SSH 接続する。
(最初は接続確認後にパスワード要求が行われるが、2回目以降は接続確認は省略される)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
$ ssh vbox -p 9999
Warning: the ECDSA host key for '[vbox.mk-mode.com]:9999' differs from the key for the IP address '[192.168.11.102]:9999'
Offending key for IP in /home/masaru/.ssh/known_hosts:10
Matching host key in /home/masaru/.ssh/known_hosts:18
Are you sure you want to continue connecting (yes/no)? yes
Password for masaru@vbox.mk-mode.com:
Last login: Mon Sep 22 10:53:24 2014 from 192.168.11.13
FreeBSD 10.0-RELEASE (GENERIC) #0 r260789: Thu Jan 16 22:34:59 UTC 2014

Welcome to FreeBSD!

Before seeking technical support, please use the following resources:

o  Security advisories and updated errata information for all releases are
   at http://www.FreeBSD.org/releases/ - always consult the ERRATA section
   for your release first as it's updated frequently.

o  The Handbook and FAQ documents are at http://www.FreeBSD.org/ and,
   along with the mailing lists, can be searched by going to
   http://www.FreeBSD.org/search/.  If the doc package has been installed
   (or fetched via pkg install lang-freebsd-doc, where lang is the
   2-letter language code, e.g. en), they are also available formatted
   in /usr/local/share/doc/freebsd.

If you still have a question or problem, please take the output of
`uname -a', along with any relevant error messages, and email it
as a question to the questions@FreeBSD.org mailing list.  If you are
unfamiliar with FreeBSD's directory layout, please refer to the hier(7)
manual page.  If you are not familiar with manual pages, type `man man'.

Edit /etc/motd to change this login announcement.

$

10. その他の設定

以下は、必要に応じて行う。

10-1. (その他) freebsd-update ミラーサイト変更

/etc/freebsd-update.conf
1
2
#ServerName update.FreeBSD.org
ServerName update1.FreeBSD.org  # <= 変更

10-2. (その他)ユーザ追加

1
2
3
4
5
6
7
# mkdir /usr/share/skel/public_html
# pw useradd user_name -m -d /home/user_name
# passwd user_name
Changing local password for user_name
New Password:user_pass         # <= パスワード入力
Retype New Password:user_pass  # <= パスワード確認入力
# chmod 701 /home/user_name

10-3. (その他)一般ユーザの su 化を許可

/etc/group
1
2
#wheel:*:0:root
wheel:*:0:root,user_name  # <= 変更(一般ユーザ名を wheel グループに所属させる)

10-4. (その他)ホスト名変更

1
2
3
# hostname hoge.mk-mode.com  # <= ホストネーム変更(FQDN を指定)
# hostname                   # <= ホストネーム確認
hoge.mk-mode.com

恒久的に変更するには以下のようにする。

/etc/hosts
1
2
#127.0.0.1       localhost localhost.my.domain
127.0.0.1       localhost hoge.mk-mode.com      # <= 変更(FQDN を指定)

以上。

Comments