August 27, 2005

メールサーバの停止

○○のインストールや起動や設定のドキュメントは沢山あるのですが、肝心なアンインストールや停止のドキュメントが意外とないですね。
Linux の世界では「1回インストールしたら消さない」というモノだそうです(ホント?)。

自宅サーバに割り当てた jp ドメインを来年でやめるので、メールサーバを停止します。
SMTP に Postfix(rpm インストール)、POP3 に qpopper(ソースインストール) を使っていました。
これらを停止して、通信できないようにします。iptables も許可していたルールを削除します。
アンインストールはしません。というかできません(ぉぃ)。

Postfix の停止

service コマンドで停止します。

# service postfix stop

ps コマンドで停止したか確認しましょう。

# ps ax|grep postfix
ps ax|grep postfix ←これは ps コマンドを走らせたため出る

これで停止完了です。

qpopper の停止

ソースインストールした場合の停止です。
qpopper を利用可能にした時、/etc/xinetd.d/qpopper というファイルを作成したので、このファイルを違う場所(/etc/xinetd.d 以外のとこ)へ移動させます。
私の場合は自分のディレクトリ /home/kuro へ移動させました。

# mv /etc/xinetd.d/popper /home/kuro

xinetd を再起動します。

# service xinetd restart

停止したか telnet して見ましょう。

# telnet localhost pop3
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused

Connection refused と出れば成功です。
もしも以下のようなメッセージが出るとまだサービスが動いています。

# telnet localhost pop3
Connected to localhost.
Escape character is '^]'.
+OK Qpopper (version 4.0.5) at サーバに割り当てたドメイン名 starting.

これで停止完了です。

iptables を元に戻す

メールサーバが通信できるように iptables で許可を行ったので、今度は逆にブロックするようにします。
iptables の設定を参考にして打っていきます。
許可する時は iptables -A でした。ルールを削除したいので -D にします。

# iptables -D INPUT -p tcp --dport 110 -j ACCEPT
# iptables -D INPUT -p tcp --sport 110 -j ACCEPT
# iptables -D INPUT -p tcp --dport 25 -j ACCEPT
# iptables -D INPUT -p tcp --sport 25 -j ACCEPT

これだけだとマシンを再起動した時ルールが元に戻ってしまうので保存します。

# service iptables save

iptables を再起動します。これで反映されます。

# service iptables restart

これで終了です。
iptables の現在のルールを見たいなら以下のコマンドを使います。

# iptables -L

上のコマンドだとダーと流れてしまうので、内容をゆっくり見たいときは less とかに渡します。

# iptables -L | less

投稿者 Kuro : 12:46 PM | コメント (0) | トラックバック

April 30, 2005

Gentoo Linux WebサイトのScreenShotsにて

Alex Santiago 氏のデスクトップ

新しく組む Linux テスト用マシンにいれるためのディストリビューションを探していたのですが、Gentoo Linux Web サイトスクリーンショットページを見ていると ORBIT の美少女ゲーム顔のない月の壁紙が写っているデスクトップを発見。外人さんも日本のアニメはご存知なんですねー。

で、ディストリビューションの件。
OS は無料で手に入れたいので無料のディストリビューションを選んでます。
Fedora Core 3DebianGentoo LinuxMomonga LinuxPlamo LinuxSlackware

rpm になれちゃって、ソースからリビルド!!やコンパイル!!のやり方を覚えなきゃなりませんのう。
実際のところ、パッケージでインストールを利用している人のほうが多いんでしょうか。どっちだかは知らないですが。
ゴールデンウィークはカレンダー通りの休みなので、さっさと決めて組んでしまおうかと企んでます。

投稿者 Kuro : 08:06 PM | コメント (0) | トラックバック

April 24, 2005

hdparmコマンドでハードディスクを調べる

神野すいかさんの日記 KNOnline.NET 経由。
ThinkPad 40p を購入されたようです。早速 Turbolinux をインストールされているようですか、そのなかで hdparm というコマンドで hdd の内容表示を行えることを発見。
早速自分のマシンでも調べてみました。
@IT にも詳しい使い方がありました。
オプションについては、Manpage を参照のこと。

hdparm で色々やってみました。

# hdparm /dev/hda

/dev/hda:
multcount = 16 (on)
IO_support = 0 (default 16-bit)
unmaskirq = 0 (off)
using_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 8 (on)
geometry = 14593/255/63, sectors = 234441648, start = 0

オプション無しの hdparm では簡易的な表示のみです。
もっと詳細な内容は -i オプションをつけて実行します。

# hdparm -i /dev/hda

/dev/hda:

Model=ST3120026A, FwRev=3.06, SerialNo=5JT21S0L
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=8192kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=234441648
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=no WriteCache=enabled
Drive conforms to: ATA/ATAPI-6 T13 1410D revision 2: 1 2 3 4 5 6

hdparm コマンドを使ってディスクのベンチマークをすることができます。
それが -ft オプションです。

#hdparm -ft /dev/hda

/dev/hda:
Timing buffered disk reads: 64 MB in 1.42 seconds = 45.07 MB/sec

投稿者 Kuro : 09:47 PM | コメント (0) | トラックバック

April 04, 2005

Redhat Linux 9のrpm版Apache 2.0.40のエラーメッセージ画面の文字コードを変更する

Redhat Linux 9 ftp ダウンロード版でインストール時に httpd を指定すると rpm 版の Apache 2.0.40? がインストールされると思います。
気づくと思いますが、rpm 版では Apache のエラーメッセージ画面(適当なファイル名を指定したときに表示されるページ)の日付が漢字表記になってます。漢字なのに head の charset が iso-8859-1 になっているので文字化けしてしまうのです。
これを解決するには、AddDefaultCharset を EUC-JP に指定する方法しかないかと思いましたがやっと解決方法を発見したのでメモ。

その前に、AddDefaultCharset を EUC-JP や none (←本当は none なんていう設定方法はありません[本家マニュアル 2.0.x の場合/ 1.3.x の場合])にしている場合は Off (Oは大文字で!)にするか、行自体をコメントアウトします。
変更したら、httpd を restart することを忘れずに。

# service httpd restart

このエラーメッセージ群の元ファイルはデフォルトでは /var/www/error/ にある拡張子 *.var のファイルです。
この *.var のファイルの中身を見てみると分かるとおり meta を含む <head> の記述がありません。
代わりに以下のような指定がされています。

<!--#include virtual="include/top.html" -->

これもまた別の定義ファイルを読み取っているということです。
*.var ファイルがおいているディレクトリ内にある include ディレクトリを見てみましょう。
その中にある top.html が <head> 関係を定義しています。
iso-8859-1 を発見できました。
変更をする前にオリジナルファイルをコピーしておきましょう。

# cp -p top.html top.html.backup

バックアップしたら、該当箇所の iso8859-1 を euc-jp に変更してしまいましょう。
これで、エラーメッセージの漢字の日付が正しく表示されるはずです。

投稿者 Kuro : 11:09 PM | コメント (0) | トラックバック

February 06, 2005

apacheのアクセスログにNULL.printerやNULL.IDA?CCC・・・というログが残る

こんにちは。日曜どうお過ごしですか。

