BlogもどきのWeblog

備忘録と日々の呟きとメモとCGIの実験場とされる何か。
プロフィール

GLANSHE
絵描き担当らしい

Total: 39427
Today: 38
Yesterday: 81
最新の記事

コンテンツ

最新のコメント

最新のトラックバック

カテゴリー

リンク

ニコ動MyListLink

aptitude
とりあえず起動する度に調べたり聞いたりするのが嫌になったので書いておく。

・aptitudeとは
Debianのパッケージ関連のコマンド

"/"で検索

ソフトを選択して"+"でインストール準備

"g"でインストール開始


time stamp:2009/03/17 22:02:56
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

ezmlmのインストールメモ
メーリングリストを作る為にezmlmを入れる。
qmail/ezmlm (wiki)を見ながらやりました。

■必要なもの
・ezmlm-0.53.tar.gz
・ezmlm-idx-0.40.tar.gz

解凍して、ezmlm-idx-0.40の中身をezmlm-0.53に全部入れる。

■パッチ
$ patch < idx.patch

glibcのバージョンが2.3.1以降の場合に出るerrnoエラーをなんとかする
$ vi error.h
extern int errno → #include <errno.h>

■コンパイルとインストール
$ make
# make man

自動応答メッセージ等を日本語にする
# cp ezmlmrc.jp ezmlmrc

インストール
# make setup

メーリングリスト設定格納用のディレクトリの作成
ezmlmは任意
# mkdir /var/ezmlm

■メーリングリスト作成コマンド
"test@example.jp"がメーリングリスト用のメールアドレスになる。
"test"と"example.jp"を適宜変更。
# /usr/local/bin/ezmlm/ezmlm-make -fgPu /var/ezmlm/test /var/qmail/alias/.qmail-test test example.jp

■メーリングリストへの追加コマンド
# /usr/local/bin/ezmlm/ezmlm-sub /var/ezmlm/test user4@example.jp

その他は最初のwikiで調べた方がいいと思うです。

参考文献
qmail でメーリングリストを利用するには?
ezmlm-0.53-idx-0.30のinstall


time stamp:2008/05/15 22:56:38
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

qmail + qmail-vidaのインストールメモ
仮想メールアドレスを使う事になって、今までのやり方では出来ない事が発覚したらしいのでqmail-vidaを入れる事に。ついでにCRAM-MD5にも対応。

■qmail-vidaの特徴
・checkpasswordの認証方式の追加(CRAM-MD5,APOP対応)
・checkpasswordのSMTP認証対応
・qmail-smtpupプログラムの追加
・仮想ユーザ対応
・バーチャルドメイン対応
・パスワードデータベースは CDB を利用するため、ユーザ数が多くても高速
・D.J.Bernstein氏のライブラリを積極的に利用

■必要なもの
・qmail (or netqmail)
・qmail-vida
・checkpassword
・ucspi-tcp

■Makefileを修正
qmail, checkpassword, ucspi-tcpのソースの位置を修正する。
netqmailを使う時は

${PATCH} -p1 < $${here}/patch/qmail.patch

${PATCH} -p1 -F 3 < $${here}/patch/qmail.patch

に変更。

■qmail-vidaでqmailとcheckpasswordを拡張
qmail-vidaを解凍すると patch/ 以下に拡張用のパッチが入ってるのでそれをあてる。
$ make patch
$ make copy

■他のパッチを手動であてる
・qmail-date-localtime.patch

glibcのバージョンが2.3.1以降の場合は次のパッチもあてる。
・qmail-1.03.errno.patch
・qmail-1.03.qmail_local.patch

・checkpassword-0.90.errno.patch

・ucspi-tcp-0.88.errno.patch
・ucspi-tcp-0.88.a_record.patch
・ucspi-tcp-0.88.nobase.patch

■コンパイルとインストール
$ cd ../qmail-1.03/
$ make
# make setup check
# ./config-fast hogehoge.com

$ cd ../checkpassword-0.90/
$ make
# make setup check

$ cd ../ucspi-tcp-0.88/
$ make
# make setup check

$ cd ../qmail-vida/src/vida/
*errnoエラーをなんとかする
$ vi error.h
4行目 extern int errno → #include
$ make
# make setup check

■POPを平文で通すcdbを作る
# /var/qmail/bin/vida-pwdbinit
# vi /usr/local/etc/pop3.rul
# cat /usr/local/etc/pop3.rul
:allow,ALLOWPLAIN="",DOMAINOWNER=""
# tcprules /usr/local/etc/pop3.cdb /usr/local/etc/pop3.tmp < /usr/local/etc/pop3.rul

