9.インストール後の管理・設定 |
■root宛てのメールの転送
サーバーのエラーメッセージなどがroot宛てに届きます。それを、普段使っているメールアドレスに転送するように設定しておけば、いちいちサーバーのモニタースイッチを入れてキーボードを叩かなくてもよくなります。
#vi /etc/aliases
#Person who....
#root: marc
root: atsuro@abcd.**.jp ←最後の行にこれを追加する
これでroot宛てのメールをatsuro@abcd.**.jpに送ることができる
保存したら、#newaliases で変更を反映すること
なんかワーニングが出る(sendmail.cfが古いとき!?)。
■不要なサービスを起動しないようにする
セキュリティを高めるため、必要最小限のサービス以外は、自動で立ち上がらないようにする。
telnet(インストール時にtelnet,SSHを止めておく)
finger
なども止める。
/etc/xinetd.dの中の不要なものを
/etc/xinetd.d.offを作って入れておく
■suの制限
システム管理を行うには,suコマンドを用いますが、一般ユーザに suコマンドを利用させないようにするには,まず,システム管理者を /etc/groupの wheelに追加します
#vi /etc/group
wheel:x:10:root,atsuro ←suになれるユーザーを追加します。
次に,/etc/pam.d/su に以下を追加します.
#vi /etc/pam.d/su
#auth required /lib/security/pam_wheel.so use_uid
↓
auth required /lib/security/pam_wheel.so use_uid
こうすると,/etc/groupの wheelに登録されたユーザatsuroしか suコマンドを実行することができなくなります.
■ shutdownの制限
サーバなどは shutdownコマンドを一般ユーザに実行されては困ります.そこで,shutdownコマンドを行えるユーザを制限することができます./etc/shutdown.allow というファイルを作ると,そこに記述されたユーザがログインしているときだけ,shutdownコマンドを実行することができます.
#vi /etc/shutdown.allow
user1
user2
user3
■毎日の管理
動いているかのチェック
#ps augxw #ps ax #ps augxw | grep kterm など
psコマンドは自分が起動したプロセスの一覧を表示します。
表示が流れていってしまうので、止める場合には、
#ps ax | more とします。ページを進めるにはスペースを押します。
サーバーの負担のチェック
#top
実行中のプロセスの状態を逐次見たい場合。(qで終了)
hでヘルプがでます。
ディスクの容量の確認
#df
ディスクの使用状況を表示します。
ネットワークの状態のチェック
#ifconfig -a LANボードのIPアドレスや状況を表示します。
#netstat -rn ルーティング(経路)を知ることができます。
#ping vinelinux.org 相手のホストまで,きちんと通信が行えるか調べます。
止めるには [Ctrl]+[c]を押します。
#traceroute vinelinux.org 途中の経路がわかります。
linuxconfの状態でもいろいろ確認できます。
#kon
#linuxconf
アタックのチェック
それぞれのwebサーバー、FTPサーバーのログファイルを見ましょう。
通常は、/var/log にあるはずです。
その他のアクセスログのチェック
通常は、/var/log にあるはずです。
通常は、
#date ←日付のチェック
#ps ax ←デーモンのチェック
#ping -c 3 210.***.***.*** ←ネットワークのチェック(任意のIPアドレスにしておく)
#df ←ディスク容量のチェック
#ifconfig ←ネットワークのチェック
#last ←ログインのチェック
#cat /var/log/secure ←FTPのチェック
#cat /var/log/maillog ←SMTPのチェック
#cat /var/log/xferlog ←FTPのチェック
#cat /var/log/boot.log ←ブートのチェック
#cat /etc/passwd ←ユーザーのチェック
これくらいをチェックすればよいのではないでしょうか
■AM4時に自動バックアップをする
backup.shという自動バックアップおよびサーバーチェックをするスクリプト(バッチファイル!?)を作成し、そのbackup.shを毎朝4時に自動起動するように設定します。
vi/etc/backup.sh で新規に作成します
------------------------------------------------------
#!/bin/sh
ifconfig -a > /usr/home/atsuro/report.txt
df >> /usr/home/atsuro/report.txt
rm /usr/tmp/etc.tar.gz
cd /
tar cvfz /usr/tmp/etc.tar.gz etc --exclude ld.so.cache
cp /usr/tmp/etc.tar.gz /usr/home/atsuro
rm /usr/tmp/usr_local_etc_apache.tar.gz
cd /usr/local/etc
tar cvfz /usr/tmp/usr_local_etc_apache.tar.gz apache
cp /usr/tmp/usr_local_etc_apache.tar.gz /usr/home/atsuro
rm /usr/home-backup.tar
cd /usr
tar cvf /usr/home-backup.tar home
ifconfig -a
df
ping -c 3 210.***.***.***
date
------------------------------------------------------
#chmod 755 /etc/backup.sh 実行できるようにパーミッションを変更しておく。
#crontab -e でcrontabを設定します
0 4 * * * /etc/bachup.sh
viで編集する
#crontab -l
で確認する
crontab プログラムを定期的に実行するcrondの設定ファイルを編集する (1)
構文
crontab [ -u user ] file
crontab [ -u user ] { -l | -r | -e }
オプション
-u user 指定したユーザーのcron設定を行います
-l 登録されているcrontabを表示します
-r 登録されているcrontabを削除します
-e crontabを編集します。
説明
プログラムを指定した時間に定期的に実行するためのデーモンcrondの設定を行います。設定はユーザーごとに用意されたcrontabという設定ファイルに記述します。crontabには以下のような書式で,各コマンドについて1行ずつ記述します
crontabの書式
min hour day month week command
min 分を指定します。ワイルド・カード(*)を使用できます
hour 時を指定します。ワイルド・カード(*)を使用できます
day 日を指定します。ワイルド・カード(*)を使用できます
month 月を指定します。ワイルド・カード(*)を使用できます
week 曜日を指定します。0を日曜日とし,順に数字に当てはめていきます。またワイルド・カード(*)も使用できます
command 実行するコマンドまたはスクリプトを指定します
使用例
crontabの情報を表示する
$ crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.1455 installed on Wed Dec 1 02:14:18 1999)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
0 0 * * * /home/hoge/logcut.pl ←毎日0時0分にlogcut.plを実行します。
日経Linuxコマンド集
http://linux.nikkeibp.co.jp/index.html