お休みの日は、サーバ機に ssh してぼーと httpd のログを眺めています。
リアルタイムでアクセスしてきた情報を見るのは面白いです。
root 権限で以下を実行するとあなたも見れますよ(httpd のアクセスログファイルのある場所が分かるなら)。
Redhat Linux 9 で、VirtualHost を使っていない場合の例です。

# tail -f /var/log/access_log

VirtualHost の設定で別ファイルに分けているなら以下のようにするといいかも。

# tail -f /var/log/hogehoge.com_access_log


それはおいといて、眺めていたらなんだかすばらしく怪しいアクセスログが5回にもわたって書き込まれたのでアクセスログを開いてみると以下のような足跡がついていた。

219.136.35.38 - - [06/Feb/2005:10:11:14 +0900] "GET / HTTP/1.0" 200 3619
219.136.35.38 - - [06/Feb/2005:10:11:15 +0900] "GET /NULL.printer HTTP/1.0" 404 1051
219.136.35.38 - - [06/Feb/2005:10:11:20 +0900] "GET /NULL.IDA?CCCCCCCCCCCCCCCCC(永遠と続くので省略)

IP アドレスはどうせ皆見れるようになっていない設定(DNS のおかげ!)なだけなので、見せてしまっても問題ないだろう。
ANSI Whois Gateway で調べてみると中国と思われる。

Google に聞いてみると、このアクセスログは Microsoft の Web サーバであるところの IIS(Internet Information Service) へワーム攻撃を起こしているものと分かりました。
実際は、私のサーバは Linux なので関係ないのですが httpd 経由でアクセスするためにアクセスログは残るわけです。
ワームによって貴重な記憶容量を消費させてしてしまうのは腹だたしいのは言うまでもないです。

でも、ある程度保存しておいて IP アドレスを使って、 .htaccess で deny してしまう方法もあるので今回は access_log ではなく worm 専用のログファイルに保存することにします。

ぺこぽん情報局はじめての自宅サーバ構築を参考に、/etc/httpd/conf/httpd.conf を編集します。

# vi /etc/httpd/conf/httpd.conf

余談ですけど、こういう記述てどこにでも書いても大丈夫なんですかね?
私は、なんだかそれっぽいこと書かれているかなー?てところに書いてしまうんですが。以上余談。

以下の記述を行の一番最後に記述しました。

<IfModule mod_setenvif>
SetEnvIf Request_URI "default\.ida" worm
SetEnvIf Request_URI "null\.ida" worm
</IfModule>

次に、CustomLog が書かれているところに以下を記述します(いや、たぶんどこに書いてもいいんだろうけど)。

CustomLog /var/log/apache/access_log combined env=!worm
CustomLog /var/log/apache/worm_log combined env=worm

私が思うに、ぺこぽん情報局で書かれている方法は「通常のアクセスログとは別のワーム用アクセスログに保存する」です。
はじめての自宅サーバ構築で書かれている方法は「ワームからのアクセスはログに記述しない」です。

終わったら、2〜3回見直しておくといいかもしれません。
vi を書き込み後終わらせて(ESC を押してから ":wq")、httpd を再起動します。

# service httpd restart

これで、私の場合は /var/log/httpd/worm_log が作成されるはずです。
ワームによるアクセスが worm_log に書き込まれれば成功ですが、来るまでは分かりませんね(いや、こなくていいんだけど)。

投稿者 Kuro : 11:37 AM | コメント (0) | トラックバック

January 10, 2005

ドメインはレンタルサーバ、サブドメインは自宅サーバ他を見れるようにする

サーバをちょこちょこいじくってる Kuro です。

やっと VirtualHost の設定がわかったので、以前考えていたことをやってみました。
atmarkit の記事を見ながらやりました。

やりたいことは以下の通り。
www.kuroduction.com → さくらインターネットサーバ
home.kuroduction.com → 自宅サーバ(/home/username/public_html)
pw.kuroduction.com → 自宅サーバ(/home/username/public_html/pw)

まずはじめに私の前提条件から。
自宅サーバの環境は、Redhat Linux 9 で標準でインストールされている apache 2.0.40。
家庭内 LAN を組んであって、サーバのプライベートアドレスは 192.168.1.11。

DNS は value-domain で、レンタルサーバはさくらインターネットです。
一般的に DNS の設定は、レンタルサーバの DNS を見に行くように設定してしまうのですが、これでは自分で好きなようにサブドメインを発行できなくなってしまうので、すでに DNS は value-domain で管理するように設定済みです。

value-domain のサイトでログインして、[DNSレコード/URL転送の変更]→変更したいドメイン選択して変更→[DNS情報変更]の画面まで進みます。

サブドメインにしたい名称を一番左のボックスへ入力します。home としたいので home と入力します。
次にサーバの IP アドレスを入力します。ここにはグローバル IP アドレスを入力します。
タイプは A レコードを選択。
MX 設定は 0 を入力。

入力したら、[変更]を押して完了です。

次に、今度はサーバの設定(apache)をします。
httpd.conf は Redhat Linux 9 の場合は、/etc/httpd/conf/httpd.conf にありました。
httpd.conf は root のみ変更できるので、root になります。

$ su -
passwd(表示されない)
# vi /etc/httpd/conf/httpd.conf

開いたら、(私の場合は)一番最後の方にある VirtualHost の部分に以下のように記述します。

NameVirtualHost 192.168.1.11:80

<VirtualHost 192.168.1.11:80>
ServerName home.example.com
DocumentRoot /home/username/public_html/
ServerAdmin username@example.com
ErrorLog logs/example.com_httpd_errorlog
TransferLog logs/example.com_access_log
# BindAddress 192.168.1.11
</VirtualHost>

VirtualHost IP アドレス:port番号
IP アドレスは家庭内 LAN の場合はプライベート IP、インターネットに直接つながっている場合はグローバル IP を指定します。
ポート番号は普通は 80 でかまいません。

■NameVirtualHost
最初から書かれているかもしれないので、重複しないように探してから記述してください。

■ServerName
アクセス時のドメイン名をすべて指定します。

■DocumentRoot
表示させたいディレクトリを指定します。

■ServerAdmin
サーバの管理者のメールアドレスを指定します。
記述しないとデフォルトのメールアドレスになります。

■ErrorLog
エラーログの保存先とファイル名です。
記述しないとデフォルト値になります。

■TransferLog
アクセスログの保存先とファイル名です。
記述しないとデフォルト値になります。

■BindAddress(1.3.x用)
Apache 2.0 でこの設定を行うと、エラーが発生するみたいです。

設定が終わったら vi を書き込んでから終了させ、apache を再起動させます。

# service httpd restart

ここでエラーした場合は、何か記述をミスしているかもしれないので vi で開いて見直してください。急いで記述すると間違いがおきやすいのでよく確認します。

成功したら、ブラウザで表示してみましょう。表示できれば成功です(おめでとう!)。

投稿者 Kuro : 03:56 PM | コメント (0) | トラックバック

December 23, 2004

MRTGでインターネット上の速度をグラフにする

なにやら探してみると、mrtg-ping-probe というモジュールをいれると、ping させた値を MRTG で表示できることが判明(MRTG Version 2.x以降?)。

真・講習会転倒日記に簡単なインストール方法が書かれていたのでやってみます(注:上記サイトでは Debian での解説ですが、Redhat も同じみたい)。

