...

Linuxを活用したネットワークの運用・管理

by user

on
Category: Documents
26

views

Report

Comments

Transcript

Linuxを活用したネットワークの運用・管理
Linuxを活用したネットワークの運用・管理
−CUIによる編集
vol.2−
ver.1.0
広島県立教育センター
実践編
1 グループ・ユーザ管理
(1)
グループ設定
RedHat系のディストリビューションではX Windowの ユーティリティを利用するのが便利である。
○ コマンド入力を利用する場合
書式
groupadd
グループID 作成したいグループ名
# groupadd 1100 project ↵
グループID
グループ名
例
:プロジェクトグループ
○ 直接エディタで,/etc/group ファイルを編集する場合
# vi
/etc/group
エディター編集画面例
↵
書式
ユーザ名::グループID :
グループID
通常は500 番以降を利用する。
例
jyoho::505:
(2)
ユーザアカウントの作成
useradd(adduser )を利用した登録(
少人数の場合に利用する。)
① スーパーユーザになる。
$ su - ↵
password: ******** ↵
(*******は画面表示されない。)
② useraddコマンドを実行する。
# useradd -g グループ名またはグループID
※
ユーザ名
↵
グループのオプションを利用する場合は,事前にグループを作成しておく必要がある。
書式
t-hiro:**********************:1001:1001:Hiro Taro:/home/hiro:/usr/local/bin/tcsh
ユーザ名
パスワード
ユーザID グループID
ホームディレクトリ
(3) newusers コマンドを利用する。
① スーパーユーザになる。
$ su - ↵
password: ******** ↵
(*******は画面表示されない。)
- 1 -
利用するシェル
② /etc/passwd と同じ形式のファイルを作成する。
○ 登録したいユーザの情報を /etc/passwd と同じフォーマット形式で作成する。
※ Windows のクライアントで事前に作成しておくと作業時間が短縮できる。
作成例
ユーザID No
ユーザ名
ホームディレクトリィ
lab01::1100:502:Lab01 User:/home/lab01:/bin/tcsh
グループID No
仮パスワード(パスワードなしの場合)
アカウント名
※
使用するログインシェル名
データとデータの区切り記号は[ :を使用すること!
]
ユーザ登録リスト例
○
適当な名前で保存する。(拡張子は特に必要はない。)
userlist.txt
例
※
Windowsで作成する場合は拡張子を付けなければ,ファイラ等で確認する際,
不便なので便宜的に拡張子として[txt] を利用した。
③ 作成したデータをFTPでサーバに転送する。
※ サーバ内部で直接作成する場合は,この作業は省略できる。
④ newusersコマンドの実行
# newusers (設定ファイル名)
例
# newusers
↵
/home/admi/userlist.txt
↵
- 2 -
2パスワードの変更
ユーザ登録後,各ユーザがパスワードを次の要領で変更すること!
telnet でログオンし,次のコマンドでパスワードを変更をすること
$ passwd ↵
Changing password for ユーザ名
Enter old password: ********
(旧パスワード)
Enter new password: yyyyyy (新パスワード)
Re-type new password: yyyyyy (新パスワード)
Password changed.
※
UNIXでは大文字・小文字の区別がある。パスワードは英数,大文字・小文字を組み合わ
せて指定する。
例
☆
Molts6Gi100(モルツ麦100)
パスワードを忘れた場合は(緊急の場合のみ実施すること!)
# vipw ↵
エディターが起動するので,パスワードの*部分を削除する。
t-hiro:**********************:1001:1001:Hiro Taro:/home/hiro:/usr/local/bin/tcsh
t-hiro::1001:1001:Hiro Taro:/home/hiro:/usr/local/bin/tcsh
エディタを終了し,ユーザがログオンしパスワードを変更する。
3 ユーザの削除
書式
# userdel
-r
ログインユーザ名 ↵
オプションスイッチ: -r
ホームディレクトリも一緒に削除する。
4ネットワークカードの確認
(1) ネットワークカード情報の確認
書式 ifconfig オプション インターフェイス
コマンド実行例
# ifconfig -a ↵
組み込まれているNIC情報がすべて表示され
る。
# ifconfig eth0 ↵
Linux場合,1枚目のNIC情報が
表示される。
- 3 -
(2) ルーティング情報の確認
書式 netstat オプション
# netstat -rn ↵
Flagsに関する説明
Flags
意
味
U(Up )
経路がアクティブな状態を示す。
H(Host )
経路の destinationが単一のホストを示す。
G(Gateway)
この destinationへ送られると, どこへ送れ ばよいかを明らかにして, そのリモート
システムへ送信する。
S(Static )
経路がシステムによって自動的に生成されたのではなく手動で作成されたことを示
,
す。
C(Clone)
マシンに接続したときに,この経路に基づく新しい経路が作られる。. このタイプの
経路は通常は ローカルネットワークで使われる。
W(WasCloned )
ローカルエリアネットワーク(Clone) の経路に基づいて 自動的に生成された経路
であることを示す。
L(Link )
イーサネットハードウェアへの参照を含む経路であることを示す。
(3) ネットワークインターフェイスのトラフィックを確認
書式 netstat オプション
# netstat -i ↵
(4) 相手にパケットが届くかどうかの確認
書式 ping オプション ipアドレスまたはドメイン名
# ping -c3 172.16.6.254 ↵
- 4 -
5ネットワークカードの設定変更
○
Linuxの場合(RedHat系)
・設定ツール netconfigを利用する。
# netconfig ↵
変更したいIPアドレスに直接書き換える。
6 プロセスの管理
(1) プロセスの確認
[ps]-ax コマンドでプロセスの詳細確認をする。
プロセス一覧の見方
PID TTY STAT TIME COMMAND
TTY :プロセスを実行したコンソールの番号
696
1
S
0:00
-bash
STAT :プロセスの現在のステータス
ステータス詳細
ステータス
意
味
D
ディスクなどの入力待ち
I
休止中
P
ページ切り替え待ち状態
R
実行中
S
キー入力待ち
T
停止中
Z
ゾンビ状態,自分自身は終了したが,親がそのステータスを取得の状態で,終了できない状態
- 5 -
USER:プロセスを実行しているユーザ名
PID :プロセスID
%CPU :CPU 占有率
%MEM :メモリ占有率
VSZ :仮想メモリの利用量(バイト
K
)
RSS :実メモリの使用サイズ(バイト)
K
TT :使用端末
STAT :プロセスの状態 R :実行可能状態 S :スリープ状態 I :アイドル状態
D :ディスク内 T :停止状態 Z :ゾンビ状態
STARTED:プロセスの開始された時刻
TIME :プロセスの稼働時間(実際にCPUを利用した時間でプロセスが開始されてからの時間ではない。)
COMMAND:コマンド名
プロセス情報の表示 例
$ps aux │ less
↵
(2)
プロセスの強制終了
実行中のプログラムの終了には,二つの方法がある。
◇
その一つは一時的なプログラムの終了である。実行方法は次の通りである。
・
・
・
・
・
・
・
ジョブの確認をする
コマンドの一時停止
コマンドの再開
バックグランドジョブとして再起動する場合
バックグランドジョブの停止
コマンドの終了
コマンドの実行結果をゆっくり見る
:
:
:
:
:
:
:
% jobs -l (ps コマンドを利用しでもよい)
[Ctrl] +[z]
f
g %[ジョブ番号]
bg %[ジョブ番号]
stop %[ジョブ番号]
[Ctrl] +[c]
[Ctrl] + [s]のあと[Ctrl] + [q]
これでも終了しない場合はプロセスの強制終了をする。
- 6 -
◇
二つ目の方法が,kill コマンドを利用する方法である。
ki
l
l −[オプション] [プロセスI
D(ジョブ番号)]
ki
l
l%[ジョブ番号]
※
ジョブ番号は[jobs]コマンドで確認する。
”キル(kill)コンマンドの利用したプログラムの終了例
”
# kill 165
←
プロセス番号165 のプロセスを終了する。
# kill %1
←
ジョブ番号1のプロセスを終了する。
# kill -KILL 128
←
応答しなくなったプロセスを終了する。(プロセス番号 128)
# kill -KILL %3
←
応答しなくなったプロセスを終了する。(ジョブ番号3)
# kill -HUP 120
←
実行中のデーモンの設定を変更したのでそのプロセスを再起動する。
(プロセス番号120)
# kill -KILL %2
←
実行中のデーモンの設定を変更したのでそのプロセスを再起動する。
(ジョブ番号2)
シグナル・シグナル番号一覧(抜粋)
文字表記
数値
シグナル名
意
味
SIGHUP
1
HUP
SIGINT
2
INT
キーボードの割り込み
SIGQUIT
3
QUIT
キーボードからの中止命令
SIGILL
4
ILL
不当な命令
SIGKILL
9
KILL
プロセスの強制終了
SIGUSR1
10
USR1
アプリケーションに依存するシグナル
SIGUSR2
12
USR2
アプリケーションに依存するシグナル
SIGPIPE
13
PIPE
パイプの端が閉じられた
SIGALRM
14
ALRM
アラーム・タイムの設定時間が切れた
SIGTERM
15
TERM
プロセスの終了(オプションを省略したときのデフォルト値)
端末が切断されたときに送信される。デーモンの場合には,「設定ファイルの読み込
み」に使われることも多い。
7周辺機器の利用
(1) マウント
MSDOS やWindows では,フロッピディスク,CD-ROM,MOなどは,ドライブとして扱われるが,UNIXではスペシャ
ルファイルとして扱うことになる。従って,フロッピディスクやCD-ROM を利用するためには「mount」コマンドを利
用する。CD-ROMやフロッピディスクが「
mount 」されていれば,ディレクトリを扱うように利用できる。デバイスの呼
称がFreeBSDやLinuxでは異なるので,次に示すコマンドの説明例の部分の内,/dev/○○の○○の部分を
利用しているOSによって読み替えて入力する。
書式: mount
オプション
- オプション デバイスのマウントポイント
-t:ファイルタイプを指定する。(省略するとUFSとして扱われる。)
-r:読み込み専用でマウントする。
- 7 -
①
CD-ROMをマウントする場合
# mount -t cd9660 /dev/acd0c
# mount /mnt/cdrom ↵
# mount /cdrom ↵
/cdrom ↵
(FreeBSD)
(Linux)
(Plamo Linux)
②
ハードディスクのMSDOS領域をマウントする場合
# mount -t msdos /dev/wd01 /dos ↵
(linuxの場合はwd01をdha1に変更する。また,FAT32の領域をマウントしたい場合はmsdosをvfatに変更する。)
③
※
MSDOS のフロッピディスクをマウントする場合
# mount -t msdos /dev/fd0c /mnt ↵
(FreeBSD)
# mount -t msdos /dev/fd0.1440 /mnt ↵ (FreeBSD98 )
# mount -t vfat /dev/fd0c /mnt/floppy ↵ (Linux )
・ 事前にマウントの設定ファイル(fstab)を/etc/に作成するとOSの起動時にマウントさせることができ
る。
・ -t オプションを省略するとunixの標準ファイルの指定をしたことになる。
・ ファイルのタイプをmsdosとしてもvfatでもWindowsのファイルを読むことができる。vfatとmsdosのファ
イルタイプの違いは,vfat がロングファイルネイムのサポートと大容量ハードディスクの利用が可能とな
っている。
④
/etc/fstab に設定されている全てのファイルをマウントをする場合
# mount -a ↵
/etc/fstabの内容(例)
デバイス名
#Device
/dev/wd0slb
/dev/wd0sla
/dev/wds1f
/dev/wds1e
/dev/wcd0c
proc
マウント先
Mountpoint
none
/
/usr
/var
/cdrom
/proc
ファイルのタイプ
UFS(Unix File System)
MFS(Memory File System)
MSDOSFS FAT16
VFAT
FAT32
NTFS
ISO9660
Linux
⑤
ファイルのタイプ オプション
FStype
swap
ufs
ufs
ufs
cd9660
procfs
:ufs
:mfs
:msdos
:vfat
ダンプの有無
Options
Dump
sw
0
rw
1
rw
2
rw
2
ro,noauto
0
rw
0
fsckによるチェックの有無
Pass#
0
1
2
2
0
0
マウントオプション(Options)
ro:読みとり専用(Read Only)
rw:読み書き可能(Read& Write )
sw:スワップエリア
userquota:ユーザ毎のクオータを有効にする
noauto:起動時に自動マウントしないようにする。
:ntfs
:cd9660
:ext,ext2 ,ext3
ハードディスク(HDD)の追加
ディスク容量の不足等によって新規にHDDを追加したい場合の対応として
◇ Linuxの場合
mkfsコマンドを利用して,HDD を追加する。
# mkfs -Vtcl ext3 /dev/hda1 ↵ (デバイス名をhda1 とした場合)
# fdisk /dev/hda1 ↵
(fdisk コマンドを使いパーティション等と追加する)
- 8 -
(2) アンマウント
UNIXではマウントした周辺機器は,必要なくなった時点で,アンマウントする必要がある。
書式: umount マウントポイント (マウントポイント:/cdrom,/mntなど)
例
# umount
/cdrom
↵
(CD-ROM をアンマウントする場合)
8 サービス(デーモン)の設定
サーバで利用できるサービスには様々なものがある。一般的なものとして,telnet,ftp,DNS,
www,mail,smbなどがある。これらのサービスを利用するためには,利用したいサービスを起
動する必要がある。起動方法として,次に示すような方法がある。
○RUNレベルによるサービスの起動
・inetd.confによるサービスの起動
・shスクリプトによるサービスの起動
○crontabによるサービスの起動(定期的に実行したいコマンドの設定)
いつも利用するサービスでないものは,時間を限定して利用することができる。これを,可能にするの
が,cronである。この設定情報が記述してあるのが,/etc/crontabである。
crontab
の書式
:
分
時
日
月
曜日
動作権限
起動コマンド
分 :0∼59
時 :0∼23
日 :0∼31
月 :0∼12
曜日:0∼7(0:日,1:月,2:火,3:水,4:木,5:金,6:土,7:日)
日曜日は0でも7でもよい。
※ ・特別に指定する必要のない場合には,*
[ ](ワイルドカード)を利用できる。
・複数の時間等を指定する場合はデータを[,](コンマ)区切って指定できる。
・項目と項目の間は空白(スペース)で区切る必要がある。
設定例
#
#
分 時
日 月 曜日
動作権限
起動コマンド
-----------------------------------------------------------------------------------毎日,2時間おきにコマンドを実行する。
0
2
*
*
*
root
periodic daily 2>&1 │ sendmail root
毎週土曜日,3時30 分に コマンドを実行する。
30
3
*
*
6
root
periodic weekly 2>&1 │ sendmail root
0分,20分,40分ごとにコマンドを実行する。
0,20,40
*
*
*
*
root /usr/lib/newslog
- 9 -
9 Linux
ランレベルの設定
/etc/inittabで実行すべきプロセスを設定する。
initab の書式
エントリの識別子
1:
※
ランレベル
アクション
123456: respawn :
プロセス
/sbin/mingetty
tty1
テキストログインとグラフィカルログインの変更は,このinittabの上述のid番号を変更する。
id::
3 initdefault :
id::
5 initdefault :
←
←
テキストログインの場合(ランレベル3)
グラフィカルログインの場合(ランレベル5)
ランレベル一覧(Linux)
ランレベル
動
作
内
容
0
シャットダウンするときに利用するモード,システムにより予約済み。
1
シングルモード,root のみがログインでき,通常は各種サービスを起動させない。システムにより予約済み。
2
マルチユーザモード(NFSなし)
3
マルチユーザモード(NFSあり)通常,このモードを利用してシステムが起動する。
4
マルチユーザモード通常,利用しない。
5
マルチユーザモード,RedHat系をはじめxdm 用のモードとして利用することが多い。
6
再起動する際に利用するモード,システムにより予約済み。
アクション一覧(Linux)
アクション
動
作
内
容
respawn
プロセスが終了した場合には再起動する。
wait
指定したランレベルで一度だけ起動され,init はこのプロセスが終了するまで待機する。
once
指定したランレベルで一度だけ起動される。
boot
システムの起動中に実行される。(ランレベルは無視する。)
bootwait
システムの起動中に実行され,initはこのプロセスが終了するまで待機する。(ランレベルは無視する。)
off
何も処理しない。
ondemand
指定したondemand ランレベルのとき,常に実行される。
initdefault
デフォルトのランレベルを定義する。
sysinit
システムの起動中に実行され boot,bootwaitより先に処理される。
ctlaltdel
SIGINIT シグナル([
Ctrl]+[
Alt ]
+[Del])の実行を受けたときに実行される。
kbrequest
特定のキー入力がされたときに実行される。
powerfail
SIGPWRシグナル(電源異常)を受けたときに実行されるが,initはこのプロセスが終了するのを待たない。
powerwait
SIGPWRシグナル(電源異常)を受けたときも実行される。
- 10 -
10
RedHat系 Linuxでのサービス指定方法
RedHat系ではサーバのインストールから管理まで,GUIで行うことが一般的である。しかし,リモートで
サーバのメンテナンスする場合は,GUI画面で操作する必要があるために,VNC(Virtual Network Co
mputing )等のグラフィカルリモートソフトをインストールすることが必要となる。従って,ssh,telnetコマン
ドを利用したネットワーク管理では,次に示すコマンドを利用するのが便利である。
設定コマンド一覧(テキストモードによる設定)
☆
コマンド名
格納場所
機
能
setup
/usr/sbin
テキストモード設定ユーティリティ
Xconfigurator
/usr/sbin
X Window 利用環境の設定
mouseconfig
/usr/sbin
マウスの設定
kbdconfig
/usr/sbin
キーボードの設定
sndconfig
/usr/sbin
サウンドカードの設定
timeconfig
/usr/sbin
タイムゾーンの設定
authconfig
/usr/sbin
ユーザ認証の設定
netconfig
/usr/sbin
ネットワークカードの設定をする
setwm
/usr/bin
使用するX Window の指定をする
ntsysv
/usr/sbin
サービスの起動と停止を指定する
chkconfig
/sbin
起動中のサービスの確認をする
CUI画面によるサービスの指定
# /usr/sbin/ntsysv
↵
必要なサービス項目に[*]マークを入れる。
起動サービスを確認したい場合
# /sbin/chkconfig --list
↵
chkconfig --list実行画面
※
メニューにないサービスについては,
利用したいrpmパツケージをインストールする
ことで,追加される。
サービスを自動起動にしたい場合
# /sbin/chkconfig
サービス名 on
↵
サービスを自動起動を解除したい場合
# /sbin/chkconfig
- 11 -
サービス名 off
↵
◇
RedHat系 Linux の場合の特徴
起動スクリプトが他のLinux に比べ異なっているので,直接編集する場合のポイントを次に示す。
・起動スクリプトファイルディレクトリ:/etc/rc.d/init.d
・起動ファイル指示用ファイルディレクトリ:/etc/rc.d/rc0.d∼rc6.d
・起動に利用可能となるファイルには,先頭に大文字のSが付いている。
例 S00killall ・・・・・ S99webmin
・起動時に利用しないものについては,先頭に大文字のKが付いている。
例 K00wbmin ・・・・・ K45named
※ 数字は優先順,ランレベルの指定は0と6を除いて自由に設定可能
☆ インストール時点でのサービス一覧
サービス
RedHat
(*:起動時にデフォルトになっているサービス )
Vine
機
能
必要性
FreeWnn
*
*
FreeWnn日本語辞書
○
anacron
*
*
cronの実行を補完する
◎
apmd
*
バッテリの状態を監視(ノートPCには必要)する
arpwatch
ネットワークに接続されたPC を監視する
atd
*
*
指定時刻にシェルスクリプトを実行する
autofs
*
*
NFSの補助ディスク等を自動マウントする
bcw5820
canna
broodcomのアクセラレータボード(
BCM5820SSL )用ドライバ
*
*
Canna日本語辞書
○
chargen
chargenクライアントに対して文字列を送信し続ける
chargen-udp
chargenのUDP版
crond
*
*
指定時刻にシェルスクリプトを実行する
daytime
マシンの設定時刻を利用可能にする
daytime-upd
daytimeのUDP版
dhcpd
DHCPサーバを利用可能にする
echo
入力した文字列情報を利用可能にする
echo-udp
echoのUDP版
finger
ログインしたユーザ情報を利用可能にする
gpm
○
*
コンソール画面上でマウスを利用可能にする
httpd
*
Webサーバの起動(Apache)
identd
*
クライアントの情報をサーバーに転送する
inet
*
プロセスの実行
○
ipchains
*
パケットフィルタ(
NAT機能を利用する際に必要)
○
iptables
*
パケットフィルタ(
NAT機能を利用する際に必要)
○
isdn
kdcrotate
*
◎
*
ISDN用カードドライバ
Kerberosを利用する際に必要
- 12 -
○
サービス
RedHa
t
Vine
機
能
必要
性
keytable
*
*
キーボード配列を設定する
◎
kudzu
*
*
ハードウェアのplug&playを実行する
◎
ipd
*
*
LinePrinterを利用する際に必要
◎
DNSサーバの起動(BIND)
○
mcserv
murasaki
*
named
netfs
*
*
NFSやsambaマウントを利用する際に実行する
network
*
*
ネットワークの利用を可能にする。
nfs
nfslock
NFSサーバの起動
*
*
NFSサーバにファイルロック機能を持たせる
nscd
NIS,LDAPの認証を高速化する
ntpd
NTPサーバの起動(時刻合わせ機能)
portmap
◎
*
*
リモート接続を管理する
◎
*
Postfix (メールサーバ)を利用可能にする
△
postgresql
PostgreSQL(データベース)の利用を可能にする
△
proftpd
ProFTPサーバの起動
○
radvd
ルータ通知サーバ
postfix
random
*
*
乱数の生成をする
rawdevices
*
*
rawI/Oディスクシステムの利用を可能にする
rexec
rhnsd
RedHat Network の利用を可能にする
rlogin
リモートログインを可能にする
routed
routedコマンドを利用可能にする
rsh
リモートシェルを利用可能にする
rstartd
パフォーマンス情報を利用可能にする
○
rsync
rusersd
ネットワークを利用してログインしたユーザ情報を利用可能にする
rwalld
ネットワークを利用してログインしたユーザにメッセージを送信させるようにする
rwhod
rwhoとruptimeコマンドに情報を提供する
sendmail
*
Sendmail(電子メール)を利用可能にする
△
sgi_fan
*
smb
Samba(ファイルサーバ)を利用可能にする
◎
snmpd
SNMPを利用した管理が可能になる
○
squid
Squid(Proxyサーバ)を利用可能にする
○
OpenSSH を利用可能にする
◎
sshd
*
*
- 13 -
サービス
syslog
RedHat
*
Vine
*
機
能
システムの動作状況を記録できるようにする。
talk
talkプロトコルを利用したチャットを利用可能にする
telnet
telnetを利用可能にする
time
時刻情報を利用可能にする
time-udp
timeのUDP版
tux
カーネルWebサーバのを利用可能にする
usbmgr
*
vncserver
webmin
*
wu-ftpd
xfs
*
xinited
*
*
◎
○
USBを利用可能にする
VNCサーバを利用可能にする
○
Webminを利用可能にする
○
wu-FTPサーバを利用可能にする
○
X Window 用フォントサーバを利用可能にする
◎
スーパーデーモンを利用可能にする
○
ypbind
NISクライアントバインドデーモンを利用可能にする
yppasswdd
NISクライアントバインドデーモンを利用可能にする
ypserv
NISサーバを利用可能にする
ypxfrd
NISマップ転送サーバを利用可能にする
11
必要性
サービスの起動と停止(Linux (RedHat)の場合)
◇ serviceコマンドの利用(通常はこのコマンドを利用する。)
書式
起 動: service スクリプト名 start ↵
停 止:service スクリプト名 stop ↵
再起動: service スクリプト名 restart ↵
RedHat 系 Linuxサービス名一覧
- 14 -
--------------------------注意
®
※ Microsoft,Windows
98 ®,Windows 2000 ®,Windows NT® ,Office,Internet Explorerは米国Micros
oft Corporation の米国およびその他の国における登録商標または商標です。
※ その他,本書に掲載したプログラム名,システム名,CPUなどは一般に各社の登録商標です。
※ 本文中では, ® マークは省略しました。また,一般に使われている名称を用いている場合があ
ります。
--------------------------平成15年3月31日
初版発行
発行
広島県立教育センター
〒739-0144
- 15 -
東広島市八本松南1丁目2-1
℡(0824)28-2631
Fly UP