Linuxと私

Linuxサーバー管理日記


1 サーバー構築
2 OS選び
3 WWWサーバー
4 DNS
5 Samba 
6 FTP
7 Webmin
8 Ethereal
9 IPChains
10 Squid
11 Squid stats (プロキシ ログ解析)
12 ユーザー一括登録]
13 WebDAV日記

やっとサーバー構築です。(2002・9).


 前の「Linuxと私」のページがだいぶ古くなったので、そろそろサーバー構築記事を書かねばと思い立ちました。とは言っても、ぜんぜん体系的ではなく、思い思い、つらつら書くだけで、なーんの役にも立ちません。サーバー構築TECのすばらしいページはたくさんありますので、私は、苦労話を中心に書きたいと思います。ほんとはこんなに苦労しないんだけどね。普通の人だったら・・他の人は私の10分の1くらいの時間で、さっさか、さっさかやっているんだろうけど、なんせ私だから、人の10倍はかかるの。まぁ、物好きな女が遊びでここまでやったって見てくれたらいいね。「こんな人でもできたんだ」って思ってくれるだけでも、世の中の女性を励ますかも知れない。Linuxに出会ったのはずいぶん前でした。 ふと知り合ったメル友がDebian Linuxの管理者で、その時は OSと言う言葉も知らず、WINDOWSがOSの一種だとも知らず、「僕は Debianを使っています。」と言われてもぜんぜん分らずでした。でも生活を聞いていると 夜中の2時ごろ カワサキから急遽呼び出されて「浜松のメールサーバーを直しに行った」とか、「この人どんな商売何だろう・・」と思っていました。まぁ、そんなことで、UNIXというもんがあるんだと分りました。そこで DOSVマガジンについていた TurboLinux4.0を見よう見真似で入れた次第です。Linux関係のインストールの経験はWINDOWSより、ずっと多いです。自慢じゃないけど、失敗ばかりしていましたからね。でもまだまだ実用でなかったから、あの黒画面でネットワーク関係で遊んでいた程度でした。ディストリビューションもTurboLinux6.0,workstation6.5,RedHat7.0,と来ていて、そこでストップしていたけれど、ひょんなことからCaldera Linuxのサポート付が当たりまして。(実は、ファムのセミナーでじゃんけんに勝って手に入れただけですが、私はこれを狙ってセミナーを受けたようなものでして、当たったときはとても嬉しかったです)



                                         「そんならひとつサーバーを立てよう!」




と思い立ちました。まぁ、「いつかは・・」とずっと思っていたのですが、とにかくセキュリティ上の心配がたくさんあって、「踏み台にでもされたら、人様に会わす顔がない」とそのままになっていました。セキュリティのことは一応いろいろ頭の中では分かっていたけど、自信がなかったのね。でも、ファムの根津さんにお話を聞いて、「やってみようか」という気になったのです。思い立つや否や、Niftyの掲示板でDuron 900MHz,メモリ256MB,HDD10GBをほとんどただ同然で譲っていただきました。快適に動いています。ショップブランド買うより、組み立てPCの方が、作者の思い入れがあって凝っていますよね。皆さん、良い部品を使ってくれています。


まずは Apache.....


実はLinuxを使っ一番やりたかったことはWEBサーバーをたてることだったのです。素人がPCを使うスキルアップはまず

         
ホームページを見ることができるーメールが使えるーホームページを作るー普通のホームページじゃ満足せず、カウンタを入れたいー掲示板を作りたいーその設置が難しくて挫折しそうになる。−レンタル掲示板、カウンタで我慢する

    ・・だいたいこのくらいで 終わるのが普通でしょうが、私はラッキーな事に、バイクをやっていたお友達(またこの子がすごい女の子でジムカーナ日本第2位になってしまうくらいの実力者)に ファミレスで Perlの書き方を教えてもらったのです。ふとしたきっかけでやる気になるもんで、そのあとずっとプログラミングにはまった次第です。あぁ、ちょっと Apacheからずれましたね。ごめんなさい。
ApacheはWEBサーバーソフトの中でも一番のシェアを占めます。間違っても ビル君の IISは避けましょう。一番攻撃の対象になっています。ログを見ると、いまだにNimda, CodeRedの攻撃が毎日、毎日きます。おかげさまでIISではありませんので、「あぁ、またか・・」で済まされます。しかし、Apacheにもまだまだ脆弱性があるようでアップデートは必須ですよね。

Apache設定はまず CGI、SSI関係が使えるようになること、ページによってアクセス制限がかけられることが始めかな。

Apacheの設定をじぇーんぶ書きませんので キーワードから面白いページを見つけてください。

             
Apache CGI SSI documentroot .htaccess httpd.conf パーミッション 