まず必要なファイルを手に入れます。
pwo.deというサイトのトップページにあるmrtg-ping-probe というリンクをクリックして、ftp に接続します。
その中にある、新しそうな tar.gz を wget かなんかでダウンロードします。
私の場合は最初から root 権限で作業しました。

$ su -
passwd:(表示されない)
# pwd
/root
# wget ftp://ftp.pwo.de/pub/pwo/mrtg/mrtg-ping-probe/mrtg-ping-probe-2.2.0.tar.gz

今回私が使ったのは、mrtg-ping-probe-2.2.0.tar.gz です。もちろん新しいのが出ていたら新しいのでもかまいません。
ダウンロードしたら、解凍します。

# tar xvzf mrtg-ping-probe-2.2.0.tar.gz


解凍したら、とりあえずあるべきディレクトリに移動させます。一緒に名前も変更。

# mv ./mrtg-ping-probe-2.2.0.tar.gz /usr/local/mrtg-ping-probe


権限を変更し、cfg ファイルの生成をします。
下の例では、aaa.bbb.ccc.ddd という IP アドレスを持つサーバに ping をしてグラフを生成します。> test.cfg は、生成したい cfg ファイル名です。何でもかまいません。

# chmod 755 mrtg-ping-cfg
# mrtg-ping-cfg aaa.bbb.ccc.ddd 'ping aaa.bbb.ccc.ddd' > test.cfg

真・講習会転倒日記と同じエラーがでました!
エラーを回避するために、mrtg-ping-probe ディレクトリにある mrtg-ping-cfg を vi で開きます。
編集する前にバックアップしておくのを忘れずに。

# cp mrtg-ping-cfg mrtg-ping-cfg.backup
# vi mrtg-ping-cfg

一番先頭にある /bin/ksh を自分の端末に合わせたものに変更します。私の場合は /bin/bash

#!/bin/ksh

#!/bin/bash

終わったら、保存して終了させます。

:wq


mrtg-ping-probe に perl のパスが書かれているので、同じように編集します。
元々下記のようになっていたので、自分のサーバに合わせたものに変更します。

#!/usr/local/bin/perl

以下のように変更します。わからない場合は
# which perl
とやると、パスが表示されます。

#!/usr/bin/perl


もう一度 cfg ファイルの生成をします。

# mrtg-ping-cfg aaa.bbb.ccc.ddd 'ping aaa.bbb.ccc.ddd' > test.cfg

生成した cfg ファイルを vi で開きます。

# vi test.cfg

開いたら、以下の部分を探して、自分が mrtg-ping-probe をインストールしたパスに変更します。

Target[aaa.bbb.ccc.ddd]: `/usr/local/mrtg-ping-probe aaa.bbb.ccc.ddd`


私の場合は、以下のように変更。
Target の [] の中身は、書き出される html ファイル名となるので、自分が html ファイル名にしたい名称をつけます。

Target[ping-ix01]: `/usr/local/mrtg-ping-probe/mrtg-ping-probe aaa.bbb.ccc.ddd`


また、この cfg ファイルの書式は、単体では動かないものと思われます。
mrtg が動作している人間が行うものということを前提にしているためで、既にネットワーク負荷や CPU 負荷などを表示させている cfg ファイルに追記すると動作するでしょう。

私の場合は、ネットワーク負荷・CPU 負荷・メモリ使用率・ハードディスク使用率を別々のファイルで使っているため、もう少し記述します。
まず、私が追記したものを下記に記します。

# html ファイルを実際書き出すパスを指定します。
WorkDir: /home/ユーザー名/public_html/mrtg

#html ファイルを生成したときのフッタに表示される MRTG のバナー?でつかう画像のパスです。
IconDir: /mrtg/icons/

#html ファイルの文字コードを指定します。
Language:eucjp

#ping-ix01.html を書き出したいディレクトリを指定します。
#mrtg/ping に書き出したい場合は↓です
Directory[ping-ix01]: ping

#標準では、gauge しか書かれていません。
#このままでは、グラフの時間進行方向が右から左になります。
#反対にしたい場合は、growright を指定します。
Options[_]: gauge,growright


ちゃんと動くかどうか、実際に動かしてみましょう。

# /usr/local/mrtg-2/bin/mrtg /usr/local/mrtg-png-probe/test.cfg

先頭に、Rateup WARNING: と書かれたエラーは今までの過去のログデータや画像ファイルがないよー!といっているだけです。
1回目・2回目はでますが、正常に動作している証拠です。
3回目以降もエラーが続く場合は、エラーメッセージをよく読んで設定をしなおす必要があります。


ちゃんと html ファイルとして書き出されましたか?

確認ができたら、crontab で定期的に解析するようにしましょう。ちなみに ping の相手に迷惑がかからないような単位で指定します。

# vi /etc/crondab

0,15,30,45 * * * * root /root/usr/local/mrtg-2/bin/mrtg /usr/local/mrtg-s/cfg/test.cfg

これで時間をおけば、グラフがぐにゃぐにゃ動くようになるでしょう。

投稿者 Kuro : 05:46 PM | コメント (0) | トラックバック

MRTG: The Multi Router Traffic Grapher

自宅サーバMRTGインストールして運用中なり。

毎朝、そして帰宅後必ず見てグラフがぐにょぐにょ動くのを眺めるのが楽しみです。

とあるサイトを発見。この MRTG は、インターネット速度計と題したインターネットをターゲットとしたトラフィック状態を表示させているのです。
どうやってグラフにしているのか教えていただきたいものです。

MRTG は、なんらかの数値を取得できればなんでもグラフにできるのはわかるのですが、どうやってそれを行っているかは私はわかりません。
もしもこれができると、RagnarokPeople みたいなことができそうなのですがね。

うむむと耽る祝日。

投稿者 Kuro : 04:07 PM | コメント (0) | トラックバック

September 20, 2004

雑記なのです

私の中でパソコン(というより端末)をいっぱいお持ちで有名な電脳ぺんぎんのWebを開いてみたら、どこかでみたような風景写真が掲載されていました。

おねがい☆ツインズのOPで3人が座っている風景ではないですか。
実在する場所だったんですね。
写真が載っている日付の前の日の日記に書かれた情報によると、木崎湖旅行に行かれたようです。

試しにGoogleで検索してみるとそれっぽいWebサイトがわらわらとでてきます。
ちょっと行ってみたいと思ったのは秘密です。

投稿者 Kuro : 09:05 PM | コメント (0) | トラックバック

September 19, 2004

klog.jpのphpがremoveされてた

業務放送業務放送。

klog.jpドメイン管理している Kuro です。
いつもご利用いただきましてありがとうございます。

現在 php を利用した掲示板・PukiWiki がご覧になれなくなっております。

# rpm -qa|grep php

したところ、phpモジュールがすべて削除されているのが判明いたしました。
gd(高速作成用グラフィックスライブラリ)を

# apt-get remove gd

とした際に php も gd を利用するために一緒に削除されたものと思われます(証拠なし)。

改めて、php のコンパイル・インストール・設定を行いますので、本日中の同コンテンツはごらんになれませんかもしれません。
また、apache を restart することがありますので Web をご覧になれない場合があります。
ご了承くださいますようよろしくお願いいたします。

以上。

投稿者 Kuro : 11:44 AM | コメント (0) | トラックバック

