LPIC level2 リベンジ!! 第6日 『Sambaサーバの設定(1)』
今回からSambaサーバの設定について更新します。
SambaはSMB/CIFSを扱うことで、Windowsシステムとの間でファイル共有を実現するソフトウェアです。
Sambaはファイル共有の他に以下のような機能を提供します。
・プリントサーバ
・WINSサーバ
・ActiveDirectoryメンバーサーバ
・Windows NTドメインのドメインコントローラ、メンバーサーバ
さらに開発中のSamba 4.0ではActiveDirectoryのドメインコントローラ機能も提供される予定です。
◇Sambaの導入◇
CentOS環境へのSambaのインストールは
インストール後は、
なお以下のデーモンがサービスsmbにより起動されます。
Sambaのデーモンはsmbdとnmbdです。
◇smbd
ファイル共有と印刷サービスをWindowsクライアントへ対して提供するデーモンです。
その他、ユーザ認証、リソースのロックなどを行います。SMB通信で使用するサーバ上のリッスンポートはTCPの139と445です。
◇nmbd
NetBIOSネームサービス要求に応答します。またブラウジングプロトコルにより、Windowsクライアントのマイネットワークなどに表示されるようになります。NMB通信で使用するポートはUDPの137です。
Sambaをインストールすると同時にWindowsとの認証統合を行うためのWinbindというサービスもインストールされます。
Winbindを自動起動するためには以下のコマンドを実行しておきます。
◇Sambaの設定ファイル◇
Sambaの設定は/etc/samba/smb.confで行います。
Sambaの設定ファイルの記載はセクションごとに行います。
globalセクション、homesセクション、printersセクションは予約されたセクションで特別な記述を行います。
それ以外のセクションについては、任意の名前をつけることができます。
◇globalセクション
[global]で定義されます。
Sambaサーバ全体の設定を行います。
globalセクションの変更時にはSambaサービスの再起動が必要になります。
◇homesセクション
[homes]で定義されます。
UNIXユーザの各ホームディレクトリを一括して共有するためのセクションです。
例えばUNIXユーザkyonでSambaサーバへログインすると、UNIXユーザのkyonのホームディレクトリが共有ディレクトリとして公開されます。
◇printersセクション
[printers]で定義されます。
共有プリンタに関する設定を行います。複数のプリンタについての設定をまとめて行います。
◇その他のセクション
[任意のセクション名]
一般の共有設定を行う際に使用します。
セクション名が共有名になります。
CentOS5環境のsmb.conf初期設定(コメントアウト行を除く)
次回は各セッションの代表的なパラメータについて解説します。
<今回の教科書(…といってもいつも同じ)>
◇基本はあずき本で確認⇒Linux教科書 LPICレベル2 第3版 (CD-ROM付)![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=as2&o=9&a=479811930X)
◇応用は黒本で特訓⇒徹底攻略LPI 問題集Level2/Release2 対応 (ITプロ/ITエンジニアのための徹底攻略)![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=as2&o=9&a=4844327321)
SambaはSMB/CIFSを扱うことで、Windowsシステムとの間でファイル共有を実現するソフトウェアです。
Sambaはファイル共有の他に以下のような機能を提供します。
・プリントサーバ
・WINSサーバ
・ActiveDirectoryメンバーサーバ
・Windows NTドメインのドメインコントローラ、メンバーサーバ
さらに開発中のSamba 4.0ではActiveDirectoryのドメインコントローラ機能も提供される予定です。
◇Sambaの導入◇
CentOS環境へのSambaのインストールは
# yum install samba |
インストール後は、
# chkconfig smb on |
なお以下のデーモンがサービスsmbにより起動されます。
# ps aux |
Sambaのデーモンはsmbdとnmbdです。
◇smbd
ファイル共有と印刷サービスをWindowsクライアントへ対して提供するデーモンです。
その他、ユーザ認証、リソースのロックなどを行います。SMB通信で使用するサーバ上のリッスンポートはTCPの139と445です。
◇nmbd
NetBIOSネームサービス要求に応答します。またブラウジングプロトコルにより、Windowsクライアントのマイネットワークなどに表示されるようになります。NMB通信で使用するポートはUDPの137です。
Sambaをインストールすると同時にWindowsとの認証統合を行うためのWinbindというサービスもインストールされます。
Winbindを自動起動するためには以下のコマンドを実行しておきます。
# chkconfig winbind on |
◇Sambaの設定ファイル◇
Sambaの設定は/etc/samba/smb.confで行います。
Sambaの設定ファイルの記載はセクションごとに行います。
globalセクション、homesセクション、printersセクションは予約されたセクションで特別な記述を行います。
それ以外のセクションについては、任意の名前をつけることができます。
◇globalセクション
[global]で定義されます。
Sambaサーバ全体の設定を行います。
globalセクションの変更時にはSambaサービスの再起動が必要になります。
◇homesセクション
[homes]で定義されます。
UNIXユーザの各ホームディレクトリを一括して共有するためのセクションです。
例えばUNIXユーザkyonでSambaサーバへログインすると、UNIXユーザのkyonのホームディレクトリが共有ディレクトリとして公開されます。
◇printersセクション
[printers]で定義されます。
共有プリンタに関する設定を行います。複数のプリンタについての設定をまとめて行います。
◇その他のセクション
[任意のセクション名]
一般の共有設定を行う際に使用します。
セクション名が共有名になります。
CentOS5環境のsmb.conf初期設定(コメントアウト行を除く)
# cat /etc/samba/smb.conf |
次回は各セッションの代表的なパラメータについて解説します。
<今回の教科書(…といってもいつも同じ)>
◇基本はあずき本で確認⇒Linux教科書 LPICレベル2 第3版 (CD-ROM付)
◇応用は黒本で特訓⇒徹底攻略LPI 問題集Level2/Release2 対応 (ITプロ/ITエンジニアのための徹底攻略)
LPIC level2 リベンジ!! 第5日 『NFSサーバの設定(2)』
こんばんは、NFSサーバの設定の続きです。
今回はNFSクライアント側の設定についてです。
◇NFSリソースのマウント◇
NFSクライアントがリモートのNFSサーバのリソースをマウントするためのコマンドは、内蔵ディスクや光学ディスクのマウントでも使用するmountコマンドを使用します。
-tオプションのファイルシステムの指定にはnfsを指定します。
<書式>
# mount -t nfs -o マウントオプション NFSサーバのホスト名orIPアドレス:公開ディレクトリパス マウントポイント
前回の例で、サーバ192.168.19.219のディレクトリ/share1を/mnt1へマウントするためには
とコマンドを入力します。
◇マウントオプション◇
NFSサーバのマウントにはハードマウントとソフトマウントの2種類があります。
ハードマウントの利点はNFSサーバがダウン等で応答しなくなった場合にもNFSクライアントは接続をキープすることです。NFSサーバが正常に戻ると、NFSクライアントからは何ごともなかったかのように接続が再開されます。ただし、NFSダウン時に状態をキープすることで、なにも操作を受け付けなくなってしまいます(Ctrl+Cなどでも中断できなくなる)。これを回避するために、ハードマウント時にはintrオプションの使用が推奨されています。(interオプションにより中断が可能となります。)
ソフトマウントは接続失敗時にそのファイルアクセスを要求したプログラムに対してエラーを返します。ただし、このエラーに対応しているソフトウェアはあまり多くはなく、接続失敗によりデータが失われる可能性もあります。
以下URL先の情報によると、ソフトマウントはあまり推奨されていないようです。
http://www.linux.or.jp/JF/JFdocs/NFS-HOWTO/client.html
マウントの種類の他に、NFS接続はネットワーク経由で行われるため、読み取り・書き取りのブロックサイズを指定するオプションなどがあります。
Linuxのカーネルパラメータと合わせて、性能チューニングを行う際には重要なパラメータとなります。
NFSマウント時に使用する主なマウントオプションを掲載しておきます。
◇NFSの練習問題◇
LPIC 202試験対策のオリジナル問題集です。
<問1>
NFSサーバの設定ファイルをフルパスで記述しなさい。
<問2>
NFSクライアントからrootユーザで接続があった場合に、ファイル操作を匿名アカウント権限で実行するためのオプションを記述しなさい。
<問3>
/shareディレクトリを192.168.10.0/255.255.255.0のNFSクライアントに対して読み込み専用でエクスポートしたい。ただしすべてのアクセスは匿名アカウント権限で行われようにする場合、/etc/exportsに記載する内容として適しているものを選びなさい。
A./share 192.168.10.0/255.255.255.0 (rw,nosquash)
B./share 192.168.10.0/255.255.255.0 (ro,nosquash)
C./share 192.168.10.0/255.255.255.0 (nosquash)
D./share 192.168.10.0/255.255.255.0 (ro,no_root_squash)
E./share 192.168.10.0/255.255.255.0 (rw)
<問4>
NFSリソースをハードマウントでマウントする場合のオプションは何か、空欄に適切なオプションを記述しなさい。
mount -t -o [ ] 192.168.100.23:/share /mnt
<今回の教科書(…といってもいつも同じ)>
◇基本はあずき本で確認⇒Linux教科書 LPICレベル2 第3版 (CD-ROM付)![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=as2&o=9&a=479811930X)
◇応用は黒本で特訓⇒徹底攻略LPI 問題集Level2/Release2 対応 (ITプロ/ITエンジニアのための徹底攻略)![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=as2&o=9&a=4844327321)
次回は「Samba」の予定です。ただのファイルサーバと思いきや、最新のSambaはActive DirectoryのDCにもなれるそう。。
今回はNFSクライアント側の設定についてです。
◇NFSリソースのマウント◇
NFSクライアントがリモートのNFSサーバのリソースをマウントするためのコマンドは、内蔵ディスクや光学ディスクのマウントでも使用するmountコマンドを使用します。
-tオプションのファイルシステムの指定にはnfsを指定します。
<書式>
# mount -t nfs -o マウントオプション NFSサーバのホスト名orIPアドレス:公開ディレクトリパス マウントポイント
前回の例で、サーバ192.168.19.219のディレクトリ/share1を/mnt1へマウントするためには
# mount -t nfs 192.168.19.219:/share1 /mnt1 |
◇マウントオプション◇
NFSサーバのマウントにはハードマウントとソフトマウントの2種類があります。
ハードマウントの利点はNFSサーバがダウン等で応答しなくなった場合にもNFSクライアントは接続をキープすることです。NFSサーバが正常に戻ると、NFSクライアントからは何ごともなかったかのように接続が再開されます。ただし、NFSダウン時に状態をキープすることで、なにも操作を受け付けなくなってしまいます(Ctrl+Cなどでも中断できなくなる)。これを回避するために、ハードマウント時にはintrオプションの使用が推奨されています。(interオプションにより中断が可能となります。)
ソフトマウントは接続失敗時にそのファイルアクセスを要求したプログラムに対してエラーを返します。ただし、このエラーに対応しているソフトウェアはあまり多くはなく、接続失敗によりデータが失われる可能性もあります。
以下URL先の情報によると、ソフトマウントはあまり推奨されていないようです。
http://www.linux.or.jp/JF/JFdocs/NFS-HOWTO/client.html
マウントの種類の他に、NFS接続はネットワーク経由で行われるため、読み取り・書き取りのブロックサイズを指定するオプションなどがあります。
Linuxのカーネルパラメータと合わせて、性能チューニングを行う際には重要なパラメータとなります。
NFSマウント時に使用する主なマウントオプションを掲載しておきます。
オプション | 説明 |
soft | ソフトマウントを行う |
timeo=時間 | ソフトマウント時のタイムアウト時間 |
hard | ハードマウントを行う |
intr | ハードマウント時に割り込みを許可する |
rsize=バッファサイズ | 読み取りバッファサイズの設定 |
wsize=バッファサイズ | 書き込みバッファサイズの設定 |
nolock | ファイルのロック動作を行わない(lockdを起動しない) |
◇NFSの練習問題◇
LPIC 202試験対策のオリジナル問題集です。
<問1>
NFSサーバの設定ファイルをフルパスで記述しなさい。
<問2>
NFSクライアントからrootユーザで接続があった場合に、ファイル操作を匿名アカウント権限で実行するためのオプションを記述しなさい。
<問3>
/shareディレクトリを192.168.10.0/255.255.255.0のNFSクライアントに対して読み込み専用でエクスポートしたい。ただしすべてのアクセスは匿名アカウント権限で行われようにする場合、/etc/exportsに記載する内容として適しているものを選びなさい。
A./share 192.168.10.0/255.255.255.0 (rw,nosquash)
B./share 192.168.10.0/255.255.255.0 (ro,nosquash)
C./share 192.168.10.0/255.255.255.0 (nosquash)
D./share 192.168.10.0/255.255.255.0 (ro,no_root_squash)
E./share 192.168.10.0/255.255.255.0 (rw)
<問4>
NFSリソースをハードマウントでマウントする場合のオプションは何か、空欄に適切なオプションを記述しなさい。
mount -t -o [ ] 192.168.100.23:/share /mnt
<今回の教科書(…といってもいつも同じ)>
◇基本はあずき本で確認⇒Linux教科書 LPICレベル2 第3版 (CD-ROM付)
◇応用は黒本で特訓⇒徹底攻略LPI 問題集Level2/Release2 対応 (ITプロ/ITエンジニアのための徹底攻略)
次回は「Samba」の予定です。ただのファイルサーバと思いきや、最新のSambaはActive DirectoryのDCにもなれるそう。。
LIAR-GAME
いまさらながらLIAR-GAMEにはまっています。
つい昨日から![あせる](https://stat.ameba.jp/blog/ucs/img/char/char2/029.gif)
原作も読んだことなく、ドラマもシーズン2の第8話(最終回の一つ前)しか観ていないんだけど、はまってしまい、ドラマの最終回を楽しみにしていたのに、オンエアが火曜日だってこと知らなくて見逃して、考えれば考えるほど内容が気になり…
ついに昨日近所の本屋さんで漫画を買ってしまいました![汗](https://stat.ameba.jp/blog/ucs/img/char/char2/028.gif)
昨日は1~3巻、今日は4,5巻。あっという間に読破![!!](https://stat.ameba.jp/blog/ucs/img/char/char2/176.gif)
かなり面白いです![ひらめき電球](https://stat.ameba.jp/blog/ucs/img/char/char2/089.gif)
昔からアガサクリスティーとか金田一とかコナンとか好きだったのですが、こういうトリックって面白い![ビックリマーク](https://stat.ameba.jp/blog/ucs/img/char/char2/039.gif)
だまし合いなので特に死者がでるわけでもないので安心して観れます(笑)
あらすじは、Wikiとかにいくらでも載っているので、簡単にまとめると
ある日、主人公の神埼直(ドラマで戸田さんの役)のもとに現金1億円とライアーゲームと言う名のゲームへの参加状が送られてきます。
ライアーゲームと相手の資金を奪いとりゲーム終了時に一番資金を持っていた者が勝者となるゲーム。
ゲーム終了時には初めの資金の1億円は回収され、つまり1億まるごと相手に取られてしまうと、1億円の借金をすることになるという。
1回戦の相手は、学生時代に慕っていた恩師。
ゲームを降りたい主人公の直は、自分も教え子をだますつもりはないという恩師の言葉にだまされ、まんまと1億円を奪われてしまいます。
困り果てた直が助けを求めたのは、その昔、たった一人で巨大マルチを壊滅させた天才詐欺師の秋山深一(ドラマの松田さん役)。
バカ正直の直と天才詐欺師秋山の手に汗握る頭脳戦。果たして2人の運命は?そしてこのゲームの真の目的とは!?
LIAR GAME (1) (ヤングジャンプ・コミックス)
![](https://img-proxy.blog-video.jp/images?url=http%3A%2F%2Fecx.images-amazon.com%2Fimages%2FI%2F31K34GSVFAL._SL160_.jpg)
![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=as2&o=9&a=4088768558)
さて、ただいまLPIC勉強中。
今週もあと一日、がんばろう![グー](https://stat.ameba.jp/blog/ucs/img/char/char2/104.gif)
つい昨日から
![あせる](https://stat.ameba.jp/blog/ucs/img/char/char2/029.gif)
原作も読んだことなく、ドラマもシーズン2の第8話(最終回の一つ前)しか観ていないんだけど、はまってしまい、ドラマの最終回を楽しみにしていたのに、オンエアが火曜日だってこと知らなくて見逃して、考えれば考えるほど内容が気になり…
ついに昨日近所の本屋さんで漫画を買ってしまいました
![汗](https://stat.ameba.jp/blog/ucs/img/char/char2/028.gif)
昨日は1~3巻、今日は4,5巻。あっという間に読破
![!!](https://stat.ameba.jp/blog/ucs/img/char/char2/176.gif)
かなり面白いです
![ひらめき電球](https://stat.ameba.jp/blog/ucs/img/char/char2/089.gif)
昔からアガサクリスティーとか金田一とかコナンとか好きだったのですが、こういうトリックって面白い
![ビックリマーク](https://stat.ameba.jp/blog/ucs/img/char/char2/039.gif)
だまし合いなので特に死者がでるわけでもないので安心して観れます(笑)
あらすじは、Wikiとかにいくらでも載っているので、簡単にまとめると
ある日、主人公の神埼直(ドラマで戸田さんの役)のもとに現金1億円とライアーゲームと言う名のゲームへの参加状が送られてきます。
ライアーゲームと相手の資金を奪いとりゲーム終了時に一番資金を持っていた者が勝者となるゲーム。
ゲーム終了時には初めの資金の1億円は回収され、つまり1億まるごと相手に取られてしまうと、1億円の借金をすることになるという。
1回戦の相手は、学生時代に慕っていた恩師。
ゲームを降りたい主人公の直は、自分も教え子をだますつもりはないという恩師の言葉にだまされ、まんまと1億円を奪われてしまいます。
困り果てた直が助けを求めたのは、その昔、たった一人で巨大マルチを壊滅させた天才詐欺師の秋山深一(ドラマの松田さん役)。
バカ正直の直と天才詐欺師秋山の手に汗握る頭脳戦。果たして2人の運命は?そしてこのゲームの真の目的とは!?
LIAR GAME (1) (ヤングジャンプ・コミックス)
![](https://img-proxy.blog-video.jp/images?url=http%3A%2F%2Fecx.images-amazon.com%2Fimages%2FI%2F31K34GSVFAL._SL160_.jpg)
さて、ただいまLPIC勉強中。
今週もあと一日、がんばろう
![グー](https://stat.ameba.jp/blog/ucs/img/char/char2/104.gif)
LPIC level2 リベンジ!! 第4日 『NFSサーバの設定』
ちょっと日にちが空いてしまいました。すいません。
本日から「主題209:ファイルとサービスの共有」対策をお送りします。
今回を入れて多分4回くらい(NFSサーバ2回、Sambaサーバ2回)になると思います。
まず今回は「NFSサーバの設定」についてです。
NFS(Network File System)はネットワーク越しにファイルのマウントを実現する仕組みです。
NFSクライアント(NFSサーバを利用する側)はNFSサーバ上のディスクリソースを、あたかもローカルシステムかのように扱うことができます。
NFSはもともとサン・マイクロシステムズが開発した技術であり、性能の安定性という点ではSolarisが優位な気がしますが、LinuxのNFSサーバも十分利用できると思います。
◇NFSサーバの導入◇
CentOSでNFSサーバを利用する場合はyumコマンドでnfs-utilsをインストールします。
インストールが完了したらサービスを開始します。同時にchkconfigから自動起動もONにしておくと、次回からOS起動と同時にサービスが立ち上がってくれます。また、NFSサーバを立ち上げるためにはportmapサービスが起動している必要があるようですので、合わせて起動しておきます。
◇NFSサーバの設定◇
NFSサーバの設定ファイルは/etc/exportsです。
/etc/exportsには公開するディレクトリ名、公開するクライアント、(オプション)の順で記述します。
以下は今回作成した設定ファイルの内容です。
/etc/exports
どの行も192.168.19.0のネットワークにあるクライアントからの接続に対して読み書きの許可を与える設定です。/etc/exportsを修正したらexportfsコマンドを実行して、設定を反映させます。
またエクスポートさせるディレクトリの権限・所有者は以下のようになっています。
さて、この状態でNFSクライアントからの接続を行ってみます。(今回はNFSサーバとNFSクライアントを同一マシンとして作業を行いました。)
NFSサーバがどのディレクトリをエクスポートしているかは、showmountコマンドを使用して確認することができます。
NFSリソースのマウントは通常のマウントと同様にmountコマンドで行います。オプションは「-t nfs」とします。(/etc/fstabに記述すれば、OS起動時に自動でマウントしてくれます)
コマンド実行後、dfコマンドでマウントしていることを確認します。
マウントが完了したので、実際にマウントしたディレクトリに読み書きの操作を行ってみます。
都合上、ユーザをkyontoraに切り替えておきます。
さて、ここで問題です。ユーザkyontoraで/mnt1、/mnt2、/mnt3へファイル作成操作を行った場合に失敗するディレクトリが一つあります。それはどれでしょうか?
正解は/mnt1です。解説をする前にまずはコマンドの結果を載せておきます。
エラー内容からわかるように、失敗の原因は権限です。では、権限のどこに問題があるかを見てみましょう。
作成に成功したものについて、作成されたファイルの権限はつぎのようになっています。
今回、NFSサーバとNFSクライアントが同じホスト上であったのでわかりずらいかも知れませんが、NFSクライアント上のユーザkyontoraがファイルを作成したのはNFSサーバ上のディレクトリです。にもかかわらず、作成されたファイルのオーナーはNFSクライアントのユーザです。
次回以降で紹介するSambaは作成されたファイルのオーナーはSambaサーバ上のユーザになりますが、NFSではNFSクライアントのユーザ(UID)で作成されることに注意してください。つまり、NFSサーバでリソースをエクスポートする場合、エクスポートするディレクトリにはNFSクライアントが使用するユーザ(UID)に対して権限をつけてやる必要があります。
今回の例では/mnt3はディレクトリの権限を777にしてあるのですべてのユーザ(UID)に対して書き込み権限があり、/mnt2は権限は755ですが、ディレクトリのオーナーをkyontora(NFSクライアントのユーザと同じUID)にしていたので書き込みが可能でした。
さて、ではNFSクライアントがrootユーザで接続してきた場合にはNFSサーバ上でもrootユーザとしてファイル操作が行われるのでしょうか?
NFSクライアントのユーザをrootとして、再度マウントしたディレクトリに書き込みテストをしてみます。
なんと、/mnt3しか書き込みに成功しませんでした。/mnt1も/mnt2もrootユーザに対して書き込み権限があるのですが、なぜ失敗したのでしょうか?
作成に成功したファイルの属性を確認すると、実はrootユーザとして作成していなかったことがわかります。
実はNFSクライアントがrootユーザとしてNFSサーバへアクセスした場合、root権限を許可することはセキュリティ上危険であるという考えの下、匿名ユーザ権限として操作を行っていたのです。(これはNFSサーバのオプションの規定値であり、オプションによってはroot権限のまま操作を行うことも可能です。)
/etc/exportsのオプションの一部を紹介しておきます。
/etc/exportsのオプションは複数設定することができます。また、ひとつの公開ディレクトリに対して異なるクライアントに対して別々のオプションを設定することも可能です。
次回はNFSクライアントのマウントオプションについてちょこっと紹介してから、LPICオリジナル練習問題を掲載します。
それから、やっぱり試験日を延期しました。。
1月は都合がつかなそうなので2月予定です。
本日から「主題209:ファイルとサービスの共有」対策をお送りします。
今回を入れて多分4回くらい(NFSサーバ2回、Sambaサーバ2回)になると思います。
まず今回は「NFSサーバの設定」についてです。
NFS(Network File System)はネットワーク越しにファイルのマウントを実現する仕組みです。
NFSクライアント(NFSサーバを利用する側)はNFSサーバ上のディスクリソースを、あたかもローカルシステムかのように扱うことができます。
NFSはもともとサン・マイクロシステムズが開発した技術であり、性能の安定性という点ではSolarisが優位な気がしますが、LinuxのNFSサーバも十分利用できると思います。
◇NFSサーバの導入◇
CentOSでNFSサーバを利用する場合はyumコマンドでnfs-utilsをインストールします。
# yum install nfs-utils |
インストールが完了したらサービスを開始します。同時にchkconfigから自動起動もONにしておくと、次回からOS起動と同時にサービスが立ち上がってくれます。また、NFSサーバを立ち上げるためにはportmapサービスが起動している必要があるようですので、合わせて起動しておきます。
# chkconfig portmap on |
◇NFSサーバの設定◇
NFSサーバの設定ファイルは/etc/exportsです。
/etc/exportsには公開するディレクトリ名、公開するクライアント、(オプション)の順で記述します。
以下は今回作成した設定ファイルの内容です。
/etc/exports
/share1 192.168.19.0/255.255.255.0(rw) |
# exportfs -ar |
またエクスポートさせるディレクトリの権限・所有者は以下のようになっています。
# ls -Ald /share* |
さて、この状態でNFSクライアントからの接続を行ってみます。(今回はNFSサーバとNFSクライアントを同一マシンとして作業を行いました。)
NFSサーバがどのディレクトリをエクスポートしているかは、showmountコマンドを使用して確認することができます。
# showmount -e 192.168.19.219 |
NFSリソースのマウントは通常のマウントと同様にmountコマンドで行います。オプションは「-t nfs」とします。(/etc/fstabに記述すれば、OS起動時に自動でマウントしてくれます)
# mount -t nfs 192.168.19.219:/share1 /mnt1 |
コマンド実行後、dfコマンドでマウントしていることを確認します。
# df |
マウントが完了したので、実際にマウントしたディレクトリに読み書きの操作を行ってみます。
都合上、ユーザをkyontoraに切り替えておきます。
# su - kyontorar |
さて、ここで問題です。ユーザkyontoraで/mnt1、/mnt2、/mnt3へファイル作成操作を行った場合に失敗するディレクトリが一つあります。それはどれでしょうか?
正解は/mnt1です。解説をする前にまずはコマンドの結果を載せておきます。
$ touch /mnt1/test1.txt |
エラー内容からわかるように、失敗の原因は権限です。では、権限のどこに問題があるかを見てみましょう。
作成に成功したものについて、作成されたファイルの権限はつぎのようになっています。
-rw-rw-r-- 1 kyontora kyontora 0 1月 18 22:18 /mnt2/test2.txt |
今回、NFSサーバとNFSクライアントが同じホスト上であったのでわかりずらいかも知れませんが、NFSクライアント上のユーザkyontoraがファイルを作成したのはNFSサーバ上のディレクトリです。にもかかわらず、作成されたファイルのオーナーはNFSクライアントのユーザです。
次回以降で紹介するSambaは作成されたファイルのオーナーはSambaサーバ上のユーザになりますが、NFSではNFSクライアントのユーザ(UID)で作成されることに注意してください。つまり、NFSサーバでリソースをエクスポートする場合、エクスポートするディレクトリにはNFSクライアントが使用するユーザ(UID)に対して権限をつけてやる必要があります。
今回の例では/mnt3はディレクトリの権限を777にしてあるのですべてのユーザ(UID)に対して書き込み権限があり、/mnt2は権限は755ですが、ディレクトリのオーナーをkyontora(NFSクライアントのユーザと同じUID)にしていたので書き込みが可能でした。
さて、ではNFSクライアントがrootユーザで接続してきた場合にはNFSサーバ上でもrootユーザとしてファイル操作が行われるのでしょうか?
NFSクライアントのユーザをrootとして、再度マウントしたディレクトリに書き込みテストをしてみます。
# touch /mnt1/test1_2.txt |
なんと、/mnt3しか書き込みに成功しませんでした。/mnt1も/mnt2もrootユーザに対して書き込み権限があるのですが、なぜ失敗したのでしょうか?
作成に成功したファイルの属性を確認すると、実はrootユーザとして作成していなかったことがわかります。
-rw-r--r-- 1 nfsnobody nfsnobody 0 1月 18 22:46 /mnt3/test3_2.txt |
実はNFSクライアントがrootユーザとしてNFSサーバへアクセスした場合、root権限を許可することはセキュリティ上危険であるという考えの下、匿名ユーザ権限として操作を行っていたのです。(これはNFSサーバのオプションの規定値であり、オプションによってはroot権限のまま操作を行うことも可能です。)
/etc/exportsのオプションの一部を紹介しておきます。
オプション | 説明 |
ro | 読み込み専用でエクスポートします。(規定値設定) |
rw | 読み書き許可を与えエクスポートします。 |
root_squash | NFSクライアントからrootでアクセスされた場合に匿名ユーザとしてファイル操作を行います。(規定値設定) |
no_root_squash | NFSクライアントからrootでアクセスされた場合にrootとしてファイル操作を行います。 |
all_squash | すべてのユーザでのアクセスを匿名ユーザとしてファイル操作を行います。 |
no_all_squash | すべてのユーザのアクセスをそのままのユーザ(UID)としてファイル操作を行います。 |
anonuid=nn | すべてのユーザのアクセスをUID=nnとしてファイル操作を行います。 |
anongid=nn | すべてのユーザのアクセスをGID=nnとしてファイル操作を行います。 |
/etc/exportsのオプションは複数設定することができます。また、ひとつの公開ディレクトリに対して異なるクライアントに対して別々のオプションを設定することも可能です。
/share1 192.168.19.0/255.255.255.0(rw) |
次回はNFSクライアントのマウントオプションについてちょこっと紹介してから、LPICオリジナル練習問題を掲載します。
それから、やっぱり試験日を延期しました。。
1月は都合がつかなそうなので2月予定です。
LPIC level2 リベンジ!! 第3日 『LDAPクライアントの利用』
『主題210:ネットワーククライアントの管理』の最後はLDAPクライアントについてです。
LDAPの詳しい設定などはLPIC Level3 coreの範囲なのでLevel2での出題はコマンドの使い方くらいです。
が、LDAPクライアントのコマンドを実際に使うためにはLDAPサーバがいないとダメなので、ちょこっとLDAPサーバの設定についてもまとめます。
◇LDAPサーバの構築◇
きょんとらぼる太の環境(CentOS 5.4)での構築についてまとめておきます。
まず、LDAPサーバとLDAPクライアントのパッケージをインストールします。インストールはyumで行いました。
インストールが完了したらLDAPサーバのコンフィグファイルを作成します。
コンフィグファイルには管理者パスワードを記載しますが、平文で記載するのはセキュリティ上良くありません。そこでslappasswdコマンドでSSHA暗号化形式のパスワードを取得します。
LDAPサーバのコンフィグファイルは/etc/openldap/slapd.confです。viで編集します。以下の行を編集します。rootpwはslappasswdコマンドで取得した文字列を指定します。
/etc/openldapディレクトリのDB_CONFIG.exampleを/var/lib/ldapディレクトリにコピーします。ファイル名はDB_CONFIGにします。
/var/lib/ldapディレクトリ内のファイルの所有者をldap:ldapに変更します。
LDAPサービスを開始します。
◇LDAPクライアントのコマンド◇
LDAPクライアントの主なコマンドには以下のものがあります。
◇データの追加◇
LDAPサーバにデータの追加を行うためにLDIF(LDAP Data Interchange Format)ファイルを作成します。空行を入れることで複数のエントリを記述することができます。
test.ldif
作成したLDIFファイルをldapaddコマンドで追加します。
<書式>
ldapadd [オプション]
ldapaddコマンドで使用できるオプションは次のものがあります。
先ほど作成したtest.ldifファイルを以下のコマンドで追加します。
◇データの検索◇
エントリの検索にはldapsearchコマンドを使用します。
<書式>
ldapsearch [オプション] 検索フィルタ [出力属性]
以下のコマンドはエントリの中からobjectclassがinetOrgPersonのものを検索しています。
◇LDAPの練習問題◇
LPIC 202試験対策のオリジナル問題集です。
<問1>
ldapサーバの設定ファイルをフルパスで記述しなさい。
<問2>
LDAPサーバにエントリを追加するコマンドを記述しなさい。
<問3>
ldapサーバからobjectclassがorganizationalUnitのエントリを検索するコマンドを次の中から選びなさい。ただしLDAPサーバはローカルホストであるとし、SASL認証を使用しないこととする。
A. ldapsearch -x -LLL -D "dc=kyon,dc=tora" "(objectclass=inetOrgPerson)"
B. ldapsearch -LLL -b "dc=kyon,dc=tora" "(objectclass=inetOrgPerson)"
C. ldapsearch -x -LLL -b "dc=kyon,dc=tora" "(objectclass:inetOrgPerson)"
D. ldapsearch -x -LLL -b "dc=kyon,dc=tora" "(objectclass=inetOrgPerson)"
<参考にさせていただいたWeb Site>
http://blog.absolute-zero.info/?m=200706&paged=2
http://blog.goo.ne.jp/makoto_climb/e/e0a6366072c97a14bbe7f3a4a5e6cdb5
http://arinux.jugem.jp/?eid=42
<今回の教科書(…といってもいつも同じ)>
◇基本はあずき本で確認⇒Linux教科書 LPICレベル2 第3版 (CD-ROM付)![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=as2&o=9&a=479811930X)
◇応用は黒本で特訓⇒徹底攻略LPI 問題集Level2/Release2 対応 (ITプロ/ITエンジニアのための徹底攻略)![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=as2&o=9&a=4844327321)
次回は「主題212:システムのセキュリティ」の予定です。
LDAPの詳しい設定などはLPIC Level3 coreの範囲なのでLevel2での出題はコマンドの使い方くらいです。
が、LDAPクライアントのコマンドを実際に使うためにはLDAPサーバがいないとダメなので、ちょこっとLDAPサーバの設定についてもまとめます。
◇LDAPサーバの構築◇
きょんとらぼる太の環境(CentOS 5.4)での構築についてまとめておきます。
まず、LDAPサーバとLDAPクライアントのパッケージをインストールします。インストールはyumで行いました。
# yum install openldap-servers |
インストールが完了したらLDAPサーバのコンフィグファイルを作成します。
コンフィグファイルには管理者パスワードを記載しますが、平文で記載するのはセキュリティ上良くありません。そこでslappasswdコマンドでSSHA暗号化形式のパスワードを取得します。
# slappasswd |
LDAPサーバのコンフィグファイルは/etc/openldap/slapd.confです。viで編集します。以下の行を編集します。rootpwはslappasswdコマンドで取得した文字列を指定します。
# vi /etc/openldap/slapd.conf |
/etc/openldapディレクトリのDB_CONFIG.exampleを/var/lib/ldapディレクトリにコピーします。ファイル名はDB_CONFIGにします。
# cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG |
/var/lib/ldapディレクトリ内のファイルの所有者をldap:ldapに変更します。
# chown ldap:ldap /var/lib/* |
LDAPサービスを開始します。
# /etc/init.d/ldap start |
◇LDAPクライアントのコマンド◇
LDAPクライアントの主なコマンドには以下のものがあります。
コマンド | 説明 |
ldapadd | データを追加する |
ldapsearch | データを検索する |
ldapdelete | データを削除する |
ldapmodify | データを変更する |
ldappasswd | パスワードを変更する |
◇データの追加◇
LDAPサーバにデータの追加を行うためにLDIF(LDAP Data Interchange Format)ファイルを作成します。空行を入れることで複数のエントリを記述することができます。
test.ldif
dn: dc=kyon,dc=tora |
作成したLDIFファイルをldapaddコマンドで追加します。
<書式>
ldapadd [オプション]
ldapaddコマンドで使用できるオプションは次のものがあります。
オプション | 説明 |
-h ホスト | LDAPサーバを指定します。省略するとローカルホストに接続します。 |
-x | SASLを使用せず簡易認証を用います。 |
-D バインドDN | 認証に利用するDNを指定します。 |
-W | 認証時のパスワードを対話的に入力します。 |
-w パスワード | 認証時のパスワードをコマンド内で指定します。 |
-f ファイル名 | LDIFファイルを指定します。 |
先ほど作成したtest.ldifファイルを以下のコマンドで追加します。
# ldapadd -x -D "cn=Tiger,dc=kyon,dc=tora" -W -f test.ldap |
◇データの検索◇
エントリの検索にはldapsearchコマンドを使用します。
<書式>
ldapsearch [オプション] 検索フィルタ [出力属性]
オプション | 説明 |
-h ホスト | LDAPサーバを指定します。省略するとローカルホストに接続します。 |
-x | SASLを使用せず簡易認証を用います。 |
-b ベースDN | 検索を開始するベースDNを指定します。 |
-L | 検索結果をLDIFv1形式で表示します。 |
-LL | 検索結果をコメントなしの形式で表示します。 |
-LLL | 検索結果をコメントとLDAPのバージョンなしで表示します。 |
以下のコマンドはエントリの中からobjectclassがinetOrgPersonのものを検索しています。
$ ldapsearch -x -LLL -b "dc=kyon,dc=tora" "(objectclass=inetOrgPerson)" |
◇LDAPの練習問題◇
LPIC 202試験対策のオリジナル問題集です。
<問1>
ldapサーバの設定ファイルをフルパスで記述しなさい。
<問2>
LDAPサーバにエントリを追加するコマンドを記述しなさい。
<問3>
ldapサーバからobjectclassがorganizationalUnitのエントリを検索するコマンドを次の中から選びなさい。ただしLDAPサーバはローカルホストであるとし、SASL認証を使用しないこととする。
A. ldapsearch -x -LLL -D "dc=kyon,dc=tora" "(objectclass=inetOrgPerson)"
B. ldapsearch -LLL -b "dc=kyon,dc=tora" "(objectclass=inetOrgPerson)"
C. ldapsearch -x -LLL -b "dc=kyon,dc=tora" "(objectclass:inetOrgPerson)"
D. ldapsearch -x -LLL -b "dc=kyon,dc=tora" "(objectclass=inetOrgPerson)"
<参考にさせていただいたWeb Site>
http://blog.absolute-zero.info/?m=200706&paged=2
http://blog.goo.ne.jp/makoto_climb/e/e0a6366072c97a14bbe7f3a4a5e6cdb5
http://arinux.jugem.jp/?eid=42
<今回の教科書(…といってもいつも同じ)>
◇基本はあずき本で確認⇒Linux教科書 LPICレベル2 第3版 (CD-ROM付)
◇応用は黒本で特訓⇒徹底攻略LPI 問題集Level2/Release2 対応 (ITプロ/ITエンジニアのための徹底攻略)
次回は「主題212:システムのセキュリティ」の予定です。
LPIC level2 リベンジ!! 第2日 『PAM認証』
2日目の今回はPAM認証についてまとめます。
とらぼる太はPAMという存在をLPICの勉強をするまで知りませんでしたが、そういう方も意外と多いのではないでしょうか?
ApacheやSamba、DHCP、DNSのような明らかに目に見える動作・機能が無いことが原因だと思いますが、現在のLinuxシステムを支える大切な仕組みです。
簡単にまとめるとPAM(Pluggable Authentication Modules)は認証を一元管理する仕組みを提供しています。
PAMは複雑なのでlinux.or.ipのサイトも参考にすると良いかと思います。
http://www.linux.or.jp/JF/JFdocs/User-Authentication-HOWTO/pam.html
◇PAMの必要性◇
昔のUNIXシステムではユーザ認証を行う場合/etc/passwdファイルを参照する方法でしたがその後/etc/shadowファイルなどの新たなユーザ認証方法が登場しました。
当然ユーザ認証を必要とするプログラムは認証方法の変化に伴い、それら新しい認証方法への対応が必要となります。
そこで導入されたのがPAMです。PAMはプログラムに対してユーザ認証の機能を提供します。認証方法の変更が発生した場合にもプログラムの修正は不要で、PAMの設定を変更することで対応が可能となります。また、PAMでは特定のユーザのみを認証するといった設定を行うこともできるようになります。
◇PAMの設定◇
PAMの設定ファイルは/etc/pam.d/ディレクトリに配置されます。
とらぼる太環境のファイルは以下の通りでした。
PAMの設定ファイルはユーザ認証を行うプログラムごとに用意されています。また、ほとんどがプログラムと同名のファイル名です。プログラムに対応するPAM設定ファイルが無い場合はotherファイルが用いられます。
設定ファイルは次のの形式で書かれています。
/etc/pam.d/loginは以下のような内容でした。
type(モジュールタイプ)には以下の4つがあります。
control(コントロール)には以下の4つがあります。
上記の他にincludeにより他の設定ファイルをインクルードすることもできます。
module-path(モジュールパス)にはどのモジュールを使用するかを指定します。module-arguments(引数)にはモジュールに渡される引数を指定します。以下のようなモジュールがあります。なおモジュールは/usr/lib/security/もしくは/lib/security/ディレクトリに存在します。
◇PAMの練習問題◇
LPIC 202試験対策のオリジナル問題集です。
<問1>
PAMの設定ファイルが置かれるディレクトリ名をフルパスで記述しなさい。
<問2>
PAMの設定ファイルに記述するモジュールタイプについて、存在しないのは次のうちどれか選択しなさい。
A.account
B.session
C.auth
D.sufficient
E.passwd
<問3>
あるコンソールからのrootログインに失敗する。その端末からのログインがPAMにより拒否されているかどうかを確認するにはどのファイルを調べればよいか?ファイル名をフルパスで記述しなさい。
<問4>
以下は/etc/pam.d/loginファイルの中身である。
A.直ちに認証失敗が通知され2行目以降は判定されない
B.3行目まで判定を行ったのち認証失敗が通知される
C.2行目以降の判定で認証が成功するので最終的に認証が成功する
D.ファイルの最後まで判定を行ったのち認証失敗が通知される
今回はここまで。次回はLDAPをちょこっとやって「主題210:ネットワーククライアントの管理」をおしまいにします。
<今回の教科書(…といってもいつも同じ)>
◇基本はあずき本で確認⇒Linux教科書 LPICレベル2 第3版 (CD-ROM付)![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=as2&o=9&a=479811930X)
◇応用は黒本で特訓⇒徹底攻略LPI 問題集Level2/Release2 対応 (ITプロ/ITエンジニアのための徹底攻略)![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=as2&o=9&a=4844327321)
とらぼる太はPAMという存在をLPICの勉強をするまで知りませんでしたが、そういう方も意外と多いのではないでしょうか?
ApacheやSamba、DHCP、DNSのような明らかに目に見える動作・機能が無いことが原因だと思いますが、現在のLinuxシステムを支える大切な仕組みです。
簡単にまとめるとPAM(Pluggable Authentication Modules)は認証を一元管理する仕組みを提供しています。
PAMは複雑なのでlinux.or.ipのサイトも参考にすると良いかと思います。
http://www.linux.or.jp/JF/JFdocs/User-Authentication-HOWTO/pam.html
◇PAMの必要性◇
昔のUNIXシステムではユーザ認証を行う場合/etc/passwdファイルを参照する方法でしたがその後/etc/shadowファイルなどの新たなユーザ認証方法が登場しました。
当然ユーザ認証を必要とするプログラムは認証方法の変化に伴い、それら新しい認証方法への対応が必要となります。
そこで導入されたのがPAMです。PAMはプログラムに対してユーザ認証の機能を提供します。認証方法の変更が発生した場合にもプログラムの修正は不要で、PAMの設定を変更することで対応が可能となります。また、PAMでは特定のユーザのみを認証するといった設定を行うこともできるようになります。
◇PAMの設定◇
PAMの設定ファイルは/etc/pam.d/ディレクトリに配置されます。
とらぼる太環境のファイルは以下の通りでした。
# ls /etc/pam.d/ |
PAMの設定ファイルはユーザ認証を行うプログラムごとに用意されています。また、ほとんどがプログラムと同名のファイル名です。プログラムに対応するPAM設定ファイルが無い場合はotherファイルが用いられます。
設定ファイルは次のの形式で書かれています。
type control module-path module-arguments |
/etc/pam.d/loginは以下のような内容でした。
#%PAM-1.0 |
type(モジュールタイプ)には以下の4つがあります。
auth | ユーザが自称する通りの本物のユーザかどうかを確かめます。通常はパスワードで確認します。 |
account | ユーザがサービスへのアクセスを許可されているかどうか、パスワードが期限切れになっていないかなどを(パスワードとは無関係に)確認します。 |
password | ユーザに自分の認証方法を変更するメカニズムを提供します。これも通常はパスワードの変更によってなされます。 |
session | ユーザの認証前または認証後、あるいはその両方で実行する処理を指定します。ユーザディレクトリのマウントやアンマウント、ログインやログアウト時のログ記録、ユーザが利用できるサービスを制限などを実行します。 |
control(コントロール)には以下の4つがあります。
requisite | このモジュールを経由して認証に失敗した場合に、即座に認証を拒絶します。 |
required | 認証に失敗した場合に、認証を拒否します。しかし、PAM は、認証拒否をユーザに知らせる前に、このサービスのためにリストアップされた(同一 type の)全てのモジュールを実行します。 |
sufficient | このモジュールによる認証が成功した場合、それまでの "required" 型モジュールがすべて成功している場合のみPAM はそのユーザに認証を与えます。 |
optional | このモジュールが認証の成否に関して意味を持つのは、そのサービスに関して、これが(認証の成否を決めるべき)唯一のモジュール型である場合だけです。 |
module-path(モジュールパス)にはどのモジュールを使用するかを指定します。module-arguments(引数)にはモジュールに渡される引数を指定します。以下のようなモジュールがあります。なおモジュールは/usr/lib/security/もしくは/lib/security/ディレクトリに存在します。
pam_cracklib.so | パスワードの総当り攻撃に対してセキュリティを向上することができます。入力されたパスワードをチェックし、連続する文字や循環する文字などで繰り替えしていないかなどをチェックします。 |
pam_env.so | ユーザログイン時の環境変数の初期設定を行います。設定ファイルは/etc/security/pam_env.confです。 |
pam_deny.so | すべての認証を拒否します。 |
pam_limits.so | ユーザが利用できるリソースを制限します。 |
pam_nologin.so | /etc/nologinファイルが存在する場合に一般ユーザのログインを拒否します。 |
pam_securetty.so | /etc/securettyファイルに記載された端末からのみrootログインを許可します。 |
pam_unix.so | 標準的なUNIX認証(パスワード認証)を行います。 |
◇PAMの練習問題◇
LPIC 202試験対策のオリジナル問題集です。
<問1>
PAMの設定ファイルが置かれるディレクトリ名をフルパスで記述しなさい。
<問2>
PAMの設定ファイルに記述するモジュールタイプについて、存在しないのは次のうちどれか選択しなさい。
A.account
B.session
C.auth
D.sufficient
E.passwd
<問3>
あるコンソールからのrootログインに失敗する。その端末からのログインがPAMにより拒否されているかどうかを確認するにはどのファイルを調べればよいか?ファイル名をフルパスで記述しなさい。
<問4>
以下は/etc/pam.d/loginファイルの中身である。
auth required pam_securetty.so1行目の認証に失敗した場合の動作として正しいものはどれか、次の中から選択しなさい。
autu required pam_stack.so service=system-auth
autu required pam_nologin.so
account required pam_stack.so service=system-auth
password required pam_stack.so service=system-auth
session required pam_stack.so service=system-auth
session optional pam_console.so
A.直ちに認証失敗が通知され2行目以降は判定されない
B.3行目まで判定を行ったのち認証失敗が通知される
C.2行目以降の判定で認証が成功するので最終的に認証が成功する
D.ファイルの最後まで判定を行ったのち認証失敗が通知される
今回はここまで。次回はLDAPをちょこっとやって「主題210:ネットワーククライアントの管理」をおしまいにします。
<今回の教科書(…といってもいつも同じ)>
◇基本はあずき本で確認⇒Linux教科書 LPICレベル2 第3版 (CD-ROM付)
◇応用は黒本で特訓⇒徹底攻略LPI 問題集Level2/Release2 対応 (ITプロ/ITエンジニアのための徹底攻略)
LPIC level2 リベンジ!! 第1日 『DHCPサーバの設定』
やっと始まりました。LPIC 202試験対策。
初日は軽~くということでDHCPサーバの設定についてです。
DHCP(Dynamic Host Configuration Protocol)はクライアントに対して、あらかじめプールしてあるIPアドレスを自動的に割り当てるサービスです。
クライアントはネットワーク起動時にブロードキャストでIPアドレス取得要求を行います(※1)。これを受け取ったDHCPサーバは要求元クライアントへ対してIPアドレスを払い出し、払い出したIPアドレスとクライアントのMACアドレス情報、払い出し期間などを管理するテーブル情報を更新します。
DHCPサービスではIPアドレスのほか、DNSサーバやゲートウェイ情報、NTPサーバなどの設定情報も割り当てることができます。
(※1)クライアントのIPアドレス要求時にブロードキャストパケットで通信を行います。そのため、クライアントとDHCPサーバセグメントが異なる場合などルータ、L3スイッチ越しの場合にはスイッチ設定によりブロードキャストパケットが拒否され、IPアドレスの払い出しを行えない場合があるので注意が必要です。ルータ、L3スイッチにDHCP要求の転送を許可する設定を追加する必要があります。
◇DHCPサーバの設定◇
DHCPサーバ(dhcpd)の設定は/etc/dhcpd.confに記載します。
とらぼる太環境(CentOS)では/etc/dhcpd.confの中身は規定値では空っぽのままでした。なので設定を一から追加してやる必要があります。
/usr/share/doc/dhcp-*/dhcpd.conf.sampleをコピーして編集しても良いです。
◇/etc/dhcod.confの例
設定ファイルの主なパラメータをまとめます。
詳しいパラメータは「man dhcpd.conf」で確認できます。
実際に払い出されたIPアドレスは/var/lib/dhcp/dhcpd.leaseで確認することができます。
◇DHCPクライアントの設定◇
クライアントがDHCPを利用するための設定です。
◇redhat系
/etc/sysconfig/network-scripts/ifcfg-*にBOOTPROTOパラメータで設定します。
◇Debian系
/etc/network/interfacesに以下の設定をします。(eth0の場合の設定)
◇DHCPリレーの設定◇
はじめに説明したように、クライアントからのDHCP要求はブロードキャストで送信されるためルータなどを超えることはできません。ルータをLinuxで構築している場合、dhcrelayサービスによりDHCP要求を転送することができます。
dhcrelayの設定ファイルは/etc/sysconfig/dhcrelayです。
この設定によりeth1,eth2,eth3で受け取ったDHCP要求をDHCPサーバ192.168.200.2と192.168.200.3に対して転送します。
◇DHCPの練習問題◇
LPIC 202試験対策のオリジナル問題集です。
<問1>
DHCPサーバの設定を行いたい。設定ファイルの名前を記述しなさい。(ファイル名のみ)
<問2>
払い出すIPアドレスの範囲を192.168.20.10から192.168.20.30としたい。空欄に入るパラメータ名を記述しなさい。
subnet 192.168.20.0 netmask 255.255.255.0 {
[ ] 192.168.20.10 192.168.20.30
}
<問3>
ServerAに対して特定のIPアドレスを払い出したい。この場合必要な情報は次のうちどれか選択しなさい。
A.ServerAのホスト名
B.ServerAのMACアドレス
C.ServerAのユーザとパスワード
D.ServerAのDHCPクライアントバージョン
<問4>
使用期限を1週間に設定したい。この場合の適切な設定は次のうちどれか選択しなさい。
A.default-lease-time 1
B.default-lease-time 7
C.default-lease-time 168
D.default-lease-time 10080
E.default-lease-time 604800
本日は以上です!
本日利用したテキストはこちら
から
![$とあるSEのきまぐれ日記](https://stat.ameba.jp/user_images/20100110/07/kyon-tiger/b0/00/g/o0468006010370646492.gif?caw=800)
![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=ur2&o=9)
![](https://img-proxy.blog-video.jp/images?url=http%3A%2F%2Fwww25.a8.net%2Fsvt%2Fbgt%3Faid%3D100103679896%26wid%3D001%26eno%3D01%26mid%3Ds00000001717001050000%26mc%3D1)
![](https://img-proxy.blog-video.jp/images?url=http%3A%2F%2Fwww15.a8.net%2F0.gif%3Fa8mat%3D1NLKHR%2BETGESY%2BD8Y%2B691UP)
初日は軽~くということでDHCPサーバの設定についてです。
DHCP(Dynamic Host Configuration Protocol)はクライアントに対して、あらかじめプールしてあるIPアドレスを自動的に割り当てるサービスです。
クライアントはネットワーク起動時にブロードキャストでIPアドレス取得要求を行います(※1)。これを受け取ったDHCPサーバは要求元クライアントへ対してIPアドレスを払い出し、払い出したIPアドレスとクライアントのMACアドレス情報、払い出し期間などを管理するテーブル情報を更新します。
DHCPサービスではIPアドレスのほか、DNSサーバやゲートウェイ情報、NTPサーバなどの設定情報も割り当てることができます。
(※1)クライアントのIPアドレス要求時にブロードキャストパケットで通信を行います。そのため、クライアントとDHCPサーバセグメントが異なる場合などルータ、L3スイッチ越しの場合にはスイッチ設定によりブロードキャストパケットが拒否され、IPアドレスの払い出しを行えない場合があるので注意が必要です。ルータ、L3スイッチにDHCP要求の転送を許可する設定を追加する必要があります。
◇DHCPサーバの設定◇
DHCPサーバ(dhcpd)の設定は/etc/dhcpd.confに記載します。
とらぼる太環境(CentOS)では/etc/dhcpd.confの中身は規定値では空っぽのままでした。なので設定を一から追加してやる必要があります。
/usr/share/doc/dhcp-*/dhcpd.conf.sampleをコピーして編集しても良いです。
◇/etc/dhcod.confの例
# DHCP Server Configuration file. |
設定ファイルの主なパラメータをまとめます。
設定パラメータ | 説明 |
ddns-update-style | DDNSを使用する場合はiniterim、使用しない場合はad-hocと設定します。 |
subnet { ~ } | subnet ネットワークアドレス netmask サブネットマスク { サブネット内の設定 }で指定します。このセグメントから要求が来た場合の設定を{}内に記載します。この設定を複数記述することで、複数のセグメントに対してIPアドレスの払い出しを行うことができます。 |
option domain-name | クライアントに設定するドメイン名を指定します。 |
option domain-name-servers | クライアントに設定するDNSサーバを指定します。 |
option routers | クライアントに設定するデフォルトゲートウェイを指定します。 |
option subnet-mask | クライアントに設定するサブネットマスクを指定します。 |
option ntp-servers | <クライアントに設定するNTPサーバを指定します。/TD> |
default-lease-time | クライアントから使用期限を求められなかった場合の払い出す期間の規定値を指定します。 |
max-lease-time | クライアントから使用期限の要求があった場合の払い出す期間の最大値を指定します。 |
range | range 開始IPアドレス 終了IPアドレスで払い出すIPアドレスの範囲を指定します。 |
host { ~ } | 払い出しの予約をする場合にhost 予約名 { ~ }で設定を行います。 |
fixed-address | 予約で払い出すIPアドレスを指定します。 |
hardware | ここで指定したMACアドレスに対して払い出しを行います。 |
詳しいパラメータは「man dhcpd.conf」で確認できます。
実際に払い出されたIPアドレスは/var/lib/dhcp/dhcpd.leaseで確認することができます。
◇DHCPクライアントの設定◇
クライアントがDHCPを利用するための設定です。
◇redhat系
/etc/sysconfig/network-scripts/ifcfg-*にBOOTPROTOパラメータで設定します。
BOOTPROTO=dhcp |
/etc/network/interfacesに以下の設定をします。(eth0の場合の設定)
iface eth0 inet dhcp |
◇DHCPリレーの設定◇
はじめに説明したように、クライアントからのDHCP要求はブロードキャストで送信されるためルータなどを超えることはできません。ルータをLinuxで構築している場合、dhcrelayサービスによりDHCP要求を転送することができます。
dhcrelayの設定ファイルは/etc/sysconfig/dhcrelayです。
# Command line options here |
◇DHCPの練習問題◇
LPIC 202試験対策のオリジナル問題集です。
<問1>
DHCPサーバの設定を行いたい。設定ファイルの名前を記述しなさい。(ファイル名のみ)
<問2>
払い出すIPアドレスの範囲を192.168.20.10から192.168.20.30としたい。空欄に入るパラメータ名を記述しなさい。
subnet 192.168.20.0 netmask 255.255.255.0 {
[ ] 192.168.20.10 192.168.20.30
}
<問3>
ServerAに対して特定のIPアドレスを払い出したい。この場合必要な情報は次のうちどれか選択しなさい。
A.ServerAのホスト名
B.ServerAのMACアドレス
C.ServerAのユーザとパスワード
D.ServerAのDHCPクライアントバージョン
<問4>
使用期限を1週間に設定したい。この場合の適切な設定は次のうちどれか選択しなさい。
A.default-lease-time 1
B.default-lease-time 7
C.default-lease-time 168
D.default-lease-time 10080
E.default-lease-time 604800
本日は以上です!
本日利用したテキストはこちら
![$とあるSEのきまぐれ日記](https://stat.ameba.jp/user_images/20100110/07/kyon-tiger/b0/00/g/o0468006010370646492.gif?caw=800)
![](https://img-proxy.blog-video.jp/images?url=http%3A%2F%2Fwww15.a8.net%2F0.gif%3Fa8mat%3D1NLKHR%2BETGESY%2BD8Y%2B691UP)
久しぶりの池袋
昨日、久しぶりに池袋に行ってきました。
実はとらぼる太はちょこっとダンスを習っていて、過去3年間毎年発表会に出ていたんです。
今年は残念ながら出演者としては参加しないのですが、その代わり音作り(といっても作曲ではなくて切って貼ってのことです)で参加しています。その音源を届けに池袋まで行ってきました。
やっているITの仕事とはまったく違う世界だけれど、これからもダンスは続けて行きたいと改めて思いました。来年はまた発表会にでます!
写真は去年の発表会のカーテンコールの写真。
ステージから見る客席はなんとも言えないんです。
![とあるSEのきまぐれ日記-IDC2009](https://stat.ameba.jp/user_images/20100110/03/kyon-tiger/60/87/j/o0454034110370599349.jpg?caw=800)
今年1年ダンスから離れすぎたので練習をしないと!!
DVD版 ダンス・スタイル・ロッカーズ![](https://www.assoc-amazon.jp/e/ir?t=kyontigeramaz-22&l=as2&o=9&a=B0006MRKJG)
実はとらぼる太はちょこっとダンスを習っていて、過去3年間毎年発表会に出ていたんです。
今年は残念ながら出演者としては参加しないのですが、その代わり音作り(といっても作曲ではなくて切って貼ってのことです)で参加しています。その音源を届けに池袋まで行ってきました。
やっているITの仕事とはまったく違う世界だけれど、これからもダンスは続けて行きたいと改めて思いました。来年はまた発表会にでます!
写真は去年の発表会のカーテンコールの写真。
ステージから見る客席はなんとも言えないんです。
![とあるSEのきまぐれ日記-IDC2009](https://stat.ameba.jp/user_images/20100110/03/kyon-tiger/60/87/j/o0454034110370599349.jpg?caw=800)
今年1年ダンスから離れすぎたので練習をしないと!!
DVD版 ダンス・スタイル・ロッカーズ