2008年02月08日 (金) | 編集 |
SELinuxはもちろんのこと、Linuxも初心者であるおばさんは、コマンドのオプションだってろくに知らない。
ls -aZ
このZオプションなに?と、いつもお世話になっているLinuxコマンド集を探してもないではないか!!
これは、SELinuxの拡張オプションなのだ。
フツー(?!)のls -aと違って、ファイルのセキュリティ・コンテキスト
<ユーザー名>:<ロール>:<ドメインまたはタイプ>
も表示される様になる。
だから、そのファイルが何のドメインになっているかを見ることができる。また、
ps -eZ
とすれば、プロセスにどんなドメインが割り当てられているかも見ることもできる。
これらで、表示されるリストを眺めていると、
user_u:system_r:httpd_t
なーんて見慣れぬ記号も、身近に感じられるようになるものだから、不思議。
ls -aZ
このZオプションなに?と、いつもお世話になっているLinuxコマンド集を探してもないではないか!!
これは、SELinuxの拡張オプションなのだ。
フツー(?!)のls -aと違って、ファイルのセキュリティ・コンテキスト
<ユーザー名>:<ロール>:<ドメインまたはタイプ>
も表示される様になる。
だから、そのファイルが何のドメインになっているかを見ることができる。また、
ps -eZ
とすれば、プロセスにどんなドメインが割り当てられているかも見ることもできる。
これらで、表示されるリストを眺めていると、
user_u:system_r:httpd_t
なーんて見慣れぬ記号も、身近に感じられるようになるものだから、不思議。
2008年02月04日 (月) | 編集 |
あっという間に1月は終わってしまいました。
ああ、ネームサーバーに手をつけなければ、とおもいつつ日々ばかりが過ぎていると、ある日「おおきなファイルをアップロードしてもらう必要ができたから、FTPサーバーが要るぞ!」と急な要望。げ、あんな危険なもの・・・と、思いつつも「パスワード付、ドメイン許可制」でいいよね。ということで、作業開始。
またもや私の教科書「centosで自宅サーバー構築」に従いvsftpdをインストール、設定完了。そこまではいいとして、SELinuxで引っかかるだろうなと思っていたら、案の定。
enforceモードでもログインはできるが、permissiveモードでにしないとホームディレクトリに移れない。いままでのように、ログを見ればいいやと、
audit2allow -i /var/log/audit/audit.log -l
としてみるけれど、何もでてこない。こりゃこまった。
さすがに立ち往生したので、援軍を頼むと・・・。
/usr/share/selinux/
にあるポリシのコアとなるbase.ppというのがまずはロードされるのだが、これを
semodule -b enableaudit.pp
として、dontauditをはずしたenableaudit.ppをロードするように変更。
これで、すべてのログが吐き出されるようになるそうで。
そこで、
tail -f /var/log/audit/audit.log
として、もう一度ログを見ると、どうやらftp_home_dirへのアクセスに問題あり。
ので、これはbooleanパラメータのon/offがあやしい!!とのこと。
getsebool -a | grep ftp
としてみると、確かに
ftp_home_dir --> off
となっていた。アクセス権を与えるため、
setsebool -P ftp_home_dir on
として、もう一度アクセスしてみると、おお、うまくいったではないか。ので、
semodule -b base.pp
として、もとに戻しておく。
ほっとしたのもつかの間。こんどは、アップロードができない!
また、SELinux?!と疑ったわたしが悪く、単なるファイルの所有者がrootになっていたためで、chownでftpuserに変更したらすべてうまくいったというお粗末。
あーあ、まだまだ何も知らない・・・おばさんです。
ああ、ネームサーバーに手をつけなければ、とおもいつつ日々ばかりが過ぎていると、ある日「おおきなファイルをアップロードしてもらう必要ができたから、FTPサーバーが要るぞ!」と急な要望。げ、あんな危険なもの・・・と、思いつつも「パスワード付、ドメイン許可制」でいいよね。ということで、作業開始。
またもや私の教科書「centosで自宅サーバー構築」に従いvsftpdをインストール、設定完了。そこまではいいとして、SELinuxで引っかかるだろうなと思っていたら、案の定。
enforceモードでもログインはできるが、permissiveモードでにしないとホームディレクトリに移れない。いままでのように、ログを見ればいいやと、
audit2allow -i /var/log/audit/audit.log -l
としてみるけれど、何もでてこない。こりゃこまった。
さすがに立ち往生したので、援軍を頼むと・・・。
/usr/share/selinux/
にあるポリシのコアとなるbase.ppというのがまずはロードされるのだが、これを
semodule -b enableaudit.pp
として、dontauditをはずしたenableaudit.ppをロードするように変更。
これで、すべてのログが吐き出されるようになるそうで。
そこで、
tail -f /var/log/audit/audit.log
として、もう一度ログを見ると、どうやらftp_home_dirへのアクセスに問題あり。
ので、これはbooleanパラメータのon/offがあやしい!!とのこと。
getsebool -a | grep ftp
としてみると、確かに
ftp_home_dir --> off
となっていた。アクセス権を与えるため、
setsebool -P ftp_home_dir on
として、もう一度アクセスしてみると、おお、うまくいったではないか。ので、
semodule -b base.pp
として、もとに戻しておく。
ほっとしたのもつかの間。こんどは、アップロードができない!
また、SELinux?!と疑ったわたしが悪く、単なるファイルの所有者がrootになっていたためで、chownでftpuserに変更したらすべてうまくいったというお粗末。
あーあ、まだまだ何も知らない・・・おばさんです。
2008年01月10日 (木) | 編集 |
今年の目標は、
その1.ログがしっかり読めるようになること(今は、わからないことは目をつぶっている・・・。)
その2.DNSサーバーの構築(今はWindows2000サーバーと、よそ様におねがいしている)。
なのですが、ちっとも取り掛かかる気が起こらず・・・・。(これじゃあ、会社すぐ首になるだろうな。)
で、とりあえずはまっているのが、U3対応のUSBにさまざまなアプリケーションのインストール。
とりあえずは、bring the power of portable software to your usb flash driveにあるもの。
なのですが、いつも使っているツールを書き込みたい!!・・・・。
そんな望みをかなえるアプリケーション発見。
PackageFactory for U3
ただし、レジストリに何か書き込むようなアプリはだめなので気をつけて。
で、使い心地は?!
我が家にあるPCはwin2000、XPどまりなので、このU3対応のUSBなかなか快適につかえてます。
Vistaではとこまで使えるかは、わかりません。あしからず・・・。
ちなみに、私のUSBは・・・。
Sandiskの1Gを家族にとられてしまったので、Toshiba製4G。
まだまだ、はいるぞ!!
その1.ログがしっかり読めるようになること(今は、わからないことは目をつぶっている・・・。)
その2.DNSサーバーの構築(今はWindows2000サーバーと、よそ様におねがいしている)。
なのですが、ちっとも取り掛かかる気が起こらず・・・・。(これじゃあ、会社すぐ首になるだろうな。)
で、とりあえずはまっているのが、U3対応のUSBにさまざまなアプリケーションのインストール。
とりあえずは、bring the power of portable software to your usb flash driveにあるもの。
なのですが、いつも使っているツールを書き込みたい!!・・・・。
そんな望みをかなえるアプリケーション発見。
PackageFactory for U3
ただし、レジストリに何か書き込むようなアプリはだめなので気をつけて。
で、使い心地は?!
我が家にあるPCはwin2000、XPどまりなので、このU3対応のUSBなかなか快適につかえてます。
Vistaではとこまで使えるかは、わかりません。あしからず・・・。
ちなみに、私のUSBは・・・。
Sandiskの1Gを家族にとられてしまったので、Toshiba製4G。
まだまだ、はいるぞ!!
2008年01月01日 (火) | 編集 |
おばさんの年末は大忙し。普段サボっている自分をのろいながら、徹底的に大掃除。おかげで、すっきりさっぱり、気持ちのいいお正月を迎えています。あとは、買い物と料理。・・・というわけで、暮れ正月、しばらくのあいだ、Linuxのお勉強はお休みです。ああ、折角覚えたコマンド忘れてしまう・・・。またみんなが出かけて静かになったら、スタートします。ので、
ことしも、よろしくお願いいたします。
ことしも、よろしくお願いいたします。
2007年12月18日 (火) | 編集 |
やっぱり、データーベースを扱えるほうが、便利。というわけで、とりあえずの環境が整ったところで、MySQLをインストールしてきた。今回も。そして、今回もまたやってしまった。rootのパスワード設定ミス。どうしてそうなるのかわからない。多分、どこかに変な文字を入れてしまうのだろう。rootにパスワードを設定したあと、そのパスワードでMySQLにログインできなくなってしまう。パスワードを忘れてしまったわけではないのに!!私は無罪!!と叫びつつ、どうにもならなくなってしまう。そこで、そのパスワードの再設定法。
mysqlのrootのパスワードを忘れた場合の対処法を参考にさせていただきました。
まずは、mysqlをころす!
# killall mysqld
セーフモードでmysqlにログイン。これって、ドライバがおかしいときとかWindowsマシンを起動するときに似てるぅ。
# /usr/bin/mysqld_safe --user=root --skip-grant-tables & mysql mysql
おう、とりあえずmysqlにログインできるではないか!
そこで、
mysql>update user set Password=null where Host='localhost' and User='root';
として、パスワードを初期化。
で、普通の状態でmysqlを再起動。
# /etc/rc.d/init.d/mysqld restart
パスワードなしでログインできるか?!
# mysql -u root
mysql>
おう、完璧。そこで、再度パスワードを設定できる段取りになりました。
そのあと、注意深く、パスワードを設定し、みごとログインできる状態になりました。
以上、本日のおそまつ!
mysqlのrootのパスワードを忘れた場合の対処法を参考にさせていただきました。
まずは、mysqlをころす!
# killall mysqld
セーフモードでmysqlにログイン。これって、ドライバがおかしいときとかWindowsマシンを起動するときに似てるぅ。
# /usr/bin/mysqld_safe --user=root --skip-grant-tables & mysql mysql
おう、とりあえずmysqlにログインできるではないか!
そこで、
mysql>update user set Password=null where Host='localhost' and User='root';
として、パスワードを初期化。
で、普通の状態でmysqlを再起動。
# /etc/rc.d/init.d/mysqld restart
パスワードなしでログインできるか?!
# mysql -u root
mysql>
おう、完璧。そこで、再度パスワードを設定できる段取りになりました。
そのあと、注意深く、パスワードを設定し、みごとログインできる状態になりました。
以上、本日のおそまつ!
2007年12月17日 (月) | 編集 |
「ユーザー権限っていうことは、SELinuxは怪しい・・・。」
買い物中でも考えるのはSamba。夕飯の支度中も考えるのはSamba。
何かにはまると、おばさんはいつでもこうなのだ。
さて、話は戻って、
確か、セキュリティレベルとファイアーウォールの設定で、信頼できるサービスとしてSambaにチェックを入れてあるはずなのに・・・。それだけじゃ足りないらしい。
で、sambaのポリシーファイルを作ったのだけど、ちょっと失敗してしまった・・・。
いま、間違ってインストールしたモジュール・パッケージを削除したい!!!
・・・というときは、
#semodule -r samba
とすればいい。
そしてもう一度、モジュールの作成からやりなおし。
まいど、繰り返しのようだが・・・。
# setenforce 0
# semodule -R
# audit2allow -i /var/log/audit/audit.log -l -M samba
としてから、
# /etc/init.d/smb restart
そのあと、新たに作成されたポリシーパッケージをカーネルにロードするために
# semodule -i samba.pp
そして、
# setenforce 1
みごと、共有ファイルにアクセスできるようになった。
ちなみに、ユーザーの一人、watashitさんをパスワードgonbeで
Sambaのユーザーに追加したいときは
# smbpasswd -a watashi gonbe
そして削除したいときは
# smbpasswd -x watashi
ユーザを作成・削除した場合、Sambaを再起動しないといけない
# /etc/rc.d/init.d/smb restart
また、Sambaユーザ削除後は、必要なければOSユーザからも削除しといたほうがいい。
# userdel watashi
買い物中でも考えるのはSamba。夕飯の支度中も考えるのはSamba。
何かにはまると、おばさんはいつでもこうなのだ。
さて、話は戻って、
確か、セキュリティレベルとファイアーウォールの設定で、信頼できるサービスとしてSambaにチェックを入れてあるはずなのに・・・。それだけじゃ足りないらしい。
で、sambaのポリシーファイルを作ったのだけど、ちょっと失敗してしまった・・・。
いま、間違ってインストールしたモジュール・パッケージを削除したい!!!
・・・というときは、
#semodule -r samba
とすればいい。
そしてもう一度、モジュールの作成からやりなおし。
まいど、繰り返しのようだが・・・。
# setenforce 0
# semodule -R
# audit2allow -i /var/log/audit/audit.log -l -M samba
としてから、
# /etc/init.d/smb restart
そのあと、新たに作成されたポリシーパッケージをカーネルにロードするために
# semodule -i samba.pp
そして、
# setenforce 1
みごと、共有ファイルにアクセスできるようになった。
ちなみに、ユーザーの一人、watashitさんをパスワードgonbeで
Sambaのユーザーに追加したいときは
# smbpasswd -a watashi gonbe
そして削除したいときは
# smbpasswd -x watashi
ユーザを作成・削除した場合、Sambaを再起動しないといけない
# /etc/rc.d/init.d/smb restart
また、Sambaユーザ削除後は、必要なければOSユーザからも削除しといたほうがいい。
# userdel watashi
2007年12月17日 (月) | 編集 |
これまで、あんまり必要なかったんだけど、ファイルの共有をしなければならなくなった。
それじゃあ、Sambaね!と張り切って、インストール。もち、教科書に従い設定完了。いよいよ、プライベートのWindowsクライアントマシンから接続!!!というところで、つまずいたおばさん。
マイネットワークの、ワークグループにサンバサーバーが現れない。お手本には、何の注意書きもないし・・・こまった。IPアドレスで検索してみても何にも見つからない。げ!つながらないぞー!と声を上げても、そんな質問じゃ、答えてネットでもあるまいし、だーれも相談にのってくれないのだ。「じぶんでぐぐれ。」または「自分でぐぐってそのうち解決するだろうとほって置かれる」のが関の山なのだ。
ところがぐぐっても、なんだかフィットする答えが見つからない。で、ふと、むかーしwin95のころだったか、ネットワーク上の仲間のマシンを見つける設定をしたとき、再起動が必要だったっけ。ためしにやってみるか。・・・すると、IPアドレスであらわれたではないか。ただし、アクセス権がどうのこうのといってきてファイルは開くことが出来ない。でも!!ワーニングが出るというのは、可能性がでてきたってこと。と、安心して夕飯の買い物に出かけたのでありました。
それじゃあ、Sambaね!と張り切って、インストール。もち、教科書に従い設定完了。いよいよ、プライベートのWindowsクライアントマシンから接続!!!というところで、つまずいたおばさん。
マイネットワークの、ワークグループにサンバサーバーが現れない。お手本には、何の注意書きもないし・・・こまった。IPアドレスで検索してみても何にも見つからない。げ!つながらないぞー!と声を上げても、そんな質問じゃ、答えてネットでもあるまいし、だーれも相談にのってくれないのだ。「じぶんでぐぐれ。」または「自分でぐぐってそのうち解決するだろうとほって置かれる」のが関の山なのだ。
ところがぐぐっても、なんだかフィットする答えが見つからない。で、ふと、むかーしwin95のころだったか、ネットワーク上の仲間のマシンを見つける設定をしたとき、再起動が必要だったっけ。ためしにやってみるか。・・・すると、IPアドレスであらわれたではないか。ただし、アクセス権がどうのこうのといってきてファイルは開くことが出来ない。でも!!ワーニングが出るというのは、可能性がでてきたってこと。と、安心して夕飯の買い物に出かけたのでありました。
2007年12月16日 (日) | 編集 |
あっという間に2週間以上たってしまいました。新しいドメインでのmailとwebサーバーがうまく動き出したので、今まで使っていたメールサーバーもPostfixに変更すべく、ちょいフルのPCにハートディスクを新調し、また新人をてなづけておりました。設定はなれたのだけど、Postfixとのお付き合いはまだ浅いおばさんには、また新しい問題が。
今までのサーバではできた、メール転送設定、Postfixではどうするのだ?!またぐぐった結果・・・。
watashiというメールアカウントのメールをbetujin@xxx.comというメールに転送したいとき。
watasiのホームディレクトリ、/home/watashi/に.forwardというファイルを作って、そこに転送先のアドレスを書き込んどけばいいらしい。
vi /home/watasi/.forward
として、その中に
betujin@xxx.com
という一行を書き込んで保存。
/etc/rc.d/init.d/postfix restart
とすればいい。
watashiのアカウントにもメールを残したい場合は、
\watasi,betujin@xxx.com
とする。この、\watasiの一番初めの文字、バックスラッシュが大事らしい。
なーんだ、わかるとすごく簡単。
今までのサーバではできた、メール転送設定、Postfixではどうするのだ?!またぐぐった結果・・・。
watashiというメールアカウントのメールをbetujin@xxx.comというメールに転送したいとき。
watasiのホームディレクトリ、/home/watashi/に.forwardというファイルを作って、そこに転送先のアドレスを書き込んどけばいいらしい。
vi /home/watasi/.forward
として、その中に
betujin@xxx.com
という一行を書き込んで保存。
/etc/rc.d/init.d/postfix restart
とすればいい。
watashiのアカウントにもメールを残したい場合は、
\watasi,betujin@xxx.com
とする。この、\watasiの一番初めの文字、バックスラッシュが大事らしい。
なーんだ、わかるとすごく簡単。
2007年11月29日 (木) | 編集 |
以前、clamdを動かすために、SELinuxのポリシーを追加する楽珍な方法を書いておいた。
今回それを参考にしたので、簡単に動いた。一度動いたという実績は強い支えになるもんだ。
で、MySQL用GUI設定ツールphpMyAdmin、WebmailシステムSquirrelMailを利用できるようにするのにも応用してみた。
ので、これも書いておきましょ。
インストール、設定は私の教科書centosで自宅サーバー構築に従えば問題なし。
どちらも、enforcingモードでは、webアクセスの段階でアクセス権限があたえられず見ることができない。そこで、
phpMyAdminの場合
まず、
[root@cent000 ~]# setenforce 0
で、permissiveモードにして、httpd を再よみこみ。
[root@cent000 ~]# /etc/rc.d/init.d/httpd reload
httpd を再読み込み中: [ OK ]
[root@cent000 ~]# semodule -R
にしておいて、ウェブページ
http://www.XXX.XX.jp/phpmyadmin/に
アクセスできることを確認。
その後、ポリシーを作成してもらうために、
[root@cent000 ~]# audit2allow -i /var/log/audit/audit.log -l -M phpmyadmin
タイプ施行ファイルを生成中: phpmyadmin.te
ポリシーをコンパイル中
checkmodule -M -m -o phpmyadmin.mod phpmyadmin.te
semodule_package -o phpmyadmin.pp -m phpmyadmin.mod
******************** 重要 ***********************
新たに作成されたポリシーパッケージをカーネルにロードするためには、
次を実行する必要があります。
semodule -i phpmyadmin.pp
上記表示に従い、
[root@cent000 ~]# semodule -i phpmyadmin.pp
enforcingモードに戻し、
[root@cent000 ~]# setenforce 1
ふたたび、ウェブページ
http://www.XXX.XX.jp/phpmyadmin/に
アクセスできるか確認する。
なお、ポリシーの内容は
[root@cent000 ~]# less phpmyadmin.te
で見ることができる。これを、必要に応じ編集できるようになればもっといいんだけど。
SquirrelMailの場合
上記の、phpmyadminのところをwemailに置き換えればほぼうまくいくと思う。
ので、お試しください。
今回それを参考にしたので、簡単に動いた。一度動いたという実績は強い支えになるもんだ。
で、MySQL用GUI設定ツールphpMyAdmin、WebmailシステムSquirrelMailを利用できるようにするのにも応用してみた。
ので、これも書いておきましょ。
インストール、設定は私の教科書centosで自宅サーバー構築に従えば問題なし。
どちらも、enforcingモードでは、webアクセスの段階でアクセス権限があたえられず見ることができない。そこで、
phpMyAdminの場合
まず、
[root@cent000 ~]# setenforce 0
で、permissiveモードにして、httpd を再よみこみ。
[root@cent000 ~]# /etc/rc.d/init.d/httpd reload
httpd を再読み込み中: [ OK ]
[root@cent000 ~]# semodule -R
にしておいて、ウェブページ
http://www.XXX.XX.jp/phpmyadmin/に
アクセスできることを確認。
その後、ポリシーを作成してもらうために、
[root@cent000 ~]# audit2allow -i /var/log/audit/audit.log -l -M phpmyadmin
タイプ施行ファイルを生成中: phpmyadmin.te
ポリシーをコンパイル中
checkmodule -M -m -o phpmyadmin.mod phpmyadmin.te
semodule_package -o phpmyadmin.pp -m phpmyadmin.mod
******************** 重要 ***********************
新たに作成されたポリシーパッケージをカーネルにロードするためには、
次を実行する必要があります。
semodule -i phpmyadmin.pp
上記表示に従い、
[root@cent000 ~]# semodule -i phpmyadmin.pp
enforcingモードに戻し、
[root@cent000 ~]# setenforce 1
ふたたび、ウェブページ
http://www.XXX.XX.jp/phpmyadmin/に
アクセスできるか確認する。
なお、ポリシーの内容は
[root@cent000 ~]# less phpmyadmin.te
で見ることができる。これを、必要に応じ編集できるようになればもっといいんだけど。
SquirrelMailの場合
上記の、phpmyadminのところをwemailに置き換えればほぼうまくいくと思う。
ので、お試しください。
2007年11月26日 (月) | 編集 |
2週間ほどのご無沙汰でした。
今までの私の行状から言うと、挫折していたのではと思う方も多いかと・・・。
でも違うのです。新しいサーバーマシンが来たのです。今度こそ本番。
で、CentOSのインストールから、メールサーバ、WEBサーバー構築の復習です。
1度はできたんだからというのを、心の支えに、なんとかうまくいきました。
といっても、設定ファイルはテストマシン上のをコピーし、修正したものもあり。
いままで、2台のLinuxマシンを操るということがなかったので、
このリモートサーバー間でファイルをコピーってのは初めての経験です。うわあ、簡単。
そんなの知らなかったの?と笑われそうだけど、今まで必要がなかったんだからしゃあないじゃん。とりあえず今後の自分のために・・・・。
ローカル・ホストのカレントディレクトリにあるファイルwatasi_no_faileを
リモート・ホストxxx.yyy.jpのanataというユーザのホームディレクトリにコピーしたいとき、
[root@cent001 ~]# scp watasi_no_faile anata@xxx.yyy.jp:
うーん、なんだかunixコマンドに親しみがわいてきたぞ・・・。
今までの私の行状から言うと、挫折していたのではと思う方も多いかと・・・。
でも違うのです。新しいサーバーマシンが来たのです。今度こそ本番。
で、CentOSのインストールから、メールサーバ、WEBサーバー構築の復習です。
1度はできたんだからというのを、心の支えに、なんとかうまくいきました。
といっても、設定ファイルはテストマシン上のをコピーし、修正したものもあり。
いままで、2台のLinuxマシンを操るということがなかったので、
このリモートサーバー間でファイルをコピーってのは初めての経験です。うわあ、簡単。
そんなの知らなかったの?と笑われそうだけど、今まで必要がなかったんだからしゃあないじゃん。とりあえず今後の自分のために・・・・。
ローカル・ホストのカレントディレクトリにあるファイルwatasi_no_faileを
リモート・ホストxxx.yyy.jpのanataというユーザのホームディレクトリにコピーしたいとき、
[root@cent001 ~]# scp watasi_no_faile anata@xxx.yyy.jp:
うーん、なんだかunixコマンドに親しみがわいてきたぞ・・・。