September 18, 2004

プログラムがハングアップしたら

サーバの Linux であるところの redhat ですが、専ら windows からの ssh での操作ですので、CUIで job をさせているのですが、何らかのプログラムを実行させたときに何も反応がない時があります。

こんなときは停止させるために "CTRL+C" をいつもやっていたのですが、これでも ssh の画面が無反応の時があります。
@ITにプログラムを一時停止するにはがのっていました。
"CTRL+Z"を押すことで、プログラムが一旦停止します。
もう一度同じプログラムを実行しても同じ状態になるのであれば、

# ps ax|grep [プログラム名]

を実行して、一番先頭に書かれている PID(Process ID) を確認します。PID は以下のコマンドの[PID]に代入しましょう。

# kill -KILL [PID]

と入力するとプログラムを殺すことができるはずです。

というのも、私が実際そうなったわけです(笑)。

# rpm -qa|grep hoge

を実行しても何も反応がなくなったんですよ。ssh こと tera term が。
仕方なく "CTRL+Z" させて、kill させましたが後々も直らないとマズイ!!と感じたので検索。
RPMがハングしたら@ITにrpmコマンドがハングアップしてしまうときはという tips を発見。
実行したところちゃんと反応が返ってくるようになりました。

良かった良かった。

投稿者 Kuro : 10:20 PM | コメント (0) | トラックバック

July 11, 2004

PostfixとQpopperでメールサーバ構築完成

先週の日曜Postfix を導入して、1週間たちました。
なんとか送受信成功しましたー。

何故メールをメールクライアントから受信できないのか?
それは、クライアントにメールを送信するプロトコル pop を入れていなかったためでした。
Postfix は smtp 用のサーバソフトで主にメールを送信する役目をしています。これだけではメーラーで受信することはできません。
それで私は qpopper という pop サーバを導入しました。

エラーメッセージによく出てきた、/etc/aliases.db ですが /etc/postfix/main.cf に記述してある aliases.db のパスが間違って設定されていたためでたメッセージでした。ちゃんとある場所を定義し、postfix を restart したところ動作しました。

メールサーバもちゃんとできたので、linux実験機に Sylpheed を導入。
私の場合は

# apt-get install sylpheed

でインストールしてしまいましたが。

webmaster@hogehoge.com とかhogemaster@hogehoge.com なメルアドを作るにはuseradd しなきゃならないのですが、設定で useradd しなくても作れるようなので来週やってみます。

投稿者 Kuro : 09:10 PM | コメント (0) | トラックバック

July 04, 2004

Postfixでサーバからメールを受信できない

postfix をインストールしてメールサーバの構築をしていたのですが、外側へメール送信はできるのです。
でも、受信ができない。サーバ側の log をみるとちゃんと受け取ってはいるものの、Windowsからメーラーで送受信を行ってもメールを送ってくれません。
とりあえず /var/log/maillog を開示してみる。

Jul 4 21:01:24 shrike postfix/nqmgr[10698]: 5D7A2AB4058: to=<****@****.jp>, relay=none, delay=7085, status=deferred (unknown mail transport error)
Jul 4 21:01:24 shrike postfix/nqmgr[10698]: warning: premature end-of-input from private/local socket while reading input attribute name
Jul 4 21:01:24 shrike postfix/nqmgr[10698]: warning: private/local socket: malformed response
Jul 4 21:01:24 shrike postfix/nqmgr[10698]: warning: transport local failure -- see a previous warning/fatal/panic logfile record for the problem description

Shrike というのはサーバのホスト名です。
Google検索をしてみるものの、解決方法が書かれていないものばかり。

受信はされているが、サーバからクライアントへの配信が失敗しているらしい。
インターネットで多く使われている通信手段「メール」ですが、サーバを立てる側になるととても苦労するのですね。
初めて実感しました&挫折気味です:-<

投稿者 Kuro : 09:14 PM | コメント (0) | トラックバック

June 20, 2004

XFCE4を使いたい

実験機の Redhat 9 に XFCE4 をいれてみました。
とりあえず入れ方を memo。

XFCE のページにある Download のページを開き、"Binaries and contributed packages" と書かれたとこにあるlinux の distribution を選択します。
Redhat のリンク をクリックし "xFce4" と書かれた赤く反転表示されたとこにあるのが最新版なのでこのなかの xfce-4.0.5-rpm-rh9.tar.bz2 をダウンロードします( wget など)。

コンソールを立ち上げて、展開します。

# pwd
/root
# tar jxf xfce-4.0.5-rpm-rh9.tar.bz2

展開すると rpm 拡張子のファイルがいっぱいでてくるとおもうので、すべて rpm コマンドでインストールしましょう ( su - してからね)。

# cd xfce4
# pwd
/root/xfce4
# rpm -ivh *.rpm

これでインストールは完了です。

次に x を立ち上げた際に xfce4 が立ち上がるように設定します。

# vi /etc/X11/xinit/Xclients

vi が起動した状態で/(スラッシュ)を押して検索ができる状態にし、PREFERREDセクションを検索してください。

PREFERRED=gnome-session

という記述があるとおもうので、ここを一応コメントアウトして

PREFERRED=startxfce4

を記述してください(前もってバックアップしたほうが安全)。
これでログインし直すことで xfce4 が起動します。

投稿者 Kuro : 09:01 PM | コメント (0) | トラックバック

June 17, 2004

X

Linux 使い、もとい UNIX 使いの方は x window system は何を使っていらっしゃいますか。

いきなり問いかけてみましたが、私の実験機には Redhat9 + Gnome が入っているのですが面白みがかけているのでヨサゲなデスクトップ環境を探してます。
でもその実験機があまりパワーが無く、ビデオチップもマザーカードについてるものですし(しかも容量4M)、HDDも6.4GBですし、メモリーも512MBなわけで
美麗なグラフィックは期待しないほうがいいかもしれないですかね。

日本のLinux情報のリンク集で探してみる。

XFCE
スクリーンショット
カックイイ。

QVWM
スクリーンショット
WindowsライクなGUI。そこまでして Windows にしたくない。

FVWM
スクリーンショット
このスクリーンショット。いまどきのMacライクでヨサゲ。
下に並んでいるのはデスクトップ自体がサムネイル表示なのかな。いろいろイジってありそうじゃ。

投稿者 Kuro : 09:41 PM | コメント (2) | トラックバック

June 13, 2004

自宅サーバ、HDD故障

今日午前4時半ごろに、自宅サーバの HDD が故障してしまいました。
今日は1日かけて、HDD 交換やら OS の再インストールやらやっていました。

故障した HDD は MAXTOR の30GB。型番がわからないのでキャッシュなどの容量は不明。

故障が発生し、朝起きてから自宅サーバのWebを確認しようとするも、ページが見つかりませんが表示されました。
ssh で接続して httpd を restart してみると

[root@shrike root]# service httpd restart
httpdを停止中: [失敗]
httpdを起動中: Syntax error on line 6 of /etc/httpd/conf.d/php.conf:
Cannot load /etc/httpd/modules/libphp4.so into server: libttf.so.2: cannot open shared object
file: Input/output error

とこんなエラーメッセージが。/etc/httpd/modules/libphp4.so が読み込めませんと怒っています。