良い子に悪いページを見せない方法 - プロキシサーバー(ファイヤウォール)の設定


 何年か前にノートンのインターネットセキュリティを買ったわいいが、 win95に入らないのが分り、人様にオークションしてしまった。最近になって家族の良い子がお年頃になっていろいろなページにアクセスするようになった。うーん、あの時ファイヤーウォールソフトを手放さなきゃ良かったと思ったのは後のま・つ・り


                                     
  しょうがないから自分で作っちゃお!


 ・・と さっきはじめました。何を?って まず、RedHat LinuxにSquidちゃんは入っているのかしら?

#squid -v
#Squid Cache Version 2.4.STABLE1

あった、あった なかなかよさげな Squid ちゃんじゃないですかぁ。 STABLEなんて最高じゃん。♪
問題は
/etc/squid/squid.confの書き換えよね。うーーんと、まずCacheディレクトリを作らないと・・
うちのサーバー /var や /etc は結構容量を食っているのよね。/homeは空き容量は十分ね。1GBのcacheが作れるな。じゃ,
cache_dirは/home/spool/squidにしようっと・・

#mkdir /home/spool/squid

<squid.confに記述>
cache_dir /home/spool/squid 1000 16 256 #まず、16のお部屋を作って、それぞれ256の小部屋に分けたってこと

メモリサイズはよく分らないから すべてdefaultにしようっと・http_portも 3128, icp_portは兄弟プロキシがいないから 0ね。

オォーっと、cacheディレクトリのパーミッションを変えないとね。

#chown squid.squid /home/spool/squid

さぁ、ここで試しにsquidを実行しなきゃ。なんだと、本(「squid2 プロキシサーバの設定・運用・管理」テクノプレス)に書いてあるPATHに本体ないじゃん。 ( ここでいろいろ調べる・・よく分らない・・)

じゃsquidの起動はWEBMINからやるか。

http:://locahost:10000

あったぁ、サーバ群にsquidサーバがありました。こりゃ簡単、  squidの起動・終了 一発ね。

ここで動いているのは分ったからブラウザを設定しないと・

うちのPCちゃんには Opera とかIEとかKonquerorとか、Mozillaとかいろいろなのね。

とにかくLANの設定の「プロキシを使う」を有効にしなくちゃ。

プロキシサーバー 192.168.0.1 port 3128

あっ、アクセスしてる。まぁ、普通に見えるわ。間違ったURLはと・・ほらほら英語のページがでたね。こりゃプロキシファイルだわ。でもね、こんな英語じゃ面白くないわねぇ。へんなページにアクセスしたら

              「おんどりゃ--!!! こんなページ、よさんかい!アホ!!」

                                        くらいじゃないとインパクトないわよね。

ううーんとね。どれ書き換えればいいんだろ?!
これだ、これだ  /etc/squid/errors/ERR_INVALIDURL か /etc/squid/errors/ERR_INVALIDREQ

<htmlの書き換え・・>

<
font color="red"><h1>「おんどりゃ--!!! こんなページ、よさんかい!アホ!!」</h1></font>


どりゃ、どりゃ・・ <squid再起動>
#squid -k reconfigure
ほうほう替わってる。

さぁ、問題のアクセス制御ね. ちょっと、どんなサイトにアクセスするかしばらく様子を見ようっと・・
ありゃありゃ・・こんなとこ じゃあ やるか squid.confの書き換え

まずアクセスしてほしくないサイトを記述するファイルを作らなきゃ

vi 
/usr/local/squjid_deny.domain #このファイル名は適当ね

<usr_squid.domainのファイルの中身>

www.sex.com
www.ero.co.jp



こんなとこかなぁ、また後で増やそう。そしてこれをsquid.confに記述すると・ ここがミソね。
-------------------------------------------------------------------------------------------------------
acl ERO1 dstdomain "/usr/local/squid_deny.domain" ERO1も適当PATHと dsrdomainだけあっていればいいのよ。
http_access deny ERO1

---------------------------------------------------------------------------------------------------------
これね、squid.conf の何処に書いても有効ってわけではなく結構上のほうに書いた。でないと いくらやっても有効にならなかった。

これもわざわざ コマンドラインから入れなくてもいいんだけど、WEBMINでやってもいいんだけど、私はこうやっちゃうのよネェ。

さぁてと、このページは本当に見れないかテストね。プロキシ設定したブラウザを開いてと・・

http://www.sex.com

                     「おんどりゃ--!!! こんなページ、よさんかい!アホ!!

成功、成功! 奴、これがでたら驚くだろーな (-。-)y-゜゜゜


HOME