■起動スクリプト
#!/bin/sh
PATH=/var/qmail/bin:/usr/local/bin:/bin:/usr/bin

[ -f /var/qmail/rc ] || exit 0

case "$1" in
start)
# Start daemons.
echo "Starting qmail:"
csh -cf '/var/qmail/rc &'
tcpserver -v -u `id -u qmaild` -g `id -g qmaild` -x /var/qmail/etc/tcp.smtp.cdb \
0 smtp /var/qmail/bin/qmail-smtpd 2>&1 \
| /var/qmail/bin/splogger smtpd 3 &

exec env - DOMAINOWNER="pop" \
tcpserver -vHR -l hogehoge.com -x /usr/local/etc/pop3.cdb \
-- 0 587 /usr/bin/fixcrio /var/qmail/bin/qmail-smtpup hogehoge.com \
/var/qmail/bin/checkpassword /var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger smtpd-sub 3 &

exec env - DOMAINOWNER="pop" \
tcpserver -vHR -l hogehoge.com -x /usr/local/etc/pop3.cdb \
0 110 /var/qmail/bin/qmail-popup hogehoge.com /var/qmail/bin/checkpassword \
/var/qmail/bin/qmail-pop3d Maildir 2>&1 \
| /var/qmail/bin/splogger pop3d &

touch /var/lock/qmail
;;
stop)
# Stop daemons.
echo "Shutting down qmail:"
PID=`/bin/ps -aefw | grep qmail | awk '{print $2}'`
if [ ! -z "$PID" ] ; then
/bin/kill ${PID} 1> /dev/null 2>&1
fi
rm -f /var/lock/qmail
;;

*)
echo "Usage: qmail {start|stop}"
exit 1
esac

exit 0

参考文献
Stray Penguin -Linux Memo-
自宅サーバー構築メモ
qmail-vida 解説文書など
qmail-vida の インストール


time stamp:2008/05/15 18:36:32
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

qmailのインストールメモ
Cyberam Documents Project... - qmail
を参考にしながらdebianにqmailをインストールした時の個人用メモ。
他の環境ではうまくいかないかもしれません。

■あてたパッチ
・qmail-date-localtime.patch
・qmail-103.patch
・qmail-smtpd-relay-reject
・qmail-1.03.qmail_local.patch
・qmail-1.03.errno.patch
・qmail-qmail-popup-auth.patch (pop3とapopを両方許可)
・qmail-smtpd-auth-0.31.tar.gz (auth.patch)

smtp-authのみ許可するパッチ
・qmail-smtpd-auth-0.30-iwm.patch.txt

*パッチのあて方
$ patch -s -p1 <./qmail-xxxx.patch
qmail-smtpd-relay-rejectは
missing header for unified diff at line 3 of patch
とか言われるけど
patching file qmail-smtpd.c
が出てればあたってる模様。
解凍して最初にオプションなしでパッチあてたら出来たっぽい。
auth.patchはqmail-smtpd-auth-0.31内のbase64.*をコピーしてからあてる。

■インストール
一番下以外のパッチを全部あてて
$ make
# make setup check

/var/qmail/control以下に設定ファイルを作成
# ./config-fast hogehoe.com

make cleanして、一番下のパッチをあてて再度make
# make clean
$ patch -s -p1 <./qmail-smtpd-auth-0.30-iwm.patch.txt
$ make

これでsmtp-authのみ許可するqmail-smtpが出来るのでそれを /var/qmail/bin/ に"qmail-smtp-auth"と名前を変えてコピー
# cp qmail-smtp /var/qmail/bin/qmail-smtp-auth

/var/qmail/boot/home をrcにリネームして /var/qmail/ にコピー
# cp /var/qmail/boot/home /var/qmail/rc

■smtp-authとpop3とapopの認証
checkpasswordとかその辺の認証用プログラムをインストール
(略)

■起動用スクリプト(まだ暫定)

echo "Starting qmail:"
csh -cf '/var/qmail/rc &'
tcpserver -v -u `id -u qmaild` -g `id -g qmaild` -x /var/qmail/etc/tcp.smtp.cdb \
  0 smtp /var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger smtpd 3 &