しょうがないので uptime 09:12:02 up 93 days, 20:29, 1 user, load average: 5.03, 4.80, 4.6 だったサーバ機を shutdown -r now 。
すると、起動後の dmesg にエラーがずらずら。
どうやら linux の file system である ext3 に問題があるようで、 x 自体起動できなくなりました。
mitsuki 先生に HDD 交換しましょうと言われたので早速交換することに。

買ってきたのは、seagateST3120026A(120GB/u100/7200rpm/8MBcache/流体軸受)。
IBM を今まで購入してきましたけど、IBMって微妙に音が気になります。なので静穏で好評という seagete をチョイス。

壊れた HDD は取り外し、新 HDD を取り付けて redhat 9 のインストール。
サーバなので X 使わないということでインストールしないことにした。なのでグラフィカルなものはすべて削除。
インストールがおわったら、apt をインストールして、kernel やら package のアップデート。古い kernel ももちろん削除。
その後は iptables / httpd / samba の設定を終わらせました。

で、さっそく壊れた HDD を接続して mount -t ext3 /dev/hdb3 /mnt/drive 。
/home/の中とか、/etc とか /var/named とかを持ってくる。他はいらないので放置。
コピーが終わったころ、さっきの error message がでてきた。まずい!!影響を受けないうちに shutdown -h now 。

これで何とか復旧しました。

この後は ntpd とか postfix を設定します。また来週にがんばることを誓いおやすみなさい。

この故障により、くろみかんのデータが取り出せず復旧できないことが判明。
お気に入りの絵描きさんたちのWebサイトリストも道連れに。
また excel つかってリストつくらないとならないという・・・。

でももうなつみかんはわかったのでインストールはのちのちに。

投稿者 Kuro : 09:19 PM | コメント (0) | トラックバック

May 27, 2004

FreeBSD 4.10-RELEASE

スラッシュドットの記事によると、FreeBSD 4.10-RELEASE が正式アナウンスされたようです。

1回 FreeBSD をCDに焼いてから setup 画面は表示しましたが、インストール方法などがわからずそのまま・・・終了しました(汗)。
まだLinuxに慣れていない私が FreeBSD に手を伸ばすなんて10年早いんでしょうか、そうですか。
Redhat で Mail Server をまだ構築できることもできない Kuro とかいう奴はココに存在しています|'-')ノ

投稿者 Kuro : 09:18 PM | コメント (0) | トラックバック

April 19, 2004

CVSって何?

Linuxを使い始めて、Linux関連のWebサイトを巡回しているとよく見かけるWordがあります。
それが「CVS」です。

「あれかー、コンマ区切りのテキストファイルのことだな!」
「そりゃ、csvだろー!」
「シーン…」
イヤホント、そう思ってましたよ(爆)。
調べてみたらわかりましたわかりました。
プログラムの開発に利用するバージョン管理システム「Current Version System」のことでした。
ある1つのファイルを複数の人間が編集したり、保存したり、消したりすると
矛盾が発生していないか、変更箇所はどこか、削除したのはどこかなんてことが分からなくなってしまいます。
そこをこのCVSを利用すると、どこが変わったか?削除した場所はどこか?矛盾箇所はどこか?一瞬で分かります(実際やってないので分からないけど)。
削除した箇所は、復元もできるそうです。

こんな便利なものが世の中にあったなんて・・・時代遅れですか私は。そうですかそうですか。

また疑問が1つ消えて良かった良かった。

HotWired:CVSってなに?
@IT:ダウンロードページでみかけるCVSとは

投稿者 Kuro : 09:04 PM | コメント (0) | トラックバック

April 13, 2004

LinuxでFirebird

TsukihitoさんのKonpeki Blog紹介されていた記事をみながら、実験機にインストールしてみた。
なんとかうごいたー。感謝感謝。

関係ないんですけど、Linux系?のアプリケーションて、オープンソースはいいんだがインストール方法やアップデート方法やアンインストール方法がかかれていないんですよね。
rpmでのアップデートなら

# rpm -Uvh hoge-x.x.x-x.i386.rpm

rpmでのアンインストールなら

# rpm -e hoge-.x.x.x-x.i386.rpm

です。
でも他のパッケージが使用していて消せないときエラーがでるので、強制的に消すオプションがあります。

# rpm -nodeps hoge-.x.x.x-x.i386.rpm

# 強制的に消した場合、依存関係があるプログラムが動かなくなります。

@IT:RPMパッケージをインストール/アンインストールするには

投稿者 Kuro : 09:15 PM | コメント (0) | トラックバック

April 07, 2004

Linux Kernel 2.6.5 release

おもな変更は
・ALSAドライバのアップデート
・ACPIまわりの修正
・FreeBSD 5.xのファイルシステムUFS2をリードオンリーでサポート
・仮想記憶に関する修正
SlashdotJapan

「私のLinux機のkernelが分からないんですけどー?」
そんな貴方は、ktermでもsshでもいいのでコンソール画面を出してuname -aをタイプしましょう。

[hige@localhost hige]$ uname -a
Linux 2.4.20-30.9 #1 Wed Feb 4 20:44:26 EST 2004 i686 i686 i386 GNU/Linux

こんな感じでお返事してくれるはずです。

うちのは2.4.20なんだなぁ。
なんで、2.4.xと2.6.xがあるんだろう。
2.4.xの人は2.6.xにしたほうがいいのかな。記事にRedhat Linux 9をkernel 2.6にアップグレードする手順が掲載されていたので気になった。

ちょっとカンタンそうだ。
実験機でやってみよう。

投稿者 Kuro : 09:58 PM | コメント (0) | トラックバック

January 24, 2004

dicedが「OffLineモードになりました」と吐く

DiCEd Version 0.19をつかっているんですが、昨日からIPが変化したときに
自動的に更新させるようにしてあるのに、サーバログに

+ 1/24 13:19 にKuroDNSが実行されました
OffLineモードになりました

と残り、私のIPアドレスが0.0.0.0に設定されてしまいます。

もう一度設定を確認してある設定に疑問が。

詳細オプションを設定します
-------------------------------------------------
[ オフライン ]
(0)No (1)Yes
番号>0

実際の意味は
「詳細オプションを設定します 以下の項目をチェックしてください
DNS機能を使用できるようにしますか?」
→これから使うんだから「0」

だったのを、勝手に脳内変換(Pentium MMX 33MHzぐらいでWindows3.1運用)して
「これから詳細オプションを表示しますか?」
(これから詳細なオプション画面をだすか否か聞いてるのかと思っていたらしい)
→表示させるから「1」にしてしまった

だからオフラインになってしまったんだなぁ。

ダメ人間万歳な2連休1日目でした。

投稿者 Kuro : 01:34 PM | コメント (0) | トラックバック

December 31, 2003

パスワード期限を変更する

何ヶ月も使わないユーザーがあり、今になって使おうとコンソールからsu - usernameでログインしようとすると以下のエラーが出ることがあります。

$ su - [username]
Password:
Your account has expired; please contact your system administrator

訳すと、「あなたのアカウントの期限が切れました。システム管理者(root権限を所持した管理者)と連絡してください。」

ネットワークが社内であったり学内であれば、システム管理者が必ずいるはずなので連絡をとれば大丈夫でしょう。
でも実際管理しているのが自分であれば、自分でなんとかしなければなりません。

