FreeBSD の初期インストールは画面のスクリーンショットがとれたら書いてみるとして。。。 まず FreeBSD をインストールして最初にやりたい事として、SSH の設定になります。 正しくは sshd(SSH サーバー) の設定ってやつですね。 とりわけうちは VMware ESXi 上に仮想サーバとして構築しているので、コンソールからの操作ではもったりしてしまってとても効率が悪い! てなわけで、すぐ SSH の設定をしてリモートからターミナルで操作できる様にします。 セキュリティ的に気をつけるところはいろいろありますが、自分的には以下の点に気をつけています。 1. スーパーユーザー(root)でのログインを禁止する。 2. 空パスワードでのログインを禁止する。 3. スーパーユーザーにスイッチできるユーザを限定する。 は SSH の設定ではないですが、何人かで利用する場合などにも有効なのでオススメです。 まずは、もし一般ユーザをインストール時に作成していない場合は、FreeBSD は Linux のように useradd コマンドが無いので、対話式の adduser コマンドを使ってユーザを作成します。 また、スーパーユーザーにスイッチできるユーザについては、wheel グループへの追加を指定します。 このグループに対して許可を設定する事で、制限をかける事ができる訳です。 # ユーザ登録コマンド # adduser Username: <追加したいユーザ名> Full name: <自分の名前(ニックネーム)などを適当に入力 : 空欄可> Uid (Leave empty for default): <指定がなければそのまま Enter で> Login group [user01]: <指定がなければそのまま Enter で> Login group is user01. Invite user01 into other groups? []: wheel (<-wheel グループに登録する場合) Login class [default]: <指定がなければそのまま Enter で> Shell (sh csh tcsh bash rbash git-shell nologin) [sh]: tcsh (指定がなければ、FreeBSD の 標準 SHELL である tcsh を指定しておく) Home directory [/home/user01]: <指定がなければそのまま Enter で> Home directory permissions (Leave empty for default): <指定がなければそのまま Enter で> Use password-based authentication? [yes]: <指定がなければそのまま Enter で> Use an empty password? (yes/no) [no]: <指定がなければそのまま Enter で> Use a random password? (yes/no) [no]: <パスワードを自分で設定する場合はそのまま Enter、ランダムに生成してもらう場合は yes を入力して Enter> Enter password: <設定したいパスワードを入力> Enter password again: <上で入力したパスワードを再入力> Lock out the account after creation? [no]: <作成後の Lock の指定がなければそのまま Enter で> Username : <追加したいユーザ名> Password : ***** Full Name : Uid : <自動採番> Class : Groups : user01 wheel (<- wheel グループを指定した場合) Home : /home/<追加したいユーザ名> Home Mode : Shell : /bin/tcsh Locked : no OK? (yes/no): yes <設定に間違いがなければ yes を入力して Enter> adduser: INFO: Successfully added (<追加したいユーザ名>) to the user database. ※ Successfully が出ることを確認する。 ※ Add another user? (yes/no): no <別のユーザを追加しない場合は no を入力して Enter> # ユーザが登録されたことを確認 # cat /etc/passwd | grep <追加したユーザ名> (表示例) <追加したユーザ名>:*:::User &:/home/<追加したユーザ名>:/bin/tcsh # cat /etc/group | grep <追加したユーザ名> (表示例) wheel:*:0:root,<追加したユーザ名> <追加したユーザ名>:*:: また、セキュリティの観点からパスワードは少なくとも 8 文字以上の英数記号混在のものをお勧めします。 これを決めるのがまた難しいんですけどね。。。 次にやっとこ SSH の設定をします。前置きが長かった。。。 スイマセン! UNIX 系 OS にインストールされる SSH の config ファイルは、設定できる項目がほぼ共通です。 なので詳しい説明は省いて、最低限 FreeBSD で変更しておくべき項目を記載します。 # 初期 config ファイルをバックアップ # cp -ip /etc/ssh/sshd_config /etc/ssh/sshd_config.org # config ファイルを編集 # vi /etc/ssh/sshd_config ※ 以下の項目を編集 (編集前) #PermitRootLogin no #PasswordAuthentication no #PermitEmptyPasswords no (編集後) PermitRootLogin no PasswordAuthentication yes PermitEmptyPasswords no ここまでの設定が終わったらあとは sshd を起動するだけ。 FreeBSD は /etc/rc.conf ってファイルに起動したいアプリケーションを記載してやる事で起動できます。 # sshd の情報をシステム設定情報ファイルへ追記 # vi /etc/rc.conf (最終行に以下を追記) sshd_enable="YES" # sshd を起動する # /etc/rc.d/sshd start (出力例) Starting sshd. # ps aux | grep sshd (出力例) root 31399 0.0 1.2 6704 3088 ?? Is 3:13PM 0:00.00 /usr/sbin/sshd ※ 起動していることを確認する。 これでリモートから SSH でログインできる様になるはずです。 もしログインできない場合は、途中経路のポートの開放状況やポートの許可状況を確認してみてください。 基本的に特に自分でいじらない限りは FreeBSD の初期状態は iptables 等のフィルタは適用されていないはずです。 これでリモートからサーバをいじれるようになりました! さて、ここから何をいれようか・・・。