[ 実習トップページ ]

Debian GNU/Linux 4.0(etch) の設定


  1. 概要
  2. 一般ユーザの作成
  3. vi の使用に関して
  4. sudo の設定
  5. X の設定
  6. 不要なネットワークサービスを止める
  7. APT の設定修正
  8. 時刻の設定
  9. 参考文献

概要

Debian GNU/Linux 4.0(etch) のインストール 後の設定を行います.

一般ユーザの作成

root でログインし, 以下のコマンドでユーザを作成します. <username> に はそれぞれ自分のユーザ名を入力し, 一人一人がユーザを作成してくださ い. この際, VTA のアカウントも作成してください.

# adduser <username>
Adding user <username>...
Adding new group <username> (1001).
Adding new user <username> (1001) with group <username>.
Creating home directory /home/<username>.
Copying files from /etc/skel
Enter new UNIX password: (パスワード入力)
Retype new UNIX password: (パスワード入力)
passwd: password updated successfully
Changing the user information for samson
Enter the new value, or press return for the default
         Full Name []: (氏名を入力)

その後, 部屋番号, 勤め先の電話番号, 自宅の電話番号, その他の情報について 問われますが, これについての入力は任意です. 最後に

Is the information correct? [y/n]

と問われますので, 上記入力が問題ないことを確認し, y を入力してください. 問題があれば n を入力して最初からやり直してください.

vi の使用に関して

テキストエディタとして, 以下では vi を使用するようにしています. 使用方法に関しては 最低限 vi を参照してください.

sudo の設定

sudo の意義

情報実験のように複数の人間で PC を管理することを考えましょう. この場合, 複数の人間がルートになる必要がありますが, ルートのパスワードを共有する のはセキュリティ上危険です. このような場合は sudo コマンドを用いて, 特 定のユーザが自分のパスワードでルート権限でコマンドを実行できるようにし ましょう.

ここで注意しておきたいことは, 今後 Linux にログインするときには, root でログインしてはいけません. root は何でもできますので, 誤って重要なファ イルを消してしまう可能性があります. 作法として, 本当に必要な場合にだけ root になるようにしましょう.

sudo 設定の作業

ここでは sudo を用いることで, 例えば hoge さんが, 自分のパスワードを用 いて別のユーザ (例えば, 以下の設定では root) の権限でコマンドを実行で きるようします.

/etc/sudoers を編集します. このファイルを編集する際には, visudo という コマンドを用います (visudo コマンドは複数同時の編集を禁止したり, 文法 エラーをチェックしてくれます). では root でログインして, visudo コマンドを実行しましょう.

# visudo

以下の 1 行を追加します.

hoge ALL=(ALL) ALL

各フィールドの意味は次の通りです.

この情報実験では, 今回アカウントを作ったユーザが全員管理者なので, この設定を作成したユーザ全てについて行ってください. (もちろん普段サーバ等を運用する際にはむやみやたらと上記の設定を してはいけません).

sudo の使い方

使い方は, 使いたいコマンドの前に sudo と付け加えるだけです. 例えば /etc/shadow は root しか見ることの出来ないファイルですが, sudo でルー ト権限が与えられているユーザの場合は

$ sudo cat /etc/shadow

とすることで見ることが可能です. 但しパスワードを聞かれますので, その時 は自分自身のパスワードを入力して下さい.

また, root に成り代わって作業を行う際には

$ sudo -s

としてください. プロンプトが '#' となり, 以後は root で作業する ことが可能です. root から一般ユーザに戻る際には

# exit

とします.

以後の作業は root でログインするのではなく, 一般ユーザでログインした後, sudo を用いて root に成り代わって作業してください.

X の設定

GUI (グラフィカルユーザインターフェース) 環境で作業するため, X の設定を行います.

root に成り代わり, 以下のようにコマンドを入力してください.

# export LANG=C
# dpkg-reconfigure xserver-xorg

すると X の設定画面が表示されるので, VGA ドライバとして Ati ではなく vesa を選択してください. その他の質問に関してはデフォルト (カーソルが元々 置かれている項目) を選択してください. その後, 以下のコマンドで再起動を行ってください.

# shutdown -r now

再起動すると, GDM (Gnome デスクトップマネージャ) が立ち上がり, GUI インターフェースのログイン画面が表示されます.

なお, GDM では root でログインできないようになっています. sudo の設定 で sudo の設定がされているはずなので root で直接ログインする必要は原則的にありませんが, もしも何らかの理由で root アカウントでログインする必要がある場合には,

を行ってください> コンソール画面から X 画面に戻る場合には

をキー入力してください.