アカウントの期限がきれているので、アカウントの期限の延長をしなければなりません。
アカウントの現在の時点での期限をみるには

$ su -
# chage -l [usrname]

です。usernameには期限の知りたいユーザーアカウントを入力します。
すると

# chage -l [username]
最小: [パスワードを変更するまでの最低日数]
最大: [パスワードが有効な期間の最大日数]
警告: [パスワードの有効期限の何日前に警告を出すか]
無効: [パスワードの使用期限が切れてからアカウントが無効になるまでの日数]
最近の変更: [最後にパスワードを更新した日付]
パスワード期限: [パスワードの期限の日付]
パスワード無効: [パスワードが”無効になる日付]
アカウント期限切れ: [アカウント期限が切れた日付]

アカウントの期限切れ、もしくはパスワード期限のどちらかが日付が過ぎていてもログインできなくなります。

有効期限を延長する場合は、

# chage -E 2004/06/01 [username]

です。日付の指定はYYYY/MM/DD、若しくはあなたの地域でもっとよく用いられているもので指定できます。

# 以前、shoutcastでネットラジオで使う shoutcast というユーザーを今日つかおうとしたら
# おこられちゃったのでメモ。

投稿者 Kuro : 11:05 AM | コメント (0) | トラックバック

November 30, 2003

Linuxの内蔵時刻を自動的に正確な時刻に修正させるには

Linuxでサーバやdaemonを稼動してくると重要なのは時間でしょう。
Redhat9の場合は設定をしなければ、自動修正は行ってくれません。

そのためには、ntpdというサービスを使います。
入っているかどうかを確認したいときは下記コマンドをrootでtypeします。

[root@localhost /root]# rpm -qa |grep ntpd*
ntp-4.1.2-0.rc1.2

こんな感じででてくればすでにインストールされています。

次に、/etc/ntp.confをviで開きます。

# vi /etc/ntp.conf

ntp.confに以下の記述を一番下のほうに追加します。

server 130.87.32.71
server 130.69.251.23
server 133.69.251.23
server 133.31.180.6
server 130.34.11.117
server 133.41.4.1
server 133.100.9.2

追加したら保存してviを終了させます(:wq)。

nptdサービスを起動します。

# /etc/rc.d/init.d/ntpd start

これでサービスが起動しましたので、時刻は自動的に修正されます。
でもこのままだと、マシンを再起動したとき自動でntpdが起動しないので起動するようにします。

# chkconfig --level 35 ntpd on
# chkconfig --list ntpd
ntpd 0:オフ 1:オフ 2:オフ 3:オン 4:オフ 5:オン 6:オフ

これでマシンは再起動してもntpdが自動起動します。
マシンが家庭内ネットワークであれば、LAN内のWindowsマシンもサーバマシンから同期をするとよいでしょう。
そうすることで、大元である大学のntpサーバの負担が少なくなります。

ntpdq -p
で同期がとれているか確認できます。 サーバ名の最初に「*」や「+」がついていれば同期されたという意味のようです。

投稿者 Kuro : 07:49 PM | コメント (0) | トラックバック

October 05, 2003

ネットラジオをLinuxでしよう

■はじめに
ネットラジオの基本的な操作は理解していることを前提にします。
・サーバもWindowsで用意するとき
winamp本体
SHOUTcastServer for Win32
SHOUTcast DSP Plug-In for Winamp 2.x
これだけあれば、Windowsをサーバとしてラジオ放送が可能です。

でも自宅の場合、Linuxサーバでhttpが動作しているためWindowsマシンでラジオサーバを立ち上げても
port80の要求をLinuxのapache
port8000の要求をwindowsのshoutcast
とやるのが面倒と考えました(Windowsじゃないと嫌だなひとはドキュメント探せばいいけど)。

なので、いろいろサーバが稼動してるLinuxマシンにShoutcastをいれてShoutcastサーバも稼動してもらおうと思います。
ココではmp3を再生する端末はWindowsになっています。

■ダウンロードからインストール(RedhatLinux9で行っています)
shoutcastのWebサイトにて、
「SHOUTcast Linux server(glibc) v1.9.2」をみつけてダウンロードします。

$ pwd
/home/hoge/
$ wget http://www.shoutcast.com/downloads/sc1-9-2/shoutcast-1-9-2-linux-glibc6.tar.gz

次に、rootになってから、shoutcastを起動するためだけのユーザーとhomeディレクトリを作ります。

$ su -
# useradd shoutcast -d /usr/local/bin/shoutcast

ダウンロードしたtar.gzを展開します

# tar xzvf shoutcast-1-9-2-linux-glibc6.tar.gz

展開したディレクトリに入り、権限を起動用ユーザーshoutcastに変更。
shoutcastのhomeディレクトリ(ココでは/usr/local/bin/shoutcast)。

# cd shoutcast-1-9-2-linux-glibc6.tar.gz
# chown shoutcast:shoutast *
# mv * /usr/local/bin/shoutcast

これで一応インストール完了です。

■放送にむけての設定を行う
設定ファイルをちゃんと変更しないと、サーバをのっとられる場合がありますので
ちゃんと変更をしてください。
sc_serv.confが設定ファイルなので、viで編集しましょう。

# cd /usr/local/bin/shoutcast
# vi sc_serv.conf

書き換えておくべき項目(viを起動してから /Maxuser=などとうてば検索ができます)

MaxUser=32
ラジオサーバに接続できる最大ユーザー数
Password=changeme
mp3を再生するマシンを認証するためのパスワード
;AdminPassword=adminpass
先頭のセミコロンを消す
;BanFile=sc_serv.ban
接続を禁止にしたいユーザー名が定義されたファイル(セミコロンを削除)。
;RipFile=sc_serv.ban
優先的に接続させるユーザー名が定義されたファイル(セミコロンを削除)。

これでだいたいOKです。おわったらviに

:wq

と入力すれば「書き込みをして終了」できます。

■起動してみよう
# pwd
/usr/local/bin/shoutocast/
# ./sc_serv
以下のメッセージがでれば成功です。

** SHOUTcast Distributed Network Audio Server
** Copyright (C) 1998-2000 Nullsoft, Inc. All Rights Reserved.
** Use "sc_serv filename.ini" to specify an ini file.

■ネットラジオ運用時の起動方法

#su - shoutcast -c "/usr/local/bin/shoutcast/sc_serv $@" >/dev/null 2>&1 &

su - [起動させるユーザー名] -c"[起動させるコマンド(絶対パス) $@" >ログ出力先 2>&1 &

■SHOUTcastを停止させるには
はっきりかかれていないため、ProcessIDからkillします。

# ps -ax | grep sc_serv
10324 pts/1 S 0:00 /usr/local/bin/shoutcast/sc_serv
10141 pts/1 S 0:00 ps -ax
10421 pts/1 S 0:00 grep sc_serv

下のほうにある2つは、最初のコマンドでpsコマンドとgrepコマンドを行ったからです。
これ以外でsc_servの一番最初にかかれた数字をkillさせればいいわけです。
上記の例でkillするときは

# kill 10324

とタイプだけです。

このあともう一度
ps -ax |grep sc_serv
をして(psとgrep以外で)見つからなければ停止が成功しています。

■Windows側におけるMP3プレイヤー側の設定は?
下記のWebサイトが非常にわかりやすいです。
また、SHOUTcastServerもWindowsで行いたい方も見れば構築できます。

