Linux



ここは、Linux解説書 for hikage.です。


最初の目標

Webサーバー
FTPサーバー
DHCPサーバー
WINDOWSファイルサーバー
↑を立ち上げる
もちろん、セキュリティ面も、それなりに

理由

サーバーなんかを立ち上げて、自己満足しようという、身勝手で
無意味なことが、目的になっております。
ついでに、色々な知識が身につけば良いとも思っています。

PC環境
Profileページにあります、Gatewayマシン、「usi」です
このマシンはすでに引退いたしました。
ここ
現在は、自作静音マシン、「wolf」です
ここ

ショートカット
自分風構築法 自分用コマンド集 ウンチク
Windowsでの共有?(samba)Web Server(apache)FTP Server(ProFTP)フィルタリング&
 マスカレード(iptables)CodeRed対策DHCPサーバー設定ddns自動更新 for Linuxntpd(タイムサーバー)WebDav(Webフォルダ)SETI@home
デーモンの再起動とか?現状閲覧?各ファイルの場所とかよく使うコマンドとか







Samba復活の要点自動コマンド実行?










LAN環境 現在のLAN環境は、ルータとローカルネットワークの間に 更にルータマシンとしての機能を持たせサーバーを置いています。 LAN構成
前書き? 当初NIC(Network Interface Card)が認識されなかったということで カーネルのヴァージョンアップという手もあったらしいのだが 自称&他称ビギナーなので、ここは、NICの買い替えという 一番簡単な手段をとりました。 それまで via-vt6102 チップのNICを使っていました。使えるはずなのに・・・ 認識してくれないのだ、ソースファイルを落としてきて、いろいろやったが 無駄だったので、RealtekチップのNICに交換し、以後順調に動いている。 ちなみに、私、岩井は、ダイアルアップルータを使っているので 少し楽です(^^; ダイアルアップはルータが自動でしてくれるので、その辺の設定しなくて済むし 今後するつもりもありませんので、モデムの使い方は一切書かないです。
Windowsとの共有(Windows側からのみの閲覧) まずはsambaで、windowsからファイルを見れるようにすることを目指す。 sambaのデーモンを起動時に立ち上げるように設定する。 smbを自動起動の設定にする # ntsysv でsmbにチェック samba設定ツールswatを使うための設定 /etc/xinetd.d/swat を編集する。 disable = yes という行を、"no"に書き換える。 以上 # /etc/init.d/xinetd restart ↑設定を反映させるために、xinetd再起動 swatで日本語をつかえるようにする # cd /usr/share/swat # mv help help.org # mv images images.org # mv include include.org # ln -s ja/help help.org # ln -s ja/images images.org # ln -s ja/include include.org 一番簡単な方法ということで<とある本参照 rpmパッケージのリコンパイルと言う方法もあるが こっちの方が楽、というか、↑、面倒そう? swatはLinux上で設定すると、不具合が出ることがあるらしいので windowsから使えるようにする # /etc/xinetd.d/swat の only_from= の設定値を "localhost"から"192.168.1.*"(設定をしたいローカルマシンのIPアドレス) に変更する。 RedHatの場合、なぜかそれで無理な事があるらしく(どこかのサイトで見た) その場合 # only_ftom= とすると良い。 その後、http://192.168.1.*:901/ にアクセス。(今度はLinuxマシンのIPアドレス) 設定する場所(俺的) まず、全体設定の、workgroupを、windowsのワークグループと同じにする(必須ではい) create mask 0664 host allow 192.168.0.0/255.255.255.0 適当に・・・ 共有設定ボタンを押す 新しい共有の場合、createしアドバンスビューより 共有名と、フルパス(当然linux側の)を入力する force group 内緒(linuxの特定グループからのみ受け付ける) create mask 0664 0775の方が無難かも・・・(ーー;; ↓も force create mode 0664 directory mask 0775 force directory mask 0775 group ok yes 後はデフォルトでOKだと思う。 有効にするには、動作状況ボタンから Restart smbd Restart nmbd を実行、両方とも、runningになってることを確認(一応) または # samba restart これで、問題なく使えるはず。 top
Apacheサーバー 最初にservernameを設定しないと起動しないっす /etc/httpd/conf/httpd.conf を編集すべし servername localhost     ↓ servername 適当なアドレスを・・・ とする(俺の場合)、これでいいん?いいん?適当でも良いらしいけど 一応こうしてみた。 これで、ローカルからなら、LinuxマシンのIPを入れるだけで ブラウザからアパッチのテストページが表示されるはず。 ドキュメントルートはデフォルトで /var/www/html/ になっている、問題ないのならそのままで良し? 設定されている行は、どこか・・・ DocumentRoot "/var/www/html" で、俺の考えでは?(調べろって感じだけど) 上の"/var/www/html"以下のディレクトリや、ファイルは ブラウザから普通に閲覧できるが たとえばcgiを使う場合、cgiのソースは "/var/www/cgi-bin/"にあるので、ドキュメントルートと兄弟のような? でも、スクリプトとして使えるように scriptalias /cgi-bin/ "/var/www/cgi-bin/" という設定値がある ブラウザからのルートでは"/ = /var/www/html/"だが (http://***.***.***.***/をルート"/"と表現) "/cgi-bin/ = /var/www/cgi-bin/"とできる しかし、/var/www/cgi-bin/以下のディレクトリを 参照することはできない、パーミッションを変えても無駄である そこで、謎だった。 たとえば、htmlファイルが無いディレクトリを見ると ファイルとかのアイコンが表示されるが、あの画像は /var/www/icon/にある なぜ見れるのか? Alias /icons/ "/var/www/icons/" という設定がされている つまり、ブラウザから"/icon/ = /var/www/icon/" となる? ってことで、cgiのソースを弄らずに、bbsなどの 画像を表示させたい時、デフォルトで画像のパスが cgi-bin以下にあるなら Alias /cgi-bin/ "/var/www/cgi-bin/" とすれば良い でも、そうすると、ソースとかも見られる?らしい?ので 一応画像とか、アクセスできるようにするためのディレクトリを 専用に作って、仕方なくcgiソースも弄るとして Alias /cgi-bin/***/ "/var/www/cgi-bin/***/" という一行を加える。(httpd.confに) 無難に Alias /icons/ "/var/www/icons/" の下にでも、そうすると たとえば /var/www/cgi-bin/***/test.gifhttp://***.***.***.***/cgi-bin/***/test.gif で見ることができる あっ、パーミッションの設定忘れずにね、俺! わかりやすく言えば、たとえば Alias /data/ "/home/linux/test/nanika/" として、/home/linux/test/nanika/ に、何か、、、たとえば、sengyousya.aviを置いたとして(爆) http://***.***.***.***/data/sengyousya.avi で見ることができる。 どうやら、できなかった・・・う〜む、残念なんで?まぁ、他になにかあるかも 現状ではできなかったので、結局/var/www/以下に置くことにする・・・(ToT) ちなみに、cgiスクリプト置き場も scriptalias /cgi-bin/ "/var/www/cgi-bin" だが 自由に変えられる scriptalias /cgi-bin/ "/home/fufu/sukuriputo/" としても、使える・・・らしい 置き場を変えても、その置き場のディレクトリを"/cgi-bin/" とする設定がされていればOKっぽいだから、実際"cgi-bin"でなくても"cgi"でも良いし (一応似たようなものを試してたりする) その場合 Alias /cgi-bin/***/ "/home/fufu/sukuriputo/***/" という行も必要になる(俺の場合) (やってないけどね) top
FTPサーバー(wu-ftp → ProFTP) まず、RedHatではデフォルトでは入っていないので ソースをDLする http://www.infoscience.co.jp/technical/proftpd/index.html とりあえずwu-ftpには用はないので早速・・・起動しなくする # ntsysv にて、下の方のwu-ftpdのチェックを外す または # vi /etc/xinetd.d/wu-ftpd として disable = no となっているのを disable = yes と書き換えても良い インストール編 とりあえずダウンロードしてきたProFTPDのソースを適当な場所に置く これを・・・"proftpd-1.2.0pre10.tar.gz" んでとりあえず作業開始 # tar -xzf proftpd-1.2.0pre10.tar.gz パラメータの-xzfってのが良くわからんが・・・xとfは確実にいるようだ vとか書いてあるサイトもあったが・・・よくわからんので公式?サイト通りで んでconfigureするのだが、RedHatは他のLinuxと違い いわゆる実行ファイル?っつうか、デーモン?っつうかプログラムソースとか 設定ファイルの場所が通常 /usr/local/bin とか /usr/local/sbin らしいのが /usr/bin らしいので、インストール先を変えてやらねばならぬということで その為のオプションがprefixというやつらしい、実際は # ./configure --prefix=/usr とすることで、/usr/bin/usr/sbin にインストールされるそうだ 次にコンパイルとインストールで # make # make install でとりあえずインストールは終了〜♪ 設定編 まずProftpd自体の設定をするために /usr/etc/proftpd.conf を編集する (/usr/etc の中は、ユーザーが後からインストールしたソフト達の  設定ファイル置き場になるのだそうだ) # vi proftpd.conf ServerTypeはスタンドアローンでもいいのだが、後々のことを考え あまり良くわからんが、inetdで起動させるようにする (とはいっても、RedHatはxinetdであり、ちょっと違うが) ServerType standalone → ServerType inetd にする Group nogroup となっているところをnobody にしてあげる 最後にとりあえず動く状態にするためコメント含めて2行付け足す # DefaultRoot DefaultRoot ~ :wq これでとりあえずは設定完了 次にxinetdで起動するためにファイルを作ってあげる必要がある # vi /etc/xinetd.d/proftpd として、新しいファイルを作る、内容は service ftp { disable = no flags = REUSE socket_type = stream protocol = tcp wait = no user = root server = /usr/sbin/in.proftpd } :wq これで# ntsysvした時にproftpが追加されてるはず・・・ ってかdisable = noだから その必要はないのだが・・・ ってことで、とりあえず成功
ここまでの状態で、一応Linux側に登録されているユーザーならば アクセスすることができるようになっているが、 あくまでそれぞれのホームディレクトリのみである。 anonymousではログインできなくなっているし、するつもりはない。 ということで、今後どうするかをもうちょっと考えるつもりである。 アクセス制限とか、ユーザーのカレントとか、 シンボリックリンクを使ってどうにかなるらしいこともあるらしく、 特定のディレクトリのみ共有できたらよいが・・・。 または共有用のユーザーグループでも作るか・・・
細かい設定編 ってことで、ついついやってしまいました。 一応自分でもローカルからFTPでアクセスする時にかなりの権限が必要なので やはり外部アクセス用アカウントを作りました。仮にnekoとします。自分は仮にme 後々ユーザーを増やしたとして、面倒なんでグループで分けようと思い 仮にgaibuというグループを作り、メンバーにnekoを加える そこでgaibuには特定のディレクトリ以下しか利用できず 自分は全部使えるような・・・思いつくままに方法を探して見ました # /usr/etc/proftpd.conf ↑で書いた所を修正 DefaultRoot ~ としていた所を DefaultRoot /common/ftp gaibu,!me としました。 /common はまぁWindows側から使ってる領域ですが これで、meに所属しないgaibuグループのユーザーは、/common/ftp以下 にアクセスが制限されるというもの?らしいです ・・・今読み返したらなんか間違ってるような・・・また今度直すかな ってことで、無事nekoアカウントでは /common/ftp以下しか見れないようになり meではすべてOKとなりました。 top
CodoRed対策 いや、わかってる 別にログが肥大化するだけで、影響はないけど・・・ ログが見難い・・・醜いのだ それに、完全にアクセス制限はできないけど・・・ 8割方のアクセスは制限できるし、ならばやるでしょう ってことで、調べた所99%CodeRedUであり 自分のIPアドレス61.201.***.***に近い 61.***.***.***から来ていること判明 それ以外も僅かながらにあるが、1〜2割だし、勘弁 マイサーバーにアクセスする同じプロバのぴか君のアドレスも自分も 61.201.***.***なので そのまま61.201.***.***は許可し 61.***.***.***は拒否・・・破棄?しようということで なんか調べるうちに、ipchainsでやろうということにしました。 いや、他のやり方がイマイチわからぬ、、、 hosts.allowとかhosts.denyとかあるにはあるけど (なんか調べたものと比べると違う気がするんだよね・・・  RedHatって、所々他のディストリビューションと違う?から?) そのうちルータ君とおさらばしたらこのマシンがルータになるかもしれない ってことで、今からちょっとくらい弄っておいても良いじゃない? である # vi /etc/sysconfig/ipchains すでに -A input -s 0/0 -d 0/0 80 -p tcp -y -j ACCEPT と、すべてのtcpプロトコルのオート80へのアクセスを許可しているので その行の前に -A input -s 61.201.0.0/16 -d 0/0 80 -p tcp -y -j ACCEPT -A input -s 61.0.0.0/8 -d 0/0 80 -p tcp -y -j DENY の2つをを適当な場所に追加してあげてみた。まぁつまり -A input -s 61.201.0.0/16 -d 0/0 80 -p tcp -y -j ACCEPT -A input -s 61.0.0.0/8 -d 0/0 80 -p tcp -y -j DENY -A input -s 0/0 -d 0/0 80 -p tcp -y -j ACCEPT って感じにしてあげる。 もちろん自分のプロバイダによってこのIPの設定は変わるので注意<将来を見越して # /etc/init.d/ipchains restart で、とりあえず確認するために $ ipchains -L とすると、動作状況を見ることができる あと、自動起動にもなっていないっぽいので # ntsysv にてipchainsのチェックを入れてあげる とりあえず、access_logを見るのが楽しみである。
なんかもう・・・面倒っていうか、意味無いし、これは取りやめました。 もし、自分がアクセスしたい時、もし・・・61.・・・だったら アクセスできんし、でも、一応こういうことができるってことで 残しておこうホトトギス(笑)

ちなみに、ipchainsももうやめました。
top
フィルタリング&IPマスカレード(iptables) 当初、ipchainsを使おうとしていました。 IPマスカレードは問題なく使えますが ftpとか、モジュールが必要なものについて カーネル2.4では、ipchainsのモジュールがサポートされないことが判明 ってことで、iptablesに乗り換えることにしました。 まず、転送を有効にします。 # vi /etc/sysconfig/network で中の下の行をyesにし FORWARD_IPV4=yes さらに # vi/etc/sysctl.conf で、下の部分を1にする。 net.ipv4.ip_forward=1 次に # ntsysv にて ipchainsのチェックを外し、iptablesにチェックし、OK とりあえず再起動しておこう さらに各モジュールを、、インストール?ロードか? # modprobe ip_conntrack # modprobe ip_nat_ftp # modprobe ip_nat_irc # modprobe ip_conntrack_ftp # modprobe ip_conntrack_irc 起動時にロードされるように設定するためには /etc/rc.d/rc.local の最後に modprobe ip_conntrack modprobe ip_nat_ftp modprobe ip_nat_irc modprobe ip_conntrack_ftp modprobe ip_conntrack_irc を追加しておけばよいはず・・・ 次にマスカレードの設定&フィルタリング設定 まずユーザーの設定を保存するためのファイルを作成 # touch /etc/sysconfig/iptables 順に マスカレードの設定eth0から出て行くパケットをマスカレードする INPUTポリシー、DROP<破棄だっけ?不許可? FORWARDポリシー、DROP webサーバー公開のため、ポート80は許可 FTPサーバー公開のため、ポート21許可 SSHでのログインのため、ポート22許可 eth0からの1024ポート以上のINPUT許可 eth0からのDHCPサーバーからのパケットと、 ローカル側からDHCPへの接続許可のためポート67〜68許可 DNS、ドメインのデータ?のINPUT許可 <--DNSサーバー立ててないので(^^;;; マシン内のローカルループバックすべて許可 eth1(ローカルネットワーク側)からはすべて許可 eth0からでるパケットはすべて転送(ローカルから 宛先がローカルアドレスへのパケットはすべて転送 # iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # iptables -P INPUT DROP # iptables -P FORWARD DROP # iptables -A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT # iptables -A INPUT -i eth0 -p tcp -m tcp --dport 21 -j ACCEPT # iptables -A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT # iptables -A INPUT -i eth0 -p tcp -m tcp --dport 1024: -j ACCEPT # iptables -A INPUT -i eth0 -p udp -m udp --sport 67:68 --dport 67:68 -j ACCEPT # iptables -A INPUT -i eth1 -p udp -m udp --sport 67:68 --dport 67:68 -j ACCEPT # iptables -A INPUT -i eth0 -p udp -m udp --sport 53 -j ACCEPT # iptables -A INPUT -i lo -j ACCEPT # iptables -A INPUT -i eth1 -j ACCEPT # iptables -A FORWARD -o eth0 -j ACCEPT # iptables -A FORWARD -d 192.168.0.0/16 -j ACCEPT 上記をファイルに保存 # iptables-save > /etc/sysconfig/iptables
これだけでは不安なので、一応ルータの方で、ポート80と21.22だけ許可して ルータのWAN側からの、ローカルアドレスは破棄してたりもする。 こういうのを載せるのって危険かな、やっぱ
top
DHCPサーバー設定 やっぱりローカルマシンは固定IPを与えたいし ルータとして、GatewayとDNSサーバーアドレスを 自動的に与えたいということです。 まず、dhcpdの設定ファイル編集 # vi /etc/dhcpd.conf [new file] server-identifier ローカルドメイン; option domain-name "DNSサーバードメイン"; option domain-name-servers 192.168.1.*; #割り当てるDNSサーバーアドレス default-lease-time 6000; #リースタイム(適当で) max-lease-time 10000; #最大リースタイム(これも適当でOKかな?) subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.20 192.168.0.40; #自動で貸し出すIPの範囲 option routers 192.168.0.1; #ルータのアドレス(linuxマシン) option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; } # 以下、固定アドレス指定 host pc_1 { hardware ethernet **:**:**:**:**:**; #マシンのLANカードのMACアドレス fixed-address 192.168.0.10; #割り当てるIPアドレス }  ・  ・  ・ host pc_4 { hardware ethernet **:**:**:**:**:**; #マシンのLANカードのMACアドレス fixed-address 192.168.0.14; #割り当てるIPアドレス } で保存する # touch /var/lib/dhcp/dhcpd.leases [new file] としてファイルを作る(元からある場合もあるみたい) 起動 # dhcpd eth1 でいけるが、これは僕の環境の場合で、通常そのままの状態でdhcpdを起動しようとすると eth0とeth1の両方に対して監視しようとするが、eth0は192.168.1.0なので問題があるし eth0の方はルータから各情報を貰ってる関係上エラーがでる。 dhcp機能をeth1のみに絞るためにeth1を加える。 自動起動する際にもやり方が異なる。 # vi /etc/rc.d/init.d/dhcpd の中の daemon /usr/sbin/dhcpd の行の最後に、eth1を付け加え daemon /usr/sbin/dhcpd eth1 にし、 # ntsysv にて、dhcpdにチェックを入れる。 top
DynamicDNS自動更新 サーバーを公開する場合、専用線とか、固定IPではないので<普通 IPアドレスは常時接続であっても、たまには変わってしまうものです。 それにIPで接続するのはやっぱり面倒だし、覚えにくい ということで、DynamicDNSサービスというのを使っています。 しかし、これも各サービスを提供しているサーバーのHPにアクセスし ブラウザから更新作業をするか、WindowsでDiCE(僕の知る限り)というソフトで更新するか・・・ ということで、結構面倒なもの・・・そこで探してみればLinux上で自動的にやってくれる というソフトがあることを発見、以降の説明はとあるHPでの説明を自分用に・・・簡単に ソフトはddclientというもので、ここからDLできるみたいです。 http://members.home.net/ddclient/ ちなみに、このソフトは、DiCEと違い、サポートしてるDDNSサーバーが少ないみたいで dyndns.org、zoneedit.com、easydns.com、hn.org・・・くらいかな?<現在 ってことで、僕はdyndns.orgに新たにアカウントを作成しました。 では、作業に入る。 適当な場所にDLしたファイルを解凍する所から・・・ # tar xvzf ddclient-3.5.4.tar.gz まぁ、一瞬ですわ んで、ディレクトリ移動 # cd ddclient-3.6.1 そこにあるddclientを /usr/sbin/へコピー # cp ddclient /usr/sbin/ ddclient.confというファイルを、sample-etc_ddclient.conf からコピーし、/etc/に置く # cp sample-etc_ddclient.conf /etc/ddclient.conf ddclient.confを編集します。 # vi /etc/ddclient.conf #use=web, web=checkip.dyndns.org/, fw-skip='IP Address' # found after IP Address という行のコメントアウトを解除し・・・ うちのプロバイダの場合、プロクシ通されてるので、正確なグローバルアドレスが "checkip.dyndns.org/"では取れないので、友達に頼んで専用のスクリプト?を置いてもらってます で、以下のような感じにしました。 例: use=web, web=****.***.jp/getip.cgi,#login=your-login # default login #password=test # default password #mx=mx.for.your.host # default MX #backupmx=yes|no # host is primary MX? #wildcard=yes|no # add wildcard CNAME? これらの必要な部分のコメントアウトを解除して、DDNSサービスのログインネーム等、入れます。 次 僕の場合、dyndns.orgの、dynamic addressesなので その部分 ## ## dyndns.org dynamic addresses ## ## (supports variables: wildcard,mx,backupmx) ## # server=members.dyndns.org, \ #ここと # protocol=dyndns2 \ #ここと # your-dynamic-host.dyndns.org #ここの#を取って 一番下の部分に、自分の取得したddnsのホストとドメインを入れる。 例: server=members.dyndns.org, \ protocol=dyndns2 \ linux.dyndns.org 以上で編集終了 次に、起動ファイルコピー # cp sample-etc_rc.d_init.d_ddclient /etc/rc.d/init.d/ddclient 起動時に自動的にプログラムが読み込まれるようする。 # /sbin/chkconfig --add ddclient 起動 # /etc/rc.d/init.d/ddclient start 確認・・・ # ddclient -daemon=0 -debug -verbose -noquiet 処理を終え、最後に SUCCESS: updating ***.dyndns.org: good: IP address set to **.***.**.*** と出れば、成功です。 ・・・ちなみに全部受け売りです。詳しい事はなんとなくしか分かりません。 理論は良いからやってみる、って感じです。 top
ntpd(タイムサーバー) とりあえず、設定ファイルを弄る # vi /etc/ntp.conf server 133.100.9.2 fudge 133.100.9.2 stratum 10 コメントアウトされてたら#を取る どこだったか、どこでもいいが、どこかのタイムサーバーのアドレスを入れる ドメインでも良いんだっけ? まぁ、探せばいくらでも出てくるし、探しても良しhttp://jjy.crl.go.jp/ あとは、ntsysvにて、ntpdにチェック入れて自動起動するようにする # /etc/init.d/ntpd start で、起動する、数分後には同期されて実用化可能なはずです # ntpq -p するとわかるらしい remote refid st t when poll reach delay offset jitter ============================================================================== *clock.nc.fukuok .GPS. 1 u 263 1024 177 125.144 -103.78 112.595 行頭に*がついてると同期してる・・・らしい ので、ローカルPCの時刻を合わせるサーバーに Linuxマシンのアドレスを指定すればOK top
WebDav(Webフォルダ) まず、WebDavを使うには、webサーバー、アパッチが必要です。 そして、apacheのモジュールmod_davが必要 モジュールがインストールされているか確認をする rpm -q mod_dav RH7.2だと最初から入っていました。 次に、日本語ファイル名などを使うために、encoding.soというモジュール? を入れます、これは個人的に作られたものらしく、まだ不完全だそうで 最新ヴァージョンが出たらすぐに入れなおした方が良いらしいです。 実際、日本語表示はされたが、すぐおかしくなったりもしました。 mod_encodingはここから頂きました。 mod_encoding-1.1.tar.gz # tar fxvpz mod_encoding-1.1.tar.gz # cd mod_encoding-1.1 # ./configure # make # make install mod_encodingを無事インストールすると /etc/httpd/conf/httpd.confに モジュールをロードするための記述が追加されますが 記述されている場所が違っているので、正しい場所に直します。 LoadModule python_module modules/mod_python.so LoadModule encoding_module lib/apache/mod_encoding.so となっている、mod_encoding.soの行を LoadModule dav_module modules/libdav.so LoadModule encoding_module modules/mod_encoding.so のように、libdav.soの下に移動させ パスをlib/apache/からmodules/・・・に直します。 同じように AddModule mod_python.c AddModule mod_encoding.c のmod_encoding.cの行を AddModule mod_dav.c AddModule mod_encoding.c のように移動します。 で、とりあえず、モジュールに関してのことは終了 次に、WebDavで使うためのディレクトリと ロックファイル用のディレクトリを作る RH7.2ではアパッチを動かしているユーザーはapacheなので WebDavのディレクトリのユーザーとグループは、apacheにする # mkdir /hoge/WebDav # chown -R apache.apache /hoge/WebDav # chmod -R 770 /hoge/WebDav # mkdir /var/lock/apache # chown -R apache.apache /var/lock/apache # chmod -R 770 /var/lock/apache 次に再びDavを使うためにhttpd.confを編集します。 適当な個所に以下を追加します。 # # *************** WebDav setting ************* # <IfModule mod_encoding.c> EncodingEngine On SetServerEncoding UTF-8 AddClientEncoding UTF-8 "Microsoft-WebDAV-MiniRedir/" AddClientEncoding SJIS "Microsoft .* DAV 1\.1$" AddClientEncoding UTF-8 "Microsoft .* DAV$" AddClientEncoding SJIS "xdwin9X/" AddClientEncoding EUC-JP "cadaver/" </IfModule> <IfModule mod_dav.c> DAVLockDB /var/lock/apache/DAVLock #ロックファイルへのパスは、先ほど作った任意の場所を指定 DAVMinTimeout 600 Alias /WebDav /hoge/WebDav #http://***/Dav/にアクセスした時に #/hoge/WebDavというディレクトリにアクセスする #パスは、先ほど作った任意の場所 <Location /WebDav> DAV On <Limit HEAD OPTIONS GET PUT POST DELETE PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK> #↑すべての命令?を、許可したユーザーだけに制限する AuthType Basic AuthName "WebDav Security" AuthUserFile /etc/httpd/DAVusers #認証ファイルの場所 Require valid-user </Limit> Options Indexes </Location> </IfModule> 最後に、WebDavを使うユーザーを作ります WebDavは、Linuxユーザーとは無関係にユーザーを作る事ができます。 あくまで認証のためだけのもので、実際にディレクトリにアクセスするのは apacheなので、自由に作る事ができます。 # cd /etc/httpd/ # htpasswd -c DAVusers ユーザー名 2人目以降を作る場合は-cを付けないように つけると、最初に登録したユーザーが消えるらしいです。 ってか、実際試しました。 これで、あとは、Win9x系なら、IE5などのインストールの時に Webフォルダを有効にして、Webフォルダから追加 Win2000なら、ネットワークプレースの追加で http://****/WebDav/ として、ユーザー名、パスワードを入れれば完了 なはず top
SETI@home seti@home、知ってる人は結構いると思いますが サーバーに誰もアクセスしない時とか、折角だからCPUパワーを使おう! ということで、Linuxにseti入れてみました。 まずsetiのページから適当なtarファイルを落としてくる。 自分の場合は、↓の辺のらしかったので、、、 i386-pc-linux-gnu-gnulibc2.1.tar しかしVIAのC3ってi686だったからそっちのでも良かったかな〜 でも、どこかのページに書いてあったが、staticって方は いけないとか・・・ さて、DLしたモノを適当な場所に置いて 解凍します $ tar xvf setiathome-3.03.i386-pc-linux-gnu-gnulibc2.1.tar 解凍されたらそのまま使えるみたいで、ただ僕は/etc/seti/ に移動させました。 あとはsetiのディレクトリに移動して実行 $ cd /etc/seti/ ./setiathome すると、名前、e-mailアドレスとかを聞いてくるから 入力する。 パスワードとか色々あったと思うけど、国の番号も 日本は106 全部入れると計算するためのデータをDLし始めます。 計算が始まると Beginning analysis... (This is the last message displayed while the client works. To see progress messages between now and completion of   processing, operate the client with the -verbose option. You can also see the progress of the client by looking at the 'prog=' line in the state.sah file. 見たいな風に表示される。 作業を続ける場合、一度EnterすればOK 次回マシン起動時に自動的に開始するには /etc/rc.d/rc.local の最後に cd /etc/seti/(setiathomeの任意のディレクトリ) ./setiathome -nice 19 & と記述すれば良し CPUの使用率とか見るとほぼ常に98〜99.5%くらいですが 他の作業が重く感じる事は無いです。 top


何かあれば(何が?) メールでご一報・・・と言いたいが
それほどの知識はまだ無く、お勉強中であり
緋影用のところなので、申し訳ないですが、自分で調べましょう。