自宅サーバーをみんなで使う
自宅サーバーをみんなで使う
自宅サーバーを立てる理由は様々だと思います。好奇心、必要に迫られて、いろいろな実験をしてみたいから等々。
そんな中、ひょっとしたら仲間とコラボレーションしたいので共同作業の場として自宅サーバーを立てたいと考えている人がいるかもしれません。しかし、Linux、FreeBSD、Windows Server、Solarisなど、マルチユーザーを扱えるOSであっても普段マルチユーザー下で扱うようなサーバー設定を行ったことがない場合は、具体的にどのような設定を施せばマルチユーザー対応のサーバーになるのかわからないかもしれません。
そこで今回は自宅サーバーをみんなで使うための基本的な設定を押さえていきたいと思います。いまさら感のある内容ばかりかもしれませんが、あらためて基本を押さえてみると新しい発見があるかもしれません。
ユーザーアカウントの作成
まずはユーザーアカウントを作成します。マルチユーザー環境では正確にユーザーアカウントを生成しておく必要があります。
Linuxでユーザーアカウントを生成する場合は通常以下の手順でアカウントを生成します。
# useradd -m yamada (「-m」オプションを付けるとホームディレクトリも同時に生成されます。CentOSの場合は デフォルト状態で「-m」オプションが付いています。) # passwd yamada # ls -l /home/ | grep yamada drwx------ 3 yamada yamada 4096 Jun 21 14:15 yamada
次の方法でユーザーアカウントを作成すると、アカウント名と同じグループ名が付けられます。
# usermod -m -g ourgroup yamada # passwd yamada # ls -l /home/ | grep yamada drwx------ 3 yamada ourgroup 4096 Jun 21 14:15 yamada <- グループ名が変更されています
アカウント作成時に有効期限を付けておくと、期限が過ぎると自動的にアクセスできなくなるため、大勢が利用するサーバーでは念のためこの設定をしておくと利用が終わったアカウントの削除し忘れ対策にもなり安心です。
# useradd -e 2011-12-31 yamada <-新規にアカウントを作成する場合 # passwd yamada # usermod -e 2011-12-31 yamada <-既存アカウントに対する変更の場合
もし有効期限が切れた状態でログインしようとするとエラーとなります。
$ su - yamada Password: Your account has expired; please contact your system administrator su: incorrect password
ところで 上記操作によって作成されたホームディレクトリの初期状態は「rwx------」なので、作成したアカウント以外のユーザーはそのホームディレクトリに一切アクセスできません。他のユーザーからもそのホームディレクトリにアクセスできるようにするためには以下のようにパーミッションの変更を行います。
# ls -l /home/ drwx------ 3 yamada yamada 4096 Jun 21 14:15 yamada # chmod go+rx /home/yamada # ls -l /home/ drwxr-xr-x 3 yamada yamada 4096 Jun 21 14:15 yamada
図1:ディレクトリ構成(クリックで拡大) |
※[参考] useraddのデフォルト値は下記ファイルに定義されています。お使いの環境に合わせて変更してみるのも良いでしょう。
/etc/default/useradd