SHOUTcastとWinampDSPPlug-inを使ったMP3配信

参考ドキュメント:
SHOUTcastServerのインストール手順
SHOUTcastをWinampで聞く
ネットラジオを聞いてみる
Winamp(Win)/RealPlayer(Win)/WMP/IE6+WMP7/iTunes(Mac)/Winamp(Mac)
分散型ネットラジオのすすめ
ミラーネットラジオとは。

投稿者 Kuro : 02:13 PM | コメント (0) | トラックバック

October 03, 2003

DiCEdで動的IPアドレスでも自宅サーバ

自宅のプロバイダも動的IPアドレスのため、ルータの設定などをおこなうと回線が切断されもう1度接続するときに再取得します。
そのため、IPアドレスが変わるとDNSに登録したグローバルIPアドレスを変更しなければなりません。
でも、常にサーバ端末の前にいるわけにはいきませんのでこれをIPアドレスが変更したら自動でDNSのIPアドレスを変更するソフトを
導入することにしました。

※ここでの説明はieserver.netのDNSユーザー用です。
でもほかのDNSでもだいたいおんなじなのでそこは自分で補足してくださいね。

DiCEd Version 0.19 beta
これはWindowsでも有名なソフトウェアなのですが、これはそのLinux版。
これをLinuxに導入して「サーバなんだから、IPぐらい自分で勝手に変更しろ!」システムを構築します。
以下の作業はroot権限が必要です。

■ダウンロードとインストール
上記のサイトのDownloadからdiced0194.tar.gzをダウンロードします。
現在位置は

$ pwd
/home/hoge/
$ wget http://www.hi-ho.ne.jp/cgi-bin/user/yoshihiro_e/download.cgi?p=diced019

この方法だとうまくDLできないかもしれないです。その場合はX上のMozillaでダウンロードしてください。

ダウンロードできたら、とりあえず展開します。っと、その前にrootになっておきましょう。

$ su -
password:
# cd /home/hoge/
# tar xzvf ./diced0194.tar.gz

■いれたら環境設定
起動させて、環境設定をします。ちょっちょいのちょい。

# pwd
/home/hoge/diced/
# ./diced
=-=-=- DiCE DynamicDNS Client -=-=-=
Version 0.19 for Japanese
Copyright(c) 2001 sarad
:?

ハテナをいれるとどーいうコマンドがつかえるかみれます。

*** 起動オプション ***
diced [-s|-d|-h|-e] [-b] [-l]
-s 起動と同時に開始します
-d 起動と同時にバックグラウンドで開始します
-h コマンドオプションを表示します
-b イベント実行時にビープ音を鳴らします
-l ログを作成します
-e 指定のイベントを実行して終了します

*** コマンド一覧 ***
exit DiCEを終了します
start DiCEを開始します
startd DiCEをバックグラウンドで開始します
setup DiCEの環境設定を行います
list 登録済のイベント一覧を表示します
add イベントを追加します
ed[it] <番号> イベントを編集します
del <番号> イベントを削除します
en[able] <番号> イベントを有効にします
dis[able] <番号> イベントを無効にします
ev[ent] <番号> イベントの情報を表示します
ex[ec] <番号> イベントを今すぐ実行します
logcr ログをクリアします
:setup

環境設定をするのでsetupといれてエンター。

IPアドレスの検出方法を指定してください
(0) 自動検出
(1) ローカルのネットワークアダプタから検出
(2) 外部のスクリプトから検出
<現在:0>
(N)変更しない (P)戻る
>0

0(ゼロ)をいれて自動で検出するようにしましょう。

プライベートIPアドレスも検出対象ですか? (Y/N)
<現在:いいえ>
(P)戻る
>n

プライベートIPアドレスの変更を検出してもグローバルIPアドレスを検出してくれないの意味無いのでnです。

IPアドレスの検出をテストしますか? (Y/N)
(P)戻る
>y

1回、ちゃんと検出できるかチェック。
あっているかどうかは、確認くんでみてください。

IPアドレスの検出をテストしますか? (Y/N)
(P)戻る
>n

2回もチェックする必要はない。さっさと次だーn。

IPアドレスをチェックする間隔を指定してください(分)
設定可能範囲は5分以上です
<現在:>
(N)変更しない (P)戻る
>10

自分は10分間隔にしました。あまり負荷のかからないようにね。

DNSサーバーの負荷を軽減するために頻繁なDNS更新を防ぐ必要があります
前回の更新から一定時間DNS更新処理を行わないように保護時間を設定して
ください(分) 設定可能範囲は10分から1440分です
<現在:30>
(N)変更しない (P)戻る
>30

まぁこれも好みですが、30分ぐらいで。

設定を保存しますか? (Y/N)
(P)戻る
>y
設定を保存しました

保存しないと有効にならないのでyでしっかり保存。

これで、IPアドレスを更新するための準備は完了。
このつぎは、自動的にDDNSにログインしてIPを変更できるようにします。
まだDiCEdを終了せずに次にすすんでください。

■イベントの追加
IPが変更されたらDDNSにログインしてIPを変更する、という一連の動作をイベントにして登録しておきます。

:add
新しくイベントを追加します

イベントの追加 [add]を入力。

DynamicDNSサービス名を入力してください
"?"で対応しているサービスを一覧表示します
(P)戻る
>ieServer

?(ハテナ)を入れると、サービス一覧がでてきます(ここでは省略します)。
自分のつかっている(ここではieServer)を入力します。
Windowsでは大文字小文字を判断しませんが、Linuxでは大文字小文字を判断するので
まちがえずに入力しましょう。

<< ieServer <<
URL: http://www.ieserver.net/
*** 情報 ***
IPアドレスはサーバー側で自動検出します。
IPアドレスの指定はできません。
(入力しても無視されます)
=================================
ドメイン名を入力してください
"?"でドメイン一覧を表示します
(P)戻る
>dip.jp

自分で使用しているドメイン名が
hoge.myhome.cx
であれば、
myhome.cx
と入力します(ここではdip.jp)。

ホスト名を入力してください
(P)戻る
>hoge

hoge.myhome.cx
であれば、
hoge
を入力。

ログインユーザ名を入力してください
(P)戻る
>hoge

ieserverにログインするユーザー名を入力します。
ieserverであれば、ホスト名がユーザー名のはずです。

パスワードを入力してください
(P)戻る
>password

パスワードです。パスワードは*では表示されず、英数字で表示されます。

登録するIPアドレスを入力してください
空白にすると現在のIPアドレスを自動検出します
(P)戻る
>(空白)

自動検出するのでからっぽでエンター。

このイベントに題名を付けてください
(P)戻る
>hogedns

わかりやすい名前をつけておくといいでしょう。

このイベントを実行するスケジュールを設定します
-------------------------------------------------
実行する頻度を指定してください (番号入力)
(0)1回のみ (1)1日1回 (2)1週間に1回 (3)1ヵ月に1回
(4)その他の周期 (5)IPアドレス変化時 (6)起動時
(P)戻る
>5

IPアドレスが変化したら自動的に変更させたいので5。

