KORO NO ROOM
[PR]女性が輝く公文の先生募集中!:全国で教室開設説明会開催
SE LinuxとFedora Core2
(SE Linuxの設定)
安全なサーバーのために!
Linuxサーバーを作る時にLinuxカーネル2.6からは標準でSE Linuxというセキュリティを保護するプログラムが付いてきます。本格的にインターネットのサーバーを立ち上げるためにもこのようなプログラムはぜひとも必要なものです。但し、導入がやっかいなので、あまり導入が進んでいませんでしたが、最近Fedora Core2にはLinuxカーネル2.6が採用されているのでこれを使えばかなり簡単にSE Linuxが起動できるようになりました。Windowsのサーバーが擁するバグや危険がないにもかかわらず、root権限が集中するLinuxサーバーはrootが犯されると何でも出来てしまうという欠点がありました。これを分散権限というやり方で集中させずに部分的に終わらせることを主眼としたものがSE Linuxなのです。
SE Linuxの初期設定はLinuxのインストール前後で可能ですが、今回はインストール後に設定しました。シェルプロンプトから
fixfiles relabel
と打ち込みEnterキーを押します。ここで暫く時間がたって、シェルプロンプトのコマンド待ちになるまで、待っている必要があります。これは肝心なことですから、あせってはいけません。そしてそれからviエディターで
vi /etc/sysconfig/selinux
とします
すると以下のファイルが開きますので、
# SELINUX= can take one of these three values:
# enforcinfg - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
SELINUX=disabledの部分をenforcingと書き換えてrebootさせればいいのです。
逆に戻す時は書き戻すのです。
この時のviエディターの動きはFedora Core1の時と違いますので、慎重にしてください。
削除の時は最初にaキーを押してから、
カーソル移動はesc押してから
文字の挿入はiキーを押してから操作するといいでしょう。
今までの操作ではiキー等を押せばすぐにできましたが、個別にそのつどやらないと、うまく出来ませんでした。
尚、SSHで遠隔操作をした方がやりやすいです。但し、再起動後にlogin表示の中にSSHでは何も変わらない画面表示ですので、SELinuxに、なっていることすら判別が出来ません。
でも
getcon
コマンドで現在の状態を知ることが出来ます。
root:staff_r:staff_t
通常の画面ですと以下の様なものが出てきて選択するようになります。ロールの選択といいます。
Password:
Your default context is root:sysadm_r:sysadm_t
Do you want to choose a different one? [n] y
[2] root:staff_r:staff_t
Enter nuber of choise: 2
ここでyを押してEnterキーを押せばSELinuxのstaff_tになります。staff_tは殆ど権限のないものです。従って権限のあるsysadm_rになるには続けて、以下のコマンドで変わります。
newrole -r sysadm_r
Enterキーで
Authenticating root
Password:パスワードをいれます
これで色々のセキュリティが守られます。staff_tは殆ど権限のないものでrebootもできません。
SSHでloginしてもこのようなセキュリティが課されていれば、殆ど何も出来ません。viエディターでも保存は拒否されreed onlyという具合になります。仮に不正侵入されてもsysadm_rのロールでないので、何も出来ません。
2004/7/24
HOMEに戻る
掲示板へ
先頭に戻る