tcpserver -v -u `id -u qmaild` -g `id -g qmaild` -x /var/qmail/etc/tcp.smtp.cdb \
  0 587 /var/qmail/bin/qmail-smtpd-auth hogehoge.com \
  /bin/checkpassword /bin/true 2>&1 | /var/qmail/bin/splogger smtpd-sub 3 &

tcpserver -v 0 110 /var/qmail/bin/qmail-popup hogehoge.com /bin/selectcheckpw \
  /var/qmail/bin/qmail-pop3d Maildir 2>&1 \
  | /var/qmail/bin/splogger pop3d 3 &

touch /var/lock/qmail
;;

//まだ途中


time stamp:2008/05/14 13:41:48
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

qmailの起動スクリプト
qmail 1.03のデフォルトの起動スクリプトには、

tcpserver -v 0 110 /var/qmail/bin/qmail-popup hogehoge.com /bin/checkapoppw \

の"¥"の後ろにスペースが入っていて

/etc/init.d/qmail start

でqmailを起動しようとすると

tcpserver: status: 0/40

と言われてコンソールが止まる。
そういう訳で、スペースを取っ払うとちゃんと動く。


time stamp:2008/05/13 20:04:50
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

研究室のサーバ飛ばしたメモ
RAID5組んでた中の1台HDD壊れてて、新しいHDD買って来てリビルドしようとしたら操作ミスってもう一台HDD飛ばしてとても楽しい事になった。
決して確信犯ではありませn

と言う訳でサーバインストールです。
前のサーバがdebianだったらしいので今回もdebianにする事に。
適当にディスク突っ込んでインストール。
で、何故かXが入った。どっかでチェック見落としたんだろうか。
XなんてあってもしょうがないのでCtrl+Alt+F2だったかでコンソール画面に。

開発環境が整ってなかったのでこの辺見てgccとかインストール。
と言うかdebianはaptitudeでパッケージインストール出来るのか。

で、まずはネットに繋ごうとしてpppoeの事を調べてみる。
GUIで設定出来るらしい。コマンドはpppoeconf
大体はYes選択していけばよいらしい。
頑張って英語を読んで下さい。

んで/etc/ppp/peer/dsl-providerとかその上のchap-secretsとかpap-secretsとか見直してpon dsl-providerで繋がるらしい?
んでpoffで切断らしい。
セキュリティとかは全部firewall.shに書き込んで実行して終わり。
ここで外からの返りのping許可するの忘れてネット繋がらねー!と大変時間を浪費した。
それから、routeのdefault gatewayは0.0.0.0で繋がってるらしい。何で?
とりあえず一回繋がってから無駄に時間を浪費して設定しなおしをしていた気がする。

その後apache入れた。
ユーザごとに/~ユーザ名/で入れるようにするにはhttpd.conf(場所忘れ)の外部ファイルにどっか設定する場所があった。
詳細は覚えてない。
それで各自でpublic_htmlを作ってその中にファイル置けばHP公開出来る。