不要なネットワークサービスを止める

セキュリティ対策の基本として, 不必要なネットワークサービスが立ち上げな いようにすることが挙げられます. 必要ないネットワークサービスを立ち上げ ていると, それを踏み台にクラックされる可能性が出てきます. 必要ないサー ビスを極力停止しておくことは, 簡単にできる上, 確実な効果を期待できる対 策です.

Debian GNU/Linux では, ネットワークサービスは以下のように起動されます.

なお /usr/sbin/inetd 自体も OS が起動する際に /etc/init.d/openbsd-inetd から起動されます.

/etc/init.d/ 以下のネットワークサービスの停止

/etc/init.d/ の下に関しては管理者がしっかりと把握し, 常におかしなもの が起動していないかどうかチェックする必要があります. ps コマンドでどの ようなデーモンが動いているか調べることが必要となります. 特に何の設定も なしに NFS (Network File System; ネットワーク越しに別のコンピュータの ハードディスクを ローカルのハードディスクのように扱うための技術), NIS (Network Information Service; ネットワーク環境で UNIX の設定を集中管理 する技術) を立ち上げた状態にしてはいけません.

exim4 の再設定

以下のコマンドで exim4 を設定し直します.

# export LANG=C
# dpkg-reconfigure exim4-config

設定画面で local 配送のみにして下さい.

その他の /etc/init.d 以下から起動されるネットワークサービスの停止

下記のコマンドで不要なサービスを止める, もしくは起動しないようにします.

# cd /etc/rc2.d
# update-rc.d -f portmap remove
# /etc/init.d/portmap stop
# update-rc.d -f hplip remove
# /etc/init.d/hplip stop
# update-rc.d -f bittorrent remove
# /etc/init.d/bittorrent stop
# update-rc.d -f cupsys remove
# /etc/init.d/cupsys stop
# update-rc.d -f nfs-common remove
# /etc/init.d/nfs-common stop

inetd 越しに提供されるネットワークサービスの停止

/usr/sbin/inetd によって起動されるネットワークサービスのうち, 必要の無 いものを全て停止します. inetd (インターネットデーモン) は同時に多数の ネットワークポートでの接続要求を待ち, 接続が完了された段階で要求に応じ て適切な TCP サーバ, UDP サーバを起動します. inetd は起動時に /etc/inetd.conf ファイルを読み込み, 実行すべきネットワークサービスを決 定します.

/etc/inetd.conf を編集して不必要なサービスが上がらないようにします.

# vi /etc/inetd.conf

必要のないサービスの行をコメントアウトします. 今回は 全てコメントアウトしてください. コメントアウトするには, 行頭 にシャープ '#' を記述します.

/etc/inetd.conf を編集したら編集した内容を反映させるため, 以下のコマン ドで inetd のプロセスを再起動します

# /etc/init.d/openbsd-inetd restart

APT の設定修正

以下のコマンドで apt-line (APT によるダウンロード先の設定) の修正 を行います.

# mv /etc/apt/sources.list /etc/apt/sources.list.org
# vi /etc/apt/sources.list

以下のように書き込んでください.

deb http://cdn.debian.or.jp/debian etch main contrib non-free
deb-src http://cdn.debian.or.jp/debian etch main contrib non-free

deb http://security.debian.org/ etch/updates main contrib non-free
deb-src http://security.debian.org/ etch/updates main contrib non-free

apt-line の修正後, 以下のコマンドでパッケージリストを更新します.

# apt-get update

時刻の設定

コンピュータ内の時刻を定常的に正しくしておくための設定を行います.

まず, 以下のコマンドで ntpdate パッケージをインストールします.

# apt-get install ntpdate

次に, 以下のコマンドで時刻を修正します. コマンド入力後しばらくすると NTP (Network Time Protocol) サーバより返答が返り, 時刻が修正されます.

# /usr/sbin/ntpdate-debian

下記のように date コマンドで時刻が正しくなっていることを確認してください.

# date
2007年  8月 23日 木曜日 11:17:04 JST

次に, 上記のような時刻修正コマンドを毎日実行するための設定を 行います.

# vi /etc/cron.daily/ntpdate

この ntpdate ファイルには以下のように書き込んでください.

#!/bin/sh
/usr/sbin/ntpdate-debian > /dev/null 2>&1

最後に, このファイルのパーミッションを以下のように設定してください. (パーミッションに関しては以降の講義で解説する予定です).

# chmod 755 /etc/cron.daily/ntpdate

参考文献


Last Updated: 2007/08/23 (森川 靖大), Since: 2007/08/20 (森川 靖大)