IPアドレスがあまり変化しない環境の場合、更新せずに一定期間を過ぎると
アカウントを削除されてしまうことがあります
IPアドレスの変化が無い時に実行する間隔を指定してください
(0)7日毎 (1)14日毎 (2)21日毎 (3)28日毎
(4)35日毎 (5)56日毎 (6)84日毎
(P)戻る
>1

2週間ごとにぐらいでいいでしょう。お好みで。

詳細オプションを設定します
-------------------------------------------------
[ 更新モード ]
(0)ホスト更新 (1)グループ更新
番号>0

0でOK。1は詳細不明です。

このイベントを有効にしますか? (Y/N)
(イベントの有効/無効は"EN/DIS"コマンドで切替えられます)
>y

有効にしないと、IPが変わってもDNSにIPを送信してくれません。
yです。

イベントを保存しますか? (Y/N)
>y
イベント"hogedns"を保存しました
:exit

yで保存します。これでhogeというホストは、グローバルIPアドレスが変更されたら
自動的に更新がかかります。dicedでの設定は以上です。exitで終了させます。

さぁ、これであなたのサーバのIPは保証されました(何
でもー!
「サーバ端末を再起動させたときに自動的にdicedを起動させたい!」
という欲がわいてきますねー。
なのでこの際これも解消しましょう。

■dicedを自動で起動できるようにする
さてさて、今までdicedを起動させていたのはどこでしたっけ。
そうそう、/home/hoge/diced/ でしたね。
こんなとこで実行するのもあれですし、Windowsに例えるならばこれは
c:¥Documents and Settings¥hoge¥デスクトップ¥diced¥ で起動させてるようなもんです(何)。
なので、c:¥program files¥ の中みたいな、プログラムをおくようなとこに移動です。
/usr/local/bin/DiCEという場所に移動しましょう。

# pwd
/home/hoge/
# mv ./diced /usr/local/bin

mvコマンドでディレクトリを移動させます。

これでとりあえず移動は完了です。

では自動起動です。
apacheやsambaみたく
/etc/rc.d/init.d/diced start
で起動させましょう。

# vi /etc/rc.d/init.d/diced

CUIエディタのviでスクリプトを書きます(5.DiCEを自動的に起動するようにする参照)
Redhatしか動かないということです。

できたら、スクリプトに実行権限を与え、chkconfig コマンドで起動スクリプトを有効化します。

# chmod 755 /etc/rc.d/init.d/diced
# chkconfig --add diced

再起動したときなどはランレベルが345のときにDiCEDが自動で起動するはずです。

動作を確認したいときは

# nslookup hoge.myhome.cx

と打ち、自分のIPアドレスが表示されればOKです。

参考ドキュメント:
blackfaceさんのメモ
HYPERPROさんのメモ

投稿者 Kuro : 10:46 PM | コメント (0) | トラックバック

September 29, 2003

gkrellmをいれよう

■LinuxのX-Windowで動くカッコイイリソースモニターがある(トリビア風)
WindowsにあるようなリソースモニターがLinuxにもないものかと思ったことがあります。
探してみるとありました。GKRellM。
関連ドキュメント:ZDNet:X上で表示可能なリソースモニタがほしい〜GKrellM編〜
とりあえずRedhat9で行った操作を。

とりあえずGKrellMのオフィシャルサイトへ
RPM and tarball binary packagesのところの一番下にある「gkrellm-2.1.14-1.i386.rpm」をダウンロードします。
LinuxではwgetというWebからダウンロードするためのコマンドを使います。

$ pwd
/home/hoge/←自分の今いるところを確認。
$ wget http://web.wt.net/~billw/gkrellm/suse/gkrellm-2.1.14-1.i386.rpm

これでダウンロードできるとおもいますです。

終わったらインストールしましょう。これはroot権限が必要です。

$ su -
password:
# rpm -Uvh /home/hoge/gkrellm-2.1.14-1.i386.rpm
(ここはなんかいろいろバーとでますが省略ですだ)

おわったらexitでrootからhoge(ユーザー)に戻ります。

# exit

では起動してみましょう。

$ gkrellm &

最後に&(アンパサンド)をつけるとよいでしょう。

テーマなども数多く公開(フリー!)されているとおもうので自分でいろいろいれてみましょう。
テーマ:muhri.net
テーマはhome/hoge/.gkrellm2/themes/に展開します。
tar.gz形式で公開されているテーマは

$ tar xvzf ***********.tar.gz

で展開できますよー。

投稿者 Kuro : 09:57 PM | コメント (0) | トラックバック

September 28, 2003

Linuxのパスワードの原理

■LinuxにおいてXやTelnetでログインすると「Warning: your password will expire in 0 days」と表示されるのを停止させるには
Linuxではパスワードの管理はかなり厳しく(Windowsがしょぼいだけか)、パスワードを使用できる期限まで指定されています。
これらはuseraddコマンドで自分でお好みに設定ができます。
useraddで標準の数値は
# useradd -D
で見ることができます(root権限のみ)。
それぞれ定義されるオプションとコマンドの書き方は
「ユーザーが属するグループID名(GROUP)」
-g[グループID]
「useraddしたとき作成するホームディレクトリの場所はどこにするか(HOME)」
-b[デフォルトのhomeディレクトリ]
「パスワードが切れてから何日経過したらアカウントを永久に停止するか(INACTIVE)」
-f[日付]
「ユーザーアカウントが無効になるまで何日にするか(EXPIRE)」
-e[日付]
「どんなシェルをつかうか(SHELL)」
-s[シェルの場所]
これらを変更する際はroot権限が必要ですので
$ su -
をする必要があります。

□パスワードを永久的に利用したい
# useradd -D -e
-eを空っぽにすれば永久的使用できます。

□アカウント停止をさせずにパスワードも永久的に利用したい
# useradd -D -e -f0
上記同様。-f0にすることで、ロックされずにパスワードが切れてもアカウントは停止にならない。

関連ドキュメント:Linux Shadow Password HOWTO

投稿者 Kuro : 12:10 PM | コメント (0) | トラックバック

September 27, 2003

Apacheを編集しよう

■Apacheをいろいろ改造しよう
なんかいろいろやってみました。
Apacheの働きぶりをリアルタイムに確認したい
ApacheっていってもWindowsみたくGUIでお知らせしてくれるわけではありません。
LinuxとかUNIXではCUIのため例え稼動しててもなんの返事もしてくれません。
それをWeb上に目に見える形で表示してくれます。
「そんなことしたらWebに来た人にみられちゃうじゃん!」
という思う人もいるでしょうがそこはApache。
見れるマシンのIPアドレスを指定しておけば万事OKです。
allow fromをローカルなIPアドレスにしておけばグローバルIPアドレスではみることはできません。

Apacheのサーバー情報を隠したい
デフォルトのApacheでは、Forbiddenなファイルにアクセスすると
20030927-apache1.gif
のような表示がされる。これは別にどうってことはないかもしれない。
が、セキュリティー面で考えるとこれはあまりよい物ではない。
もしもだが侵入者がいたらOS名からアタック方法を調べられてしまうかもしれない。
そんなことを防ぐためにぜひとも行いたいTipsである。
Webどおりおこなうと下記のような表示に変わる。
20030927-apache2.gif
また、telnetによるechoなどもOS名がなくなりセキュアなサーバの構築ができるはず。

投稿者 Kuro : 10:55 PM | コメント (0) | トラックバック