でも後で入れ直されたので今どうなってるのか謎(ぇー


その後メールサーバ突っ込む。
今回は気分でqmail
と言うか自分はqmailしかインストールした事ないけど。しかも前は動作までいかなかったけど!


この辺りを参考にしながらとりあえず解凍してmakeする。
errnoエラーが起こった。
検索したらパッチがあるらしいので落として来て適用して再びmake。
make通ったのでmake setup checkでインストール。
./configしたら/var/qmail/control/以下のファイルにとんでもない値が入って数時間無駄にした。
つまりは、./config-fastで任意のホスト入れた方がよさそう。

それでsmtpサーバとpopサーバの起動に一番てこずったらしい。
更にサブミッションポート用のsmtpサーバを立ち上げる為にビルドし直したりして多分中身がぐちゃぐちゃになってる悪寒。
とりあえず/usr/bin/と/var/qmai/bin/に同じ物体が入ってたりするのは仕様であります!(待つんだ
で、コピペと切り貼りを繰り返して最終的に残ったqmail起動用スクリプトが現時点でこれ
#!/bin/sh

PATH=/var/qmail/bin:/usr/local/bin:/bin:/usr/bin:$PATH

[ -f /var/qmail/rc ] || exit 0

envdir /etc/relay-ctrl /var/qmail/bin/relay-ctrl-chdir \
tcpserver -v -u `id -u qmaild` -g `id -g qmaild` -x \
/var/qmail/etc/tcp.smtp.cdb 0 smtp \
/var/qmail/bin/relay-ctrl-check \
/var/qmail/bin/qmail-smtpd 2>&1 | \
/var/qmail/bin/splogger smtpd 3 &

SUBMISSION="" exec tcpserver -H -R -l FQDN \
-v -x /var/vpopmail/etc/tcp.smtp.cdb -u `id -u qmaild` -g `id -g qmaild` \
0 587 /var/qmail/bin/qmail-smtpd-submission FQDN \
/var/vpopmail/bin/vchkpw /bin/true 2>&1 | /var/qmail/bin/splogger smtpd-sub 3 &

| /var/qmail/bin/splogger smtpd 3 &

envdir /etc/relay-ctrl /var/qmail/bin/relay-ctrl-chdir \
tcpserver -v 0 pop3 \
/var/qmail/bin/qmail-popup FQDN \
/bin/checkpassword \
/var/qmail/bin/relay-ctrl-allow \
/var/qmail/bin/qmail-pop3d Maildir 2>&1 | \
/var/qmail/bin/splogger pop3d 3 &

/var/qmail/rc

exit 0

意味わかる人が見れば凄まじく汚いソースなんだろうなぁ。

とりあえず現時点でメールサーバ動いてます。但し、ホントに正しく動いてるかどうかは保障出来ないので出来れば確認して欲しいかなぁ to: ohさん
徹夜で疲れて来て寝たいのでとりあえず参考文献を書き連ねてやめる事にする…
セキュリティ上ありえない値とか書いてあるかもしれないけどもう知らない寝るキャー
後で色々修正するかも

参考文献
POP/IMAPサーバの構築と不正中継対策
qmail-1.03をインストールした時のメモ
qmail 構築の為の覚書
qmail 構築の為の覚書2
debian流 qmailのインストール
Submission port を作る方法
qmail-smtpd-authパッチ

wiki
submission smtp-auth


time stamp:2008/05/01 08:28:57
トラックバック(0)|コメント(4)
コメントを書く
この記事のトラックバックURL:

デフォルトゲートウェイの設定
前々回書いたデフォルトゲートウェイの設定方法(routeコマンド)はネットワークを再起動すると元に戻ってしまう事が発覚した。

と言う訳で再起動しても元に戻らない設定をしなければならない。

で、この辺のサイトとか見ながら適当にネットワーク関連のファイルを弄ってみた訳ですが。

何か
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
のどっちかに

GATEWAY="一つ上にあるPCのIPアドレス"

と書けばいいと書いてあるので書いてみた。
とりあえずnetworkに書いてネットワークを再起動してrouteコマンドで状況を確認してみたんだけど、何故かデフォルトゲートウェイの設定が出来ていない。
おかしいなぁとか思いつつも、まぁもう片方の方も試してみようという事でifcfg-eth0に書いてみる。
routeコマンドで確認してみると

…何故二つも出てるですか?orz

↓状況
ernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.50.0 * 255.255.255.0 U 0 0 0 eth0
192.168.50.0 * 255.255.255.0 U 0 0 0 eth1
loopback * 255.0.0.0 U 0 0 0 lo
default 1.50.168.192.in 0.0.0.0 UG 1 0 0 eth0
default 1.50.168.192.in 0.0.0.0 UG 1 0 0 eth0

とりあえずyahoo.co.jpにping打ってみる。
繋がらないorz

…あ、LAN繋げる場所間違ってるし。eth1に挿してた…

気を取り直して再びping
で、ちゃんと繋がった。
まぁ一応これでいいかなぁとか思いつつこの記事を書き始めて、ふと思い立ってnetworkとifcfg-eth0の両方にGATEWAYの項目を書いてみる。
で、routeで確認すると

ernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.50.0 * 255.255.255.0 U 0 0 0 eth0
192.168.50.0 * 255.255.255.0 U 0 0 0 eth1
loopback * 255.0.0.0 U 0 0 0 lo
default 1.50.168.192.in 0.0.0.0 UG 1 0 0 eth0

…何でちゃんと出るんだorz
これ設定が謎だよぉ…

まぁいいけどさ……

次回はDHCPサーバを作ろうと思う。
でも同一ネットワーク内にDHCPサーバが2台あっても大丈夫なのだろうか?
とりあえずその辺のリンクは
この辺とかこの辺とかこの辺とかこの辺


time stamp:2007/04/22 17:12:16
トラックバック(0)|コメント(2)
コメントを書く
この記事のトラックバックURL:

<< old  new >>
何かしら