
このサイトも開設12周年が経ちました。
思いつきでLinuxの管理をしてみたり、オンラインゲームにはまってみたり、レザークラフトを初めて見たりと、一貫性が無くてすみませんw
もはや当時のコンテンツはほとんど残ってないですが、これからも思いつきでいろいろやっていきたいので、お付き合いのほどよろしくですm(_"_)m
|
|||||||||||
|
ちなみにブログを書いてなかった5日間程度(中2日間は仕事が休み)でできあがるので、お手軽ですね。
さて、以下制作フェーズです。
そんなこんなで完成です。
実際に作って失敗したなーってところは以下。
工具がそろって慣れれば、革1枚1000円程度なので、実際買うよりかなり安く作れます。2つ3つ作ればもっと経済効果が上がりますね(^-^; 家のスキャナの動作が遅いので、そろそろ新しいのを買おうかなぁ…と思ってたんですが、スキャナって案外高いんですよね。あと性能がいいと場所もかさばる。 そこで複合プリンター(プリンター+スキャナ+コピー機+FAX)を探がしたら、実はスキャナと値段がほとんど変わらないwってことで購入しました。 一応、以下の条件に見合った機器です。
後から知ったのでは、スキャンの時に自動で紙を取り込めるのが最近あったこと。複数枚の取り込みもこれで楽ですね。 あとは想定はしていたんですが、想定以上に筐体がでかい! ちょっと棚を考え直さないと… http://www.nicovideo.jp/watch/sm3542279 今回、動画系カテゴリーでも動画は無いです。 SEASON11,リサとレベッカの放課後&THBCナターリアの部屋(GUSHIケンバンド) 2,ロバート先生は上の空&THBC MORI MORI COOKING 3,ポールは正直者&THBC 突撃!レコードホルダーズ(ジェットコースター) 4,ローラの誘惑&THBC MORI MORI COOKING 5,ケヴィンとポールの大作戦&Trend Hunting 6,ジャッキーとサイモン&THBCナターリアの部屋(ジェイク船越) 7,僕のユニフォーム&THBC 突撃!レコードホルダーズ(ベトナムでもんじゃ焼き) 8,私のポイズン&THBC MORI MORI COOKING 9,ケヴィンとポールのイバラ道&Trend Hunting 10,家庭教師ミシェル&THBCナターリアの部屋(物まねロッキー) 11,ホームパーティー &THBC 突撃!レコードホルダーズ(ヒマラヤでシュウマイ) 12,レンジャーはんぱねぇ 13,ワンモアタイム情事 SEASON214,コーチの秘密特訓&THBC 突撃!レコードホルダーズ(ロシアで警察犬) 15,ボディービル部 &THBC MORI MORI COOKING 16,マネージャーの忘れ物 &Turkey’s Hill 警察24時(駐車違反) 17,ポールにカミナリ&世界の珍獣 18,ロバート先生とドライブ&Turkey’s Hill 警察24時(酔っぱらい) 19,ベティとレディースバンド&THBCナターリアの部屋(GUSHIケンオーケストラ) 20,レンジャーのゲリラ撮影&THBC MORI MORI COOKING 21,オレの爺ちゃん&Trend Hunting 22,ゾンビ島&MORI MORI EXERCISE 23,3匹のネコ&THBC 突撃!レコードホルダーズ(オーストラリアでバンジー) 24,レベッカの宿題&Turkey’s Hill 小学生作文コンクール 25,コーチの義母&Trend Hunting 26,愛しのチアリーダー&THBC フットボールダイジェスト あと、教頭先生の家族構成 妻マリア、長男リチャード、その友達のチャーリ、長女のエレナ(高二)、 4男ロジャー、フランチェスカ、マリオ、ファビオ、マルゲリータ、アレッサンドラ、ミケーレ、ディーノ、ロベルト&ピエトロ(双子)、アントニオ、パウロ、ダミアノ(塾で不在)、次男アルベルト(アルバイトで不在) ペット:犬2匹、モルモット12匹、ロバ一頭、七面鳥二羽。 これから生まれる子供は男ならジャンルイギ、女ならフランチェスカ 仕事帰りに行けそうな温泉(床屋含む)があればなぁ…と調べました。 最近ブログもあまり更新してませんが、DeltaWikiのセキュリティ周りをいじってます。せっかく作ったので、ダウンロード可能にして広く使ってもらおうかなぁ…って思いつつあるからです。 Delta WikiについてFSWikiを参考に作ったWikiクローンです。 バグ・未実装・実装中情報
ブログに載せたこと
–category_list -h,DeltaWiki– 基本機能
主なplugin
内部の話
FSWiki(*wiki)とは違うところ。
ページ生成速度だいたいの平均値から。単位は秒。純粋にサーバがページを作る時間で、転送速度は含まれていない。
このページについて自宅を建替えた時の苦労話。実際に建替えのときに役立つようにメモを掲載してます。 注意:この記事は建築に対して素人も同然の私が書いているので、それらに対する意見や考察は事実と異なることも十分あると思います。 業者選定(2001/04/16)手抜き工事とか怖い話が叫ばれている世の中ですし、業者によって特徴もさまざまなので選定した業者によって結果はまちまちです。もっとも慎重に選ば無ければならないところですね。 (1999/01)おうちの勉強いざ家を建替えようとはいえ、いったいどんな家があるのか?どんな特徴があるのか?どれがいいのかなど、まったくわからないので情報収集をしました。とりあえず住宅展示場へ行きました。まぁ巨大な商品なので説明が長い長い。一軒話を聞くのに2,3時間はかかります。とりあえず聞いてみた結果は以下のようなかんじ。 木造昔からある木の柱に木の壁。壁の中に断熱材とかは入ってるやつ。最近は柱を太くすることにより耐震性を強化しているらしいが、やはりギリギリ3階が建てられるって感じで、鉄骨ほど強度は無いらしいです。実は耐火性能もかなりイイらしい。最近の木造は優れてて阪神大震災にも耐えられる強度と耐火性はあるらしいが、やはり他と比べると劣る。まぁ、うちの木造はダメですなんていうところは無いですけどね。 気持ち的にいいのと、安いってのがいい。当然、ヒノキの柱とか使えば高いけど。 パネル工法・2×4壁を貼り付けつつ家を建てる。柱が無いのか?良くわからんが、この工法の業者はあたらなかったんで(親が聞きに行って私は友人に聞きました)、良く知りません。いずれにしろ構造的に心配なのでイヤ。 鉄骨・鉄筋コンクリート 鉄の柱に、コンクリートやALCパネルという、気泡の入ったようなコンクリートっぽい素材を壁にする工法。壁が木のヤツもあるらしい。 ユニット工法 昔からあるけど、家を四角いパーツに分けて組み立てていく。昔はダサダサな家しかなかったけど、最近はかなりイイデザインの家が多い。ユニットはほとんど工場で作られるため、とりあえず建て始めると形は1日でできてしまう。総工期も約2ヶ月と短い(他の工法は半年近くかかる)。柱はそこそこ頑丈だし(鉄骨ですけどエの字ではなくロの字)、1ユニットの4方の柱以外は自由に間取りを変えられる。ユニットは工場のラインで作られるため、最近話題の手抜き工事とかもされにくい。 結局、いろんなところを見たが、阪神大震災の後ともあって、耐火性、耐震性は比較の対象にならない(みんな重要視するポイントなのでメーカーも手を抜かない)。つまり、この段階で業者を決めるのは不可能、、、。 (1999/02頃)見積、見積とりあえず、業者を何社か抽出。A工務店(近所の大工)、R社(某重工業の100%子会社)、H社(鉄骨にパネルコンクリートの工法の会社)、SH社(ユニット工法)、M社(木造)。(社名が知りたければメールをいただければお教えしますよ)。~ A工務店(近所の大工) 最近、近所で建て替えが盛んなのだが、ご近所さんはほとんどがこの工務店を利用している。近所だけに手抜き工事なんてしたら、一気に信用を無くし倒産になりかねないので下手なことができない。そういうことを考えるとスゴくイイ(笑)。 R社(某重工業の100%子会社) 親父の知人の会社の人と紹介を受け、とりあえず聞いてみる。一度見積もりが出てきて、それ以来何の連絡も無し。どんな家を建ててるか見せに行かせてもくれない。 H社(鉄骨にALCパネルの工法の会社) 結構有名な業者の一つ。さすがに設計はイイ!(頼んだ業者で一番よかったです)。また、キッチンの位置、ドアのノブ、そして構造にいたるまで、生活上の人の行動ラインまで研究尽くされている。すばらしい。やはりこうでなくては。でも、業者は手抜き工事が怖いので気をつけなければと言うことで慎重に、、、。この業者ははっきり言って、家に関しては文句の付け所は無かった。ただ、「1-1,おうちの勉強」の鉄骨の工法の説明を見ていただくとわかるとおり、高い!他に比べ坪単価10万は高い。つまり、総工費2~3千万で押さえたいところなのに、他より約500百万高い。 M社(木造) 実は私は始めから木造は却下するつもりだった。確かに他の工法よりいろんな面で劣るが、実用、実害に絶えられない訳ではない。安いのも魅力的。 SH社(ユニット工法) 最終的にはここに決定したのだが、理由は単純。 そんなこんなでSH社に決定。 注意していただきたいのは、誰でもSH社がイイという訳ではない。土地が腐るほどあるのであればM社(木造)で低層の立派な家を建てればイイ。お金があるなら、H社の頑丈で住みやすい家でもイイ。ホントに金が無いなら、近所の工務店に頼めば、中間マージンが無いので3Fで2000万を切ることもできる。我が家の場合、金が少なく、土地も狭い、そのため3Fのそこそこのと言う観点からSH社に決まったのです(一人で建てるには割高ですが、今回は金融公庫の金利が低かったのと、親父と共同出資というのがあったのでお金の工面は何とかなりました)。 設計とお金の工面業者が決まり、いよいよ細かい設計に着手。最近は間取りや内装をかなり自由にできるので、思い通りの家ができるのはいいのだが、それまでが大変。また、金の無い我が家でどうやって金を工面するのか!? (1999/03)間取りとお金いやぁ。この月は忙しかった。出張で半月ぐらい各地に飛んでたんで。 そこで、幸運な事が起こった。国の施策で金融公庫の期限が延びた!期限は3月26日!ラッキ?。って喜んでる暇も無くとにかく設計図の書き直しの連続。多分10枚以上は書いただろう(でも仮の設計書)。 そんなこんなで3月中旬になんとか仮の図面が完成。とりあえず建築業者との契約を済まし(このときしっかり契約金を数百万取られる)、公庫への申し込みを依頼。公庫に図面を出しても却下されるときがあるんで、少し余裕の日数ををもったが、まぁ問題無く通ったらしい。~ その後、仮の設計図の間取りの打ち合わせを数回(これも設計図5枚以上書いてもらっただろう)し、完成!さぁ、次は内装だ。 (1999/04上旬)内装やっとこさ間取りが落ち着いてきたので、次は内装の打ち合わせ。内装はまた専門の人がいて、その人と打ち合わせる。床板の色と種類(これは少ない)と壁紙、天井。コンセントやTVアンテナの位置、蛍光灯の位置など木目細かく決める。とりあえず壁紙の種類が多い。洋間は天井と壁に同じ物を使えるんで、その膨大な壁紙カタログから選出。花柄とか、金色とか合ったけど、1発ギャグねらいで一生の買い物するわけにも行かないので落ち着いたものを選択。 実はこのへんで既に力尽きており、電気やスイッチの位置は業者にお任せモードになってました。実際建ててみるとやっぱしこの辺が気に入らないところになってしまいました。やっぱりドアを開けると同時に電気がつけられるように、ドアノブと電気のスイッチは近くにある方がいい。あと、その電気も無駄に多かったです。 まるちめでぃあはうす配線の問題は、結局業者が用意したシステムは使わないということで、配線のみしてもらうことにした。~
私の家は川沿いで、場所が周りより低く、TVの電波がほとんど来ない。しばらくは近所の人と共同出資でアンテナを立てていたが、高価なので有る時期よりこのケーブルテレビ(テレビだけ)を導入していた。で、今回建替えのついでにTELとプロバイダの契約をしてしまうことに決定した。~ ちなみに営業の人にこう言う配線とかの難しい話をしても、「どうっすかねぇ?」とか「多分**だと思います。」とか言われる。当然ながらこう言う話は設計士と直接話したほうが手っ取り早い。特にいろいろ経験をつんだ設計士なら、パソコンの話がわからなくても非常に話しやすい。 とうとう、5月の連休は借家へ引越し、そして解体です。 で、どんな家になったの?上図のような家です。左上が北です。また、左から1F,2F,3Fです。基本的に1Fが親、3Fが私、2Fがその共有スペースという半2世帯のようになっています。ちなみに私は未婚ですが、、、。1Fから解説しましょう。 1F 1Fは親のスペースです。親はまだまだ元気ですが、年をとって手足が不自由になっても大丈夫なように、考慮しています。居住空間である和室、お湯を沸かしたり、薬を飲んだり程度が可能なキッチン、そして風呂とトイレ。年をとると2Fに上がるのも大変だと思いますので、風呂とかも1Fに配置しました。ちなみに洗面に洗濯機を置く空間も有ります。 2F家族の共有部分、兼客間です。キッチンは対面式ですが、これはコミュニケーションが取れるように、またキッチンのごちゃごちゃしているところが外から見えないようにするための対処です。キッチンはカウンターに流しとコンロがあり、図で言う上側の壁には右の図(壁を正面から見た図です)のようにに大食器棚、食器棚兼机、冷蔵庫があます。また、床下収納もあります(2Fでも床下はOK)。ここにも洗濯機置き場がありますが、こちらがメインになっています。理由は簡単で、洗濯物干し(バルコニー)へ行くのに近いからです。和室は基本的に客間として利用します。 バルコニーは車庫の上を利用して広めに作ってあり、庭代わりとしても使えます(土地は狭いんで、庭なんてほとんど無い)。また、ユニット工法の家なので、将来大家族になったとしたら、このバルコニーにユニットを追加することにより部屋を増やすことができます。 3F部屋だけです。お金がもったいないのでトイレは付けませんでした。12畳の部屋は窓の配置などを工夫し、壁で仕切れば2部屋に改造できます。1F,2Fは収納が少ないので、3Fは収納を多く取りました。全体から言えばこれでも収納は少々少ないです(庭が無いので物置とか作れない)。 (1999/04下旬)借家とうとう旧家の解体の日が近づいたので、借家に引っ越すことになりました。ちょうどゴールデンウイークがあるのでそれにあわせました。その前に借家探しがあったんですが、うちの条件は下記のとおり。
結果、見つかりました。結局、敷金、礼金が皆高く、なかなか見つかりませんでしたが、ほとんど無きに等しい金額のが見つかりました。また、貸し倉庫は親の以前の職場でなんと無料。ラッキ?。旧家から歩いて5分ほどの距離で、ちゃんと風呂付き。残念ながら、犬はダメでしたので、近所の人にあずかってもらうことにしました。神経質なのでちょっと心配>犬。 まぁ、何はともあれ引越し完了。私が占領した4畳半の部屋も半分くらい荷物で埋まりました(笑)。 (1999/04下旬)金銭的トラブル!?先日、建築業者の営業が謝りに来ました。内容は金融公庫からの借り入れ可能額が予定より500万減ってしまったとのこと。何故かと言うと、この借り入れの限度額は家の建物の坪数によって決まるのですが、この坪数に車庫は含まれません。今回の建築業者はユニット方式で車庫も家の一部(1ユニット)の為、坪数に含まれてました。結局、業者では車庫が坪数に入ったが、公庫の見方では入らないという差異から出た問題でした。 お金のこといろいろ家の建て替えは金額が金額なので、いろいろ税金のことが難しい。その為、その類に詳しい人からいろいろ聞き勉強しました。 うちの家族構成は、両親と兄と私の4人構成。息子2人は共に未婚。兄は社宅住まいで出ていっている。そんなんで現状3人で住んでいる。親父は50歳中盤で定年まで後数年。 2点目は名義を分割し、親と息子で払う方法。負担が軽くなる上、将来名義をすべて息子にする際の相続税も軽くなる。問題は何割ずつ払うか?うちの場合、息子が2人なので誰が何%と考えると頭が痛くなる。 3点目。すべて息子にする。これは、親がどうであれ関係無いというメリットはあるが、払っていけるかという問題が起こる。払えなくなって、親が手助けをすると、当然贈与税がかかる。ちなみに、3000万円(実際は違うけど)とすると、20年ローンで月約13万円。ボーナスには40%まで割り当てが出来るのでフルに活用すると、ボーナス1回30万、月8万となる。若いうちからこれだけの借金は抱えきれない。 結局、うちは2番の分割名義にした。ちなみに私と親父とで1:1。税理士に相談したりしたのだが、何割ずつ分割するかはその人の支払能力で決めればいい。また、兄貴が払わないことにより将来的に問題(結婚して帰ってきたとして、長男だし、家族だから少なくてもいいだろうとかいうのとか)がおきないように、すべての支払いと約束事を書面で残せばOKとのこと。つまり、誰がいくら払った。家を出るとき、入るとき、親が死んだときの名義をどうするか。相続をどうするかなど。書面で残ってればそれに従えばいいだけなので、問題は起きない。あと、この位に分割すると、相続時の税はほとんどかからないらしい。 話は変わるが、家を立てる際、家本体以外に、インテリア、エクステリア、解体、地盤強化などの金額がかかる。家の本体はすぐに金額が出るが、その他の見積もりはなかなか出てこない。そうなると資金計画が立てづらいが、おおよそでいえばうちの場合、総額の5/6が家本体の価格になり、残り1/6がその他エクステリア等の金額になった。1/6ってけっこういい金額で、後々になってびっくりするので注意が必要。また、建築会社により手付金が違うが(うちは数百万取られた)、その他に諸経費(ローン委託等)が100万くらいかかる。これは、ローンに組み込むことが出来ない為、事前にとられる。つまり、事前にそのくらいの金を用意しておく必要がある。私の貯金もえらい削られた。トホホ。 建替え家の解体から、建築、引越しなどです。 (1999/05上旬)解体
解体は、建築業者にたのめば仲介してくれるが、高い。そんな訳で頼まないで探すことにしました。通常作業は1週間ほどかかりますが、最近の建て替えラッシュで忙しいらしく、一気に3日でぶっ壊してくれました。 結局、70万円だったのが、直接業者に頼んだところ40万円で済んだ。後になって解体関係の書類を自分で書かなきゃ行けないので多少面倒だが、そんなに難しくないので問題は無い。 (1999/05上旬~下旬)地鎮祭
ちょうど、このころ借家の近くでも家を建ててるところがありました。基礎を見てみるとうちに比べるとめちゃめちゃ貧弱。家の土台なので一番要チェックなのかもしれない。 ユニット組み立て開始!マイホーム建て替え記に前から書いてますが、我が家はユニット工法。家をユニットに分けてトラックで持ってきて組み立てるというものです。以下の図の通り、我が家は12ユニットに別れます(あ、3Fベランダのところ間違い。3F-4です^^)。 まぁ、これから1ヶ月半の間で内装、エクステリア、配線などを仕上げます。 どうやってユニットを組み立てるのか?
1F
1F ユニット2セカンドキッチン、納戸、廊下などがあるところ。写真にもちょっと見えるとおり、棚関係はまだ配置されてなく、中途半端な位置に入っています。 1F ユニット3 玄関と和室のあるところ。 1F ユニット4 車庫です。このユニットはその形状が故、フレームが一本ありません。その為多少歪みの恐れがあるらしく、歪み防止用のパーツが付いてました。これはあとではずされます。 2F2階です。 2F ユニット1 階段、トイレ、キッチン。 2F ユニット3ダイニングと和室の部分。ユニット4はベランダなので、ここに窓がある。 2F ユニット43F↑左から3階ユニット1~4 3F ユニット1階段と奥の洋間。遠いんで見づらいですね。写真が。 3F ユニット2私の部屋1/2^^。 3F ユニット3私の部屋2/2^^;。将来、部屋を2分割出来るように窓が二つついてる。今は1部屋なので謎な産物状態。 3F ユニット4 ユニットっていうか、ベランダ。奥行き75センチしかない。まぁ落下防止、布団干し、外から部屋丸見えを防ぐなどなど、その意味は濃い。 ユニット組み立て完了
完成!
この後もお金や税金、保険の話などなど大変でしたが、業者にお願いしたおかげでかなり楽に済みました(特に金融公庫の金利がこれから上がろうとぎりぎりのところで間に合ったので、業者にお願いしてたぶんの金額はペイできそう)。 内部ネタばかりですみません…
旧掲示板の移植とか、新掲示板の修正とか、まだまだやることが多いな… ってまぁ内部ネタばかりじゃつまらないので、最近萌えている動画シリーズの最新版を張っておきます。 http://www.nicovideo.jp/watch/sm3222861 管理者についてこのサイトは「デルタ」が管理しています。 デルタへの連絡は掲示板かメール等でお願いします。 本サイトの管理者と連絡手段メアドは「delta<at>d77.jp」(←SPAM防止の為、@を<at>と書いています)。 ※「delta0.net」のメアドは廃止しました。 デルタが何者かは「自己紹介」を見てください。 このサイトは?このサイトが1996年に誕生して以来、主に私のプライベートサイトとして成長し続けました。その後、ゲーム関連のネタを扱う「UGB GameZone」、サーバ/ネットワーク関連のネタを扱う「Network Labo」の三つに分かれましたが、XOOPSに対応すると同時に1つに統合化しました。 その後、XOOPSが使いづらいので、FreeStyleWikiというツールに移行して現在に至ります。 リンクについて基本的にリンクフリーです。出来るだけトップページにリンクしてください。 本サイトの著作物このサイト内での「デルタ」のハンドル名を管理者である私以外の方が使用することを禁止します。私を装ってどこかしらに書き込みされることも十分あり得るので、閲覧者も注意してください。 このサイトの文章の著作権は原則としてデルタが持っています。基本的にはそれらを転載することを強く禁止はしませんが、転載物をあたかも転載してないかのように掲載することは禁止します。なお、画像の転載は原則として禁止します。 投稿ルールこのサイトはインターネットを利用し、コミュニケーションを楽しむことを目的としています。その為、掲示板やブログページ、各コメントなどで以下のよな書き込みがあった場合は、状況に応じて警告/書き込みの削除/本サイトのアクセス拒否/アクセス元プロバイダなどに警告を発します。 ※いままで、書き込み削除以外はしたことないですけどね 。 内輪ネタの禁止内輪ネタで盛り上がることは禁止です。ちと解釈が難しいと思いますが、特定のコミュニティにおいて、そこの話題から外れたような内容で少人数しかわからないようなネタを書き込むことです。「会社のxxxはむかつくよー」とか。 当然、ゲーム掲示板でゲーム内のギルドの話をするのは問題ありません。 個人プライバシー情報の発信を禁止個人のプライバシ情報を発信することは禁止です。これはハンドル名で投稿している人の本名を明かしてしまうようなことも含まれます。また、個人のパスワードや認証関連のIDの掲示、非公開を前提としたサイトへのリンクも原則として禁止です。 本人を偽ることを禁止自分のハンドル名を頻繁に変更したり、自分を偽ることを禁止します。「通りすがり」「名無し」なども原則として禁止です。 また、他人のハンドル名を故意に利用しての投稿は強く禁止しています。 なお、偶然同名のハンドル名であった場合、区別をつけるため後から投稿した方が、区別をつけるための指標をハンドル名に付加してください。 例)デルタ@非管理者 投稿された物の著作権投稿された文字/画像は作者の著作物となります(当サイトに掲載された物も同様です)。ただし、当サイトに投稿されたものは、原則として著作者がデルタに対し、その文書等を自由に扱ってよいと認めたこととします(転載することはありませんが、コンテンツの構成上、レイアウトをなおしたり、データ変換(圧縮など)をすることがあります)。 転載物に関しても同様ですので、転載元の著作権に注意してください。 批判、差別、広告、違法な発言、誹謗中傷の禁止宗教的発言、政治的発言、人種差別的発言、広告は強く禁止しています。ただ、ゲームの中のネタ等であれば特に禁止はしていません(たとえばネットゲームのネタで「xxxShopオープン!」とかいうネタはOKです。。 個人または特定のキャラクター等に対する悪口は禁止です。特定企業にたいする批評はかまいませんが、根拠が見えない悪態は禁止です。 違法な記述は禁止です。他人の著作物を転載しないでください。URLの掲載がベストです。一応世界に公開されてますので、日本国内で許可されてても、海外で違法となるような書き込みがあった場合は削除対象になります(デルタがわかるかどうかが問題ですが、、、 。 その他あまりにも無意味な投稿が多く見られたり、デルタがBBSの内容に則さないと判断した場合は削除対象になります。 掲載された情報に対し、デルタは何の保証もしません。パスワードなどが明らかになり、他のサイトへのアクセスを許したとしても、デルタは保証しません(ただ、十分に注意はします)。 ポリシーに記載されている事項の対象にならなくとも、それを匂わせるような書き込みも禁止しています。その判断は管理者が行い、それに関する異議、異論は一切認めません。 その他、デルタの独断で削除等する場合もあります。 その他、注意事項本サイト全般のルールに関する注意事項です。 ポリシーの内容の改変今後、ここに記載されている内容は変更される場合があり、その内容は変更された時点で有効となります。ただし、デルタ以外の者が改変した場合は有効とはなりません。 管理者の権限本サイトの管理者はデルタです(一部、管理権限を委譲するサイトもあり、それに関しては明記します)。 本ポリシーに記載されている禁止事項等に関して、管理者の許可があればルールにそぐわないことを許可することがありますので、事前に問い合わせてください。 管理者が一度消去したデータはいかなる理由があろうとも基本的には復旧しません。 このサイトを管理しているツールについてWebサイトを作るには、htmlを書いてセコセコFTPでアップロードするのが当たり前でしたが、時代はCGI*による掲示板の時代、日記/記事システムのブログの時代、そして統合的にWebサイトを管理できるCMS*の時代へと移り変わってきました。 2002年頃まではCGIを使ってWebサイトを作ってましたが、さすがに歳か プログラミングが面倒になったと同時に、私の目指していたCMSがかなり進化してきたので、採用することにしました。 とりあえず、CMSとしてXOOPSを取り入れましたが、案外管理が面倒なので、FreeStyleWiki(以下、FSWiki)というツールを採用しました。いわゆるWiki*ですが、FSWikiはそれよりCMSに近い仕上がりになっており、モジュールで機能拡張することができます。 このサイトの歴史HTMLをメモ帳で書いていた時代1996年1996/06/14 Ddashホームページ誕生。 当時のURL:http://ux02.so-net.or.jp/~d-dash/ ※Ddash=当時のハンドルネーム 1997年1997/02/04 So-netの都合でURLが「http://www02.so-net.or.jp/~d-dash/」になった。 CGIの時代1997/03/03 初めてチャットルームを設置してみた(もう無いけど)。 1997/04/04 5000カウント突破。 1997/06/24 占いを設置してみる(もう無いけど)。 1997/11/04 掲示板システム「Comb4」をリリース(当時フリーで公開していた)。 1997/11/27 サイトの名前を「Ddash Web Site」に変更。 1998年1998/02/11 英語版サイト作成(今は無い)。 1998/06/14 2周年目。サーバをBig-netに移行し始める。 1999年1999/01/??頃 3DCGで初めて人体を作ってみたりする。 1999/02/13 掲示板システム「ComBo6」をリリース。 1999/03/28 さくらインターネットに移行。 当時のURL:http://jan.sakura.ne.jp/~d-dash/dws/ 1999/03/30 サイトマップを作ったら、コンテンツ数が100を超えてた。 1999/04/01 マイホーム建替記書き始める(建て替え完了は同年7月末)。 サイトの分化1999/04/06 Linux関係の情報を掲載し始める。 1999/05/20 UltimaOnlineのことを掲載し始める。 1999/6/23 UGB UltimaOnline site(後のUGB GameZone)オープン。 2000年2000/05/21 UO2の情報を載せ始める(中止になったけど)。 2000/10/17 「delta0.net」ドメインを取得。 2000/11/20 サイトの名称をDelta’s Webに変更。 2001年2001/07/06 掲示板システム「tboard Ver1(ComBo7)」完成。 2001/04/15 サイトをCGI化しはじめる。 自作サーバな時代2001/07/23 自宅のサーバでWebを公開(OpenBlockS)。 2001/11/01 「d77.jp」ドメインを取得。 2002年2002/01/16 掲示板システム「tboard Ver2(ComBo8)」完成。 2002/10/15 「delta0.net」ドメインの管理会社を変更。 全コンテンツCGI化な時代2002/12/21 サイトを更新(WebViewer ver5というCGIで運用開始)。掲示板を非フレーム化。 2002/12/18 掲示板システム「tboard Ver3(ComBo9)」完成。 2004年2004/12/04 サイトを更新。CMS(Xoops)を利用。 2006年2006/06/24 まじめにブログを書き始めてみる。 2006/08/20 サイトを更新。FreeStyle Wikiを利用。 掲示板システム「tboard Ver4(ComBo10)」完成。 2008年2008/05/06 自作のWebシステム「Delta Wiki」に変更。 今までこのサイトを「FSWiki」というツールで構築していましたが、今回Wikiツールを自前で作成しました。名付けてDeltaWikiです。 FSWiki関連
ネットワークセキュリティ・関連ツール
リアル知り合い
VisualC++
DirectX関連
ゲーム開発系
その他
情報サイト
イラスト・マンガ関連
ここのページはpostfixについて詳しく書こうと思ったけど、面倒になって来たので、他のネタは他のブログを見てください。 postfixとはここはpostfixというMTAの設定の備忘録です。MTAとはつまりメールサーバで、インターネット上でメールの受送信の役割を担います(この辺の詳しい説明は省略)。
なぜpostfixか
メールサーバの代名詞から、セキュリティ問題の代名詞のような扱いにされて早数年のsendmailですが、それだけではなく設定の困難さから、今の世の中でも敬遠されている存在には代わりありません。 そんな中で注目されているメールサーバの一つとして、postfixがあります。性能・設定の容易さなどが特徴でしょう。注目されていること=セキュリティの問題も発見されやすいというのもありますが、公式サイトを見てもわかるとおり、頻繁にバージョンアップされていることから、信頼できるものに見えます。 ソースコードとrpm
このサイトは、以前からソースコートからコンパイルしでデーモンの構築を推奨してきました。これは、なるべく最新版を入手し運用すべきと考えたからです。 そんな訳で、ここではFedoraCore5のバイナリベースで解説しています。それ以外の方はパスなどを読み替えてください。 postfixとDNS
postfixに関わらず、インターネット上で稼働するメールサーバは通常DNSを参照しています。何を参照しているかというと、相手先ドメインのメールサーバがどこにあるかというのを参照しています。
DNSのMXレコードに、そのドメインのメールサーバが指定されています。 通常のメールアドレスの「@」の後ろはドメイン名、もしくはサブドメイン名が指定されているので、メールサーバはそれを元にDNSを調べ、送るべきメール(SMTP)サーバを決めています。 はじめにここでは、qmailを利用したメールサーバの構築方法を解説します。主な内容はqmailによるSMTPサーバの構築と、各種ツールの使い方、popサーバの構築方法です。 qmailはsendmailに比べるとシンプルだと言われますが、動くようになるまでは結構大変です(それこそsendmailとあまり変わりません)。 ちなみに私は「qmail メールサーバの構築」という本で勉強しました。qmailの公式サイトも見づらいので意外と役立つ情報が多いです。 このコンテンツでのソフトのバージョン特に表記が無ければ、以下のバージョンに関して解説します。新しいバージョンが出てても設定方法はさほど変わらないと思いますので、なるべく最新のものを利用するように心がけてください。 ※一部、インストール中にソースファイルの内容を書き換えているところがありますが、それはバージョンに依存するかも。
RedHat9でのエラーについて(2004/02/08)RedHat9でqmailを構築する際に、コンパイル中に以下のようなエラーが出ます。
※qmail、checkpassword、ucspi-tcp、qmail-vida、daemontoolsでエラーが出ることを確認しましたが、基本的にdjb製のソフトは同様のエラーが発生するそうです。 これを解決するにはソースコードの修正が必要ですが、ftp://moni.csi.hu/pub/qmail/glibc-2.3.1/にパッチがありますので、それを適用することにより解決することも可能です。 ※以下の操作はすべてそれぞれのコンパイル前のソースが存在していることが前提です。
※qmail-vidaやその他パッチが無いソースの場合。 「error.h」というファイルを探し、「extern int errno;」という行を「#include <errno.h>」に書き換える。 ※3行目くらいにあるのですぐ見つかると思います。 メールプロトコルここではメールに関わるプロトコルに関して解説します。知っていると動作テストで絶大な力を発揮できますので、覚えて起きましょう。 ※テストに関係無いところは解説しません。 SMTPSMTPは「Simple Mail Transfer Protocol」の略でその名の通りメール配信に関する通信手順です。RFC(インターネットでのルールとかが書かれて文書)では、RFC821、822に当たり、その後ESMTPとして拡張されたりしてます。 RFC821等の内容は既にRFC2821としてリニューアルされてますが、テストではRFC821だけで十分ですし、内容も短くて読みやすいので読んでおくといいかもしれません(検索すれば日本語訳もいっぱい出てきます)。 SMTPでは通常以下の流れでメールを送信します。
「RCPT TO」が複数あるのは送信先が複数の時です。ここで入力されたメールアドレスはヘッダ情報に記録されないので、ccやbccの区別はありません(ヘッダ情報はDATA以降に書かれる)。 これらの情報は送信元から送信される情報で、受信側サーバは1行1行コマンドに対する応答をします。応答は「3桁の数字 メッセージ」で、システムは3桁の数字で状況判断し、メッセージは人が見やすいようにするだけのオマケのような物です。3桁の数字は、200番台が成功、300番台が入力待ちのような状態(DATAの後に出ます)、400、500番台がエラーです。 では、例として「mail.sender.dom」というサーバを用いて、「aaa@sender.dom」から「bbb@receive.dom」へメールを送信する場合の手順を解説します(これらのドメインやアドレスは当然架空のものです)。 ※「$」はシェルのプロンプト、「S:」は入力するSMTPコマンド、「R:」はサーバからの応答(例)です。
※WindowsのDOS窓からのtelnetはエコーバック(通常のtelnetは入力した文字がサーバに届いた後、クライアントに送信され初めて入力された文字が画面に出る)が無いので、入力した文字が出ません。UNIX系を使うか、脳内補完しましょう。 これで、bbb@receive.domにメールが送れます。ちゃんと遅れなかった場合はログを見ましょう。セキュリティ上の理由から送れない場合もあります。 UNIX系OSであればtailコマンドに-fオプション(もしくはtailfコマンド)を活用するといいでしょう。ログが更新されると自動的に画面に表示してくれます。
受信したメールを見ると気が付くと思いますが、件名どころか、送信元、送信先アドレスが無いメールが届きます。これらの情報は全てDATA以後に書かなければならないので当然です。以下のように書けばちゃんと見れるようになります。
「From:」〜「Subject:」までが「メールヘッダ」、「test」が「メール本文」です。「メールヘッダ」と「メール本文」を分けるのは空行を一つ入れるだけです。ちなみに通常のメールサーバはSMTPの「MAIL FROM:」/「RCPT TO:」に書かれた内容と、DATA以降に書かれたメールヘッダの情報の整合性を取らないので、メールクライアントで見れる「From:」「To:」はいくらでも詐称できます(これがSPAMやウイルス等で使われるメールアドレスの詐称です)。 実際のメールヘッダにはこれ以外の情報も加えられますが、これはメールサーバが付加する情報で、主に中継したサーバの情報や時間が記載されます。 さて、SPAM対策や接続制限されたサーバ等はここまでのようにエラー無しでは終わりません。SPAM対策等に関しては別で解説しますが、主に失敗するパターンは以下のとおりです。
POP3POP3は「Post Office Protocol Version 3」の略で、通常はメールクライアントが、サーバのメールボックスからメールを引き出す為に用いるプロトコルです。 ※たまに勘違いされる時があるが、メールクライアントで「送信サーバ(SMTP)/受信サーバ(POP3)」と書かれていることがあるが、これはメールクライアントから見た表現で、通常のインターネット上のメール配信は全てSMTPの仕事です。 POP3はRFC1939に定義されています(これも過去の文書の改訂版だが、最新版でもかなり短くて読みやすいです)。ここでは最も基本的なコマンドを解説します。
当然メールの中身まで確認できますが、手動テストで底までやる必要は通常ありえないので、解説しません。ここではSTATコマンド(メールボックスにあるメール数と容量の表示)のみ行ってます。 これらの情報は送信元から送信される情報で、受信側サーバは1行1行コマンドに対する応答をします。応答は「結果 メッセージ」で、結果には「+OK」か「-ERR」しかありません。また、SMTP同様にメッセージは人が見やすいようにするだけのオマケのような物です。 では、「pop3.mailserver.dom」に接続し、ユーザ名「user」、パスワード「password」で接続した場合の手順を解説します。 ※「$」はシェルのプロンプト、「S:」は入力するSMTPコマンド、「R:」はサーバからの応答(例)です。
これをやってみるとわかりますが、パスワードはクリアテキストで流されます。パケットキャプチャーとかで、110番ポートへのパケットを傍受して、USER xxxとPASS xxxという文字列を拾えば簡単にパスワードを入手することができたりします。 POP3でのテストで重要なのは、「USER xxx」と「PASS xxx」の部分で、この認証まで成功すればPOP3のテストはOKだと思ってよいでしょう。 ちなみに蛇足ですが、「USER xxx」で存在しないユーザを指定して、「User unknown」とか返すPOP3デーモンは使うのをやめましょう。不正侵入される場合は、パスワードだけではなく、可能な限りユーザIDも守るべきです。適当なパスワードを入力したとして、存在するユーザと存在しないユーザでエラーの表示が変わると、それだけでも侵入できる可能性が高まります。 さて、メールのセキュリティを高める手法として、POP3関連には「POP before SMTP」と「APOP」というのがあります。 「POP before SMTP」は、POP3認証(USER〜PASSまで)が「+OK」になった時点で、その接続元IPをサーバ側で数分間蓄積しておき、そのIPのユーザだけsmtpによるメール転送を許可するものです。その為、POP3でのプロトコルには何の代わりもありません(つまり、telnet before SMTPでも「http basic auth before SMTP」でもイイってこと)。 APOPはPOP3のプロトコルに組み込まれたコマンドを利用するので、ちゃんとメールクライアントで設定しなければなりません。具体的には、POP3ポートへ接続された時の文字列「+OK ready 」の「」の部分(になる)を用い、「パスワード文字列」をMD5で暗号化してダイジェスト文字列を発行します。そして、サーバへ「USER〜PASS」ではなく、「APOP ユーザID ダイジェスト文字列」を送ることで認証します。まぁ、盗聴されればメールの中身が見られることにはかわり無いが、パスワードが守られるってことで幾分セキュアになります。 qmailのインストールここではまずqmailのインストール手順(qmail本体とsmtpデーモン起動まで)に関して解説します。この手順ではpop3デーモンは起動しません。pop3に関しては、後半の「POP3デーモン・・・総合解説」で解説します。 本文内でも書きますが、機能によってはソースにパッチを当ててからコンパイルの必要があるものもありますので、コンパイル後もソースは保存しておくことをお勧めします。 qmailをインストールする場合、インストール前に決めなければ鳴らないことがいくつかあります。インストール先とかの検討も必要なことがあるかもしれませんが、特に重要なポイントは以下の2点です。
この辺の詳細は「POP3デーモン・・・総合解説」で解説しています。 1、ダウンロードまず、qmailの本体をダウンロードします。本体はhttp://www.qmail.org/からたどれますが、qmailの製作者のD. J. Bernsteinのサイトから落とした方がわかりやすいかも知れません。 とりあえず、ftp://ftp.jp.qmail.org/qmail/qmail-1.03.tar.gzから落とせるかも。 2、ダウンロードしたソースを展開tarで解凍します。qmailは基本的にroot権限でインストール作業をするので、始めからrootで作業した方がいいかもしれません。 まぁ、解凍は変なところを指定してファイルを上書きしちゃうと怖いのでroot以外の方がいいかもしれませんが、、、。
3、「conf-」ファイルqmailはインストール前の設定を「conf-xxxx」と言うファイルの内容を変更することによって行うことが出来ます。 ※でも、ほとんどそのままでも問題は無いし、ここの解説も特に設定変更してません。 気にすべきところは、インストール先を示す「conf-qmail」、qmailが使用するユーザとグループを示す「conf-groups」と「conf-users」。 また、メールの流通量が多いサーバでは、「conf-spawn」、「conf-split」を気にした方がいいかもしれません。
alias/qmaild/qmaill/root/qmailp/qmailq/qmailr/qmails 4、ディレクトリの作成qmailがインストールされるディレクトリを作成します。 場所は「/var/qmail」がデフォルトです。場所を変えたいのであれば、後に出てくる「conf-qmail」の設定をコンパイル前に設定する必要があります。
5、ユーザ、グループの作成インストール前に各ユーザとグループを作成しなければなりません。以下の手順で追加することが出来ます。 ※ユーザに関する設定は「conf-users」、グループは「conf-groups」に定義されているので、変更したならそれにあわせる。 ※Linux以外の人は、qmailに含まれるドキュメント「INSTALL.ids」を読んでください。
6、バグ対応DNS周りのバグがあるので、手作業で修正した方がいいらしいです。ファイルは「dns.c」で場所は24行目。 コンパイル間にvi等で編集/修正しておいてください。
※これよりもhttp://www.ckdhr.com/ckd/qmail-103.patchにあるパッチを当てた方が確実っぽいです。
7、JST対策qmailはそのままコンパイルすると送信したメールの時間表示が全てGMT(世界標準時)になります。JST(日本時間)にするにはコンパイル前にパッチをあてなければなりません。 操作はqmailのソースを展開したディレクトリの中で以下のような操作をします。
これでOK。 8、その他パッチあてqmail-vida等を導入する時は、メイクの前にパッチを当てる必要がある場合があります。 9、メイク以下の操作でコンパイル/インストールが行われます(要root権限)。
コンパイルがうまくいかなかった場合、インストール先ディレクトリを作ってなかったとか、必要なユーザが居ないとか、他のインストールプログラムではあまり見られないようなことがあるので注意しましょう。 10、制御ファイルを編集/var/qmail/controlに制御ファイルを作成/設定します。 制御ファイルとは、いわゆる設定ファイルのことで、sendmailであればsendmail.cfにあたるものです。 この点、始めにちょっと戸惑います。 作成方法ですが、制御ファイル「me」に「hogehoge.jp」を設定する場合は「me」というテキストファイルを作って、内容を「hogehoge.jp」にします。つまりコマンドで表現するならば、
となります。 制御ファイルに関しては別記「qmailのファイル構成」の「制御ファイル」で解説していますが、主要ファイルは以下の通りです(以下の例ではホスト名を「mail.hogehoge.jp」と仮定しています)。
「me」は絶対に必要です。これがないとqmailは動きません。他の制御ファイルが無い場合は決められた値がセットされたことになります。 ちなみに「me」は自ホスト名。「defaultdomain」はメアドでホスト名(@より右)を省略したときに自動補完されるホスト名。「locals」はローカルサーバとみなすホスト名。rcphostsは主にSPAM対策用ですがそのホスト名のアドレス以外宛先への転送を許可しないという設定です。 ※つまり上記の設定だと自ホスト以外へメールを送れなくなりますけど、それを可能にする方法は後ほど解説します。とりあえずこの設定をしないと公開して1日もすればSPAMの温床になります。 11、エイリアスファイルメールサーバを運用する際に必要なメールアドレスは、当然メールを使うユーザのアドレスを準備すればいいのですが、それ以外にも必要なメールアドレスが存在します。 それぞれのメールアドレスを作ってもいいのですが、受け取る方にしてみればえらい面倒なことなので、それらのメールを「エイリアスファイル」に定義することにより、特定のユーザにメールを転送することが出来ます。 ※つまり、sendmailのエイリアスと同じ意味 最低限必要そうなのは、postmaster、MAILER-DAEMON、root宛のメールなので、ここでは例として「user」ユーザのエイルアスに設定し、「user」がメールを受け取るようにします。
※qmailはユーザ名を全て小文字で設定する。 このように、「/var/wmail/alias」に「.qmail-宛先ユーザ名」というファイルを作って、そのファイルの内容に転送先のユーザ名を設定すればエイリアスの設定は完了です。 なお、/var/qmail/alias、及び各エイリアスファイルは「chmod 644」のパーミッションに設定しておきましょう。 12、sendmailとの互換性よく、CGIのフォームメールなどで、sendmailの実行ファイルを直接起動することがあります。qmailをインストールするとそのままでは当然sendmailを呼び出すことが出来なくなる為、以下のようにして対策することが出来ます。 sendmailを探す。 「# find / -name sendmail」コマンドなどを使ってsendmailを探します。ここで見つかるのは設定ファイルだったり、エイリアスだったりする場合もあるので、その点も確認しておいてください。 ※ちなみに「/var/qmail/bin/sendmail」というファイルが見つかると思いますが、これがqmail版sendmail実行ファイルです(なんか妙な表現だな^^;)。これは消してはいけません。 RedHatの7系でチェックしたところ、以下のようなシンボリックリンク構造になってました。
えらいややこしいですけど、「/usr/sbin/sendmail.sendmail」が本体でしたので、以下のようにして「/var/qmail/bin/sendmail」に置き換えます。
※ローカルハッキング防止の為、権限を外しましょう。ほおって置くとバッファーオーバフローの問題が見つかったらroot権限が取られます。
13、ローカル配信先の考慮qmailではsendmail等でおなじみのメールボックス(/var/mailや/var/spool/mail等)にメールを蓄積する方法の他に、「Maildir」という独自の方式がります。 さらに、基本的にユーザのホームディレクトリ毎にメールボックスを作成します。 Mailboxか、Maildirかでqmailの起動方法も異なりますが、それは後ほど設定します。 sendmail等のメールサーバでは通常受信したメールを「/var/mail/ユーザ名」や「/var/spool/mail/ユーザ名」というファイルに蓄積し、そのデータをpop3などを利用してユーザは引き出します。qmailではこの「Mailbox方式」の他に「Maildir方式」を利用することが出来ます。それぞれの特徴は以下のとおりです。
pop3を使う分にはほとんど問題無いですが、imapを使う場合はMaildirはダメだと思った方がいいです。 ※imapデーモンの種類によってはパッチが提供されてるのもあるが、パフォーマンスに難があるらしい。 14、メールボックスの作成「Mailbox」と「Maildir」で方法が異なります。 -sendmail互換のメールボックス qmailでは「/home/ユーザ名/Mailbox」にメールが蓄えられるので、それを作成して、シンボリックリンクをはります。
※もともとメールボックスが無い時は、「/home/ユーザ名/Mailbox」という空のファイルを作ってリンクを張ってもOK。 ※最近のRedHatなどのディストリビューションは「/var/mail」が「/var/spool/mail」のシンボリックリンクになってるようなので、操作する前によく確認してください。 -Maildir 作業はrootでは無く、各ユーザの権限で行います。
15、起動テストここまで設定されていれば、qmailは一応動きます。最終的には起動スクリプトを作ったりとかしないとダメですが、とりあえず「qmailのテスト」を参考にしてテストしてみるといいかも知れません。 16、スーパサーバの設定SMTPデーモンである「qmail-smtpd」は外部にポート(TCP25番)を開放するのでアクセス制限を施す必要があります。 基本的にはSMTPポートは開放するのですが、たとえばSPAMメール対策の為に、特定ユーザのみ中継を許可すると言うような設定が必要になります。 通常のデーモンはinetdやxinetdなどを使用しますが、qmailはucspi-tcpがいいので、別記の「ucspi-tcpのインストール」を参照し、インストールとルールデータベース「tcp.smtpd.cdb」を作ります。 インストール方法は、「ucspi-tcpのインストール」で解説しています。 ※inetd等でも動きますけど、さまざまな機能(APOPとか、POP before SMTP)を実装する際に非常に面倒になるので、ucspi-tcpをお勧めします。 ※どうしてもxinetdがいい人は「xinetdでの設定」を見てください。 17、起動スクリプトの作成初めて起動するときは、シェルを別に開いておき、「tail -f /var/log/maillog」当たりを監視しながら起動チェックした方がいいです。 起動スクリプトでは、スーパデーモンとして、ucspi-tcpに含まれるtcpserverや、xinetd、inetdなどを使用することが出来ます(どれでも大丈夫ですが、pop3の関連ツールに影響が出る場合があります)。ここの解説はtcpserverを利用しています。xinetdは次で解説しています。 qmail起動スクリプト/var/qmail/rc(chmod 705)
qmail本体(qmail-start:3〜4行)及びsmtpデーモン(qmail-smtpd:6〜9行)の起動サンプル。qmail-smtpdはアクセス制御の為にtcpserverを使っている。 上記の例は「Mailbox」対応版です、「Maildir」に対応させるには、4行目を以下のように書きます。
qmailは基本的に後ろにスラッシュがあるか無いかで、MailboxかMaildirかを判断します。 tcpserverを使うには、「ucspi-tcp」をインストールし、SMTPのアクセス制御データベースである「/etc/tcp.smtp.cdb」を作成しなければならない。 7行目の「-u 503 -g 502」の「-u」は「qmaild」のユーザID、「-g」は「nofiles」のグループIDです。「/etc/passwd」と「/etc/group」を参照して設定してください。 自動起動スクリプト(/etc/init.d/qmail)※「/var/qmail/rc」を参照してます。
RedHatやTurboLinux等で使用される起動スクリプトの例。ちょっと内容がテキトウです(^^;;。 ※最近のRedHatでは記述方法が根本的に変わっちゃってるみたいです。 もしかすると、所々うまく動作しないかもしれません。 「/var/init.d/qmail start」で起動。「/var/init.d/qmail stop」で終了できる。始めの数行は一般的な初期化コマンドで、ディストリビューションやそのバージョンによって違うので、別のファイルを参照した方がいい。 ここの例では「/var/qmail/rc」で、幾つかのデーモンを起動するので、それを終了するのに2つのkillprocが必要となる。tcpserverを使わないなら「killproc /usr/local/bin/tcpserver」はいらない。 ※ちなみに上記の例だと、qmail以外でtcpserverが起動している場合に、他のtcpserverも全て落としてしまうので注意が必要。 17.5、xinetdでの設定ひょんなことからxinetdでテストする機会があったので設定を記載しておきます(検索すれば何処にでもでてますが、、、(^^;;;)。
これはsmtpデーモンだけなので、qmail-startとpop3デーモンは別途起動してください。 ※popは「POP3デーモン・・・qpopperの導入(MailboxとAPOP)」あたりに書いてあります。 18、POP3の設定ここまで設定すればサーバ間のメール交換はできるはずです。最後に受信したメールをクライアントで見れるようにPOP3の設定をします。POP3はさまざまな形態により使用するソフトが違うので「POP3デーモン・・・総合解説」を参照してください。 qmailのファイル構成qmailが軽量であると言われる最大の理由でもあり、初心者にとっての一番の鬼門ともなるのが、その関連ファイルの多さです。 ここでは、qmailのファイル構成を解説します。qmailを始めた方は、読む必要無い(というか混乱を招くだけだと思います)ですが、制御ファイルはかなり重要なので、実際の運用時には気にしてください。 システムプログラムメール送受信などに利用されるプログラムです。デフォルトで/var/qmail/binに配置されています。
制御ファイル制御ファイルの解説を書くのをすっかり忘れてました(^^ゞ ※っていうか書いたけど、消えてしまったようなので書き直してます。その為、書いてる途中の項目が非常に多いです。 制御ファイルは通常「/var/qmail/control」というディレクトリに格納されます。いわゆる設定ファイルなのですが、記述方法が独特です。たとえば「me」という値に「d77.jp」を設定したい場合は、「/var/qmail/control」ディレクトリに「me」というファイルを作成し、その内容を「d77.jp」と記述します。コマンドで示すと
となります。
localiphost/percenthack/plusdomain/qmqpservers/smtpgreeting/smtproutes/timeoutconnect/timeoutremote/timeoutsmtpd/virtualdomains 制御ファイルの実践向け設定だらだらと解説してもピンと来ないかと思うんで、ここでは実際に実用で使うような設定に関して解説します。
qmailのテストここではqmailの動作テストの方法について解説します。あくまでも基本的な動作テストの方法だけなので、SPAM対策とかの動作テストは他のコラムにて解説します。 テストの基本qmailは「/var/log/maillog」にログを出力します(正確にはsploggerやsyslogdの仕事だが)。これを見ずに問題の原因究明は出来ませんので、テスト中は常に監視してください。「tail -f /var/log/maillog」などのコマンドが便利です。 ※/var/log/messagesも見ておいたほうがいいかも。 qmailの手動起動qmailを起動させるには、qmailの本体部分とも言える「qmail-start」とSMTPデーモンである「qmail-smtpd」を起動させる必要があります(受信したメールを見るのにPOPデーモンも必要かも知れませんが、テスト段階ではPOPは無くても問題ありません)。 いずれともroot権限で起動します。
メールの蓄積を「/home/xxxx/Mailbox」にするか「/home/xxxx/Maildir」にするかによって違います(ここで/var/mailとかじゃないの?って疑問に思う人はインストールのところを読み直してください)。
※「qmail-start」、「splogger」は「/var/qmail/bin」にあります。
qmail-smtpd 2>&1 | splogger smtpd 3& ※「qmail-smtpd」も「/var/qmail/bin」にあります。 これでメールの送受信は可能です(ただし、rcpthostsの内容によっては受信できません)。 あくまでもテスト起動なので終わったら落としましょう。killコマンドでqmail-sendとqmail-smtpdを落とせばOKです。 qmail起動時の動作qmail起動直後は「ps ax」コマンドなどでプロセスの状態を確認します。通常、「/var/qmail/bin/qmail-start」で起動した場合は以下の内容がプロセスリストに載ります。
※上記は「qmail-start ./Mailbox splogger qmail&」で起動した場合の例。当然「./Maildir/」とかで起動した場合は違う表示になったりもします。 手動でこのプロセスを停止したい場合は「qmail-send」のみを殺してください。それで全て止まります。 「/var/qmail/bin/qmail-smtpd」を起動した場合のプロセスは以下の2つです。 ※起動方法によって表示は異なりますが、ここではtcpserverを利用して起動した場合の例です。
これらが動いてなければこれ以降のテストが出来ないので、設定ファイルなどをチェックして正しく起動できるようにしなければなりません。 起動後に「qmail-remote」のプロセスが多量に発生する場合があります。これはキューに溜まったメールを吐き出す為の処理です。ただ、この処理は一瞬で終わりますが、終わらないときは何かしらの問題が起きていることが予想されますので、ログを見ましょう。この問題は制御ファイルの記述ミスか、tcpserverのルールのミスの場合がほとんどです。 ※qmailはデフォルトで10〜20通分ずつメールを処理します(ローカルとリモートで違う)。これは2、3分で10〜20通しか送らないので、100通くらい溜まってると、全てのメールを処理するのに30分くらいかかります。詳しくは制御ファイル「concurrencylocal」「concurrencyremote」で解説しています。 ucspi-tcpのインストールucspi-tcpはinetdやxinetd等のスーパサーバのような物です。qmailを使うときはこのucspi-tcpを使うといいでしょう。 ucspi-tcpを推奨する理由はその特徴から来る理由も当然ありますが、何よりqmailと相性がいいというのがあります。xinetdとqmailのセットはいろいろ考えなければならないことが多いし、いろいろなサイトにも書かれてるとおり、設定上でよくわからない部分があります。 ucspi-tcpのインストールまずソースコードをhttp://cr.yp.to/ucspi-tcp.htmlから入手します。ダウンロードしたら以下の手順で展開/コンパイル、インストールします。
makeはroot権限が必要なので初めからsuしてます。 ※qmail-vidaを使う場合はmakeの前にパッチを当てる必要があります。 設定qmailで、spamを防ぐ方法として、制御ファイル「/var/qmail/control/rcpthosts」に自ドメイン名を設定するのが一般的です(たとえば「d77.jp」と書くと、d77.jp宛のメールしか受信しなくなります)。 「/var/qmail/control/rcpthosts」に「d77.jp」を設定した場合のメールの動作。 ○:d77.jp→d77.jp ○:他ドメイン→d77.jp ×:他ドメイン→他ドメイン ×:d77.jp→他ドメイン これで一見spamからの防衛が出来るように見えますが、実際は大きな問題があります。外部から見れば「d77.jp」宛しか受け取らないので、当然不正中継が不可能ですが、内部ユーザが他のドメイン宛にメールを送信する場合(d77.jp→他ドメイン)は、宛先が自ドメインではないため、spamという扱いにされ送信できなくなります(サーバプログラムがメールを受け取らない)。 これを回避する為の一般的な方法として、内部IP(ここでは例として192.168.1.0/24とします)からとローカルホストからメールを受け取った場合ときのみ「rcpthosts」の設定を無視するという方法を用います。 これをucspi-tcpで実現する為に、具体的には「192.168.1.と127.0.0.からのメールに関しては環境変数に「RELAYCLIENT=""(rcpthostsを無視する環境変数)」を設定する」という方法を用います。 まず、以下の手順でSMTPのルールデータベースを作成します。 1、rules.txtというファイルを作る。内容は
という3行です。1、2行目はアクセス元が「192.168.1.」と「127.0.0.」だった場合にのみ通信を許可(allow)し、さらに「RELAYCLIENT=""」を指定しています。3行目はそれ以外は全て拒否という意味です。「ゲートウエイのIP:deny」なんて設定も追加すると、うっかりルータが乗っ取られたとしても、そこからのアクセスを拒否できたりします。 2、rules.txtからルールデータベースを作成 以下のコマンドでルールデータベース「rules.cdb」を作ります。
そして、/etcにコピー
3、起動
これで、「qmail-smtpd」に「tcp.smtp.cdb」のルールを適用することが出来ます。 起動スクリプトの記述方法に関しては「qmailのインストール」→「起動スクリプトサンプル」付近を見てください。 SPAMメール/迷惑メール対策ここではqmailでのSPAMメールの対策方法を記述します。 Firewallやルータなどによる遮断たとえばWebサーバなどを運用していて、Webフォームからメールを送信するだけにメールを使用する場合は、受信の必要が無いので、WAN側からのSMTP接続(TCP:25番)を遮断すると確実です。 inetdやtcpserver(ucspi-tcp)などでの遮断も有効です(この場合は自分自身「127.0.0.1」のみ許可)。 中継を一切禁止「/var/qmail/control/rcpthosts」に自分のホスト名を記述します。たとえば自ホストのメールアドレスが「hoge@example.jp」の場合は「/var/qmail/control/rcpthosts」に「example.jp」と書きます。 これにより、「/var/qmail/control/rcpthosts」に記述されたホスト宛のメールしか受信しなくなります。 上記の例(example.jpと書いた場合)は、「xxx@example.jp」宛のメールしか受信しなくなります。たとえ送信元が「example.jp」でも、送信先が別のホストの場合は以下のエラーを返します。
ちなみにこれをやると、内部ユーザもメールを送信できなくなります(内部ユーザが送信する場合は宛先が指定されていないホストになる為です)。これの回避方法は次の環境変数を使います。 一部のユーザのみ中継許可qmailのサーバを利用して、外部にメールを送信したい場合は、qmailのサーバが中継を許可していなければなりません。 たとえば、「hoge@example.jp」というメールアドレスの人が、ホスト「example.jp」を利用して、「xxx@yyy.com.jp」へメールを送信したい場合、「/var/qmail/control/rcpthosts」で、「example.jpのみを受信」できる設定にしていると、「hoge@example.jp」からの送信も出来なくなってしまいます。 「/var/qmail/control/rcpthosts」に「example.jp」を設定した場合のメールの動作。
この場合は環境変数「RELAYCLIENT」を利用します。qmailでは基本的に、「/var/qmail/control/云々」よりも環境変数の値を優先しまので、「特定のIPアドレスから接続してきた人のみrcpthostsの設定を無効(環境変数:RELAYCLIENT="")にする」という方式をとります。 たとえば、内部ユーザが「192.168.0.xxx」というIPアドレスの場合、tcpserverなどのスーパーサーバを使ってsmtpポートに対し、以下のような設定をします。
※tcpserverの説明は「ucspi-tcpのインストール」で詳しく解説しています。 こうすると、内部ユーザ「192.168.0.xxx」がsmtpへ接続された場合、「RELAYCLIENT=""」という環境変数が有効になり、「/var/qmail/control/rcpthosts」が無視されます。「RELAYCLIENT=""」は「全ての中継を許可」の意味なので、指定されたIPのユーザのみが中継可能になるというわけです。 大きなサイズのメールを受け取らない「/var/qmail/control/databytes」で受信データのバイト数を指定できます。上限をどのくらいにするかは難しいところですが、以下のような値が目安でしょうか?
ちなみに容量制限オーバの場合、以下のエラーが*メールで*返送されてきます。
どこからでもメールを使いたい方法たとえば外出先からメールを使用したい場合、アクセス元のISPによってIPが変わる為、正規ユーザかスパマーかを判断できません。当然ながらrcphostsも使えないし、RELAYCLIENT環境変数も問題解決にはなりません。こういう場合は幾つかの方法があります。
「pop before smtp」は別コラムで解説してます。 smtp auth(SMTP認証)はその名の通りsmtpのセッションに認証するんですけど、しばらく一般的じゃないとされてあまり注目されていなかったようですね。OutlookやBecky!でも対応してるので、ちょっと興味アリ。興味のある方はqmail-vidaと言う物がよさそうですね。 ※ただ、これを執筆段階では更新が止まってますし、まだβ段階のようなのでどうなんでしょうね?(追記:APOP、仮想メールボックスの併用になるとqmail-vidaしかないようです。とりあえず、別コラムを読んでください)。 フリーメールユーザや特定のメールアドレスを遮断「/var/qmail/control/badmailfrom」に遮断したいメールアドレスを書き込みます。たとえばメール爆弾がMicrosoftのHotmailから来る場合は、以下の2行を追加します。
ホスト名だけ書くと、そこからのメール全てを遮断します。 POP3デーモン・・・総合解説qmailで受信したメールを読むにはPOP3デーモンを導入しなければなりません。POP3デーモンにはいくつかの種類がありますが、ここでは状況別に何がお勧めかを羅列します。 ※当然、これが全てではないです。 ※OutlookはAPOPには対応してないので注意(フリーウエアか何かで対応させるのはあったかも)。セキュリティを重視するのであればsmtp-authやS/MIME等を使うみたいです(ここでは解説してませんが、qmail-vidaあたりで実現できそう?)。
※仮想メールボックスというのは、サーバアカウントが無くてもメールの送受信を可能にする為の機能です。 デルタ的なお勧めとしては、Maildirなら「qmail-pop3d」、Mailboxなら「qpopper」で、APOPはどれでもOKです。POP before SMTPは「qpopper」ではちょっとわからないので「qmail-pop3d」しか選択の余地がありません。仮想メールボックスは上記のどちらでもいいですが、「vpopmail」でAPOPは使えないと思った方がいいです。「qmail-vida」はさまざまな機能が使えていいのですが、最近バージョンアップの話を聞かないので、仮想メールボックスがいらない人はわざわざ入れなくてもいいです。 POP3デーモン・・・qpopperの導入(MailboxとPOP/APOP)qmailには「qmail-pop3d」という物がありますが、sendmail互換のMailboxに対応してません。ここではsendmail互換のMailbox対応としてqpopperを紹介します。 解説の中ではついでにAPOP対応方法も解説します。 ちなみに、qpopperはかなりセキュリティ上の問題が多発してるので、セキュリティ情報を気にするなり、外部からの接続を遮断するなり、信頼できないユーザにアクセスさせないなど対策をとりましょう。 ※だからと言ってqpopperがダメって訳ではありません。かなり一般的に広く普及しているので、信頼できると思います。 ちなみにqmailのMailboxは「/home/ユーザ名/Mailbox」で、qpopperが参照するのは「/var/mail/ユーザ名」です。これに関しては「qmailのインストール」→「メールボックスの作成」のところに書いてますんで、注意してください。 ダウンロードとインストール公式サイトはhttp://www.eudora.com/qpopper/なので、そこからqpopperを落とします。今回は「qpopper4.0.4.tar.gz」というファイルを使用しました。 ちなみにこのバージョンはセキュリティ上の問題が発見されています(T_T。 とりあえず、起動オプションに「-u」を設定しなければ問題ないらしいんで、一応気にかけておきましょう。 では、インストール方法。 APOPが必要な場合は以下のアカウント作成作業をします(POPではこの設定は不要)。
次にqpopperを展開(POP/APOP共)
環境設定はAPOPに対応するかしないかで違います。APOPを使わない場合はサーバのアカウント(/etc/passwd、/etc/shadowが参照されます)。 -APOP対応
-APOP非対応(POP)
※「–enable-specialauth」はシャドウパスワード対応。 最後にメイク。
コンパイルは以上。インストールは手動で行います。 まずは本体をコピー
APOPを使う場合は、APOP用パスワード作成用ツールのpopauthのコピー(POPの場合は不要)
コンパイルとインストールは以上 設定(APOPのみ必要)設定はAPOPを使う時のみなので、APOPに対応する必要がないなら読み飛ばしてください。 APOP用のパスワードの作成です。まず、アカウントデータベースを初期化します。
これで「/etc/pop.auth」が出来ますが、既に存在している場合は初期化の確認メッセージ(Really initialize POP authentication DB?)が出ますんで「y」と入力すると初期化できます。 次にユーザ名とパスワードを追加します。
これでパスワードを2回聞かれるので、入力すれば設定完了です。ちなみに通常のユーザからなら、
でもOKです。 qpopperに関する設定はこれだけでOKです。 起動設定(xinetd)xinetdをスーパサーバにした設定方法です。APOP対応/非対応関係無く同じ設定で行けます。まず、以下のファイルを作成します。 /etc/xinetd.d/popper
※ちなみに「inetd」で動かしたいなら、inetd.confに以下の行を追加します。
次にアクセス制限。xinetdはhosts.allowとhosts.denyで制限できます。 hosts.allow
※上記の例は「192.168.1.xxx」からのアクセスを許可している。必要に応じて他の設定などを追加してください。 hosts.deny
あとはxinetdを再起動すればpop3が使用できるようになります。 起動設定(tcpserver)次にtcpserver上で稼動させる設定です。これもAPOP対応/非対応関係無しです。 rc.qpopper.sh
※「-R -H」オプションを書き忘れてました。 -R・・・通信時にIDENT(TCP113番)を飛ばさないようにする。 -H・・・DNS検索をしない。 デフォルトは上記両方とも「する」になってます。IDENTを通してないとタイムアウトまで26秒待たされます(通しててもクライアント側でパーソナルファイアウォールとか設定してると同じ問題が起きる)。 これでqpopperが起動できます。ログは/var/log/messagesに「pop3d」というエントリーで記録されます。 「/etc/tcp.pop3.cdb」はucspi-tcpで解説していますが、ルールデータベースです。変換前のデータベースの一例は以下の通りです。 tcp.pop3.txt
※ローカルネットワーク(192.168.1.x)からの接続を許可して、それ以外は拒否という設定。 上記のファイルを以下のコマンドで変換すればOKです。
POP3デーモン・・・qmail-pop3dの導入(MaildirとPOP/APOP)ここでは「qmail-pop3d」の解説をしますが、実はqmailをインストールした段階で関連ファイル(主にqmail-popupとqmail-pop3d)がインストールされているので、改めてインストールする必要はありません。認証モジュールだけ必要なので ですので、既にqmailパッケージがインストール済みという前提で解説します。 認証モジュールの導入(checkpassword:POP3認証)qmailではqmail-popupがIDとパスワードの入力を促し、認証モジュールが認証チェックをして初めてqmail-pop3dがメールを読むことが出来ます。 認証モジュールに関しては標準で入っていないので、導入します。 http://cr.yp.to/checkpwd.htmlから「checkpassword」をダウンロードします。これはAPOPには対応してません。APOP対応にしたいならここを読み飛ばして次のcheckapoppwを導入してください。 checkpasswordは良くも悪くも/etc/passwdや/etc/shadowを用いて認証します。まぁパスワード管理が楽なことがメリットでしょう。 今回は「checkpassword-0.90.tar.gz」を使いました。ダウンロードしたら以下のようにしてインストールします。
認証モジュールの導入(checkapoppw:APOP認証)(2002/09/03)APOPに対応するには、checkpasswordのかわりにcheckpwパッケージに含まれるcheckapoppwを利用します。 http://checkpw.sourceforge.net/checkpw/から「checkpw」をダウンロードします。これはAPOPには対応してません。今回は「checkpw-1.00.tar.gz」を使いました。ダウンロードしたら以下のようにしてインストールします。
※設定はqmailと同様、1ファイル1設定です。
以上の設定が終えたら(多分変更無しでOKですけど)メイクします。
※「conf-maildir」と「conf-password」の設定でパスワードファイルの位置が決まります。デフォルトは「/home/user/Maildir/.password」です。 この認証モジュールは独自のパスワードファイルを使うので、ユーザ毎にパスワードファイルを準備する必要があります。
以上で設定は終わりです。パスワードがクリアテキストというのも心もとないですが、アカウントパスワードとは分断できますし、そもそもこのパスワードファイルが他人に見られるという状況=Maildirの中身も見られるということなので、まぁ問題無いでしょう。できればユーザアカウントのパスワードとは違うパスワードにした方がいいと思います。 起動設定(tcpserver)認証モジュールがインストールできれば、後は既にインストール済みなので、起動方法から解説します。全ての実行ファイルは特に特に指定していない物に限っては「/var/qmail/bin」にありますので、必要に応じてパスを通してください。パスはここに書いてある個所とは違う場合もあるので、事前に確認してください。 qmail-pop3dを実行するには、スーパサーバ、認証、デーモン本体と3段階あります。まず、それぞれに関して解説します。 -まずは、スーパサーバであるtcpserverの起動設定
「/etc/tcp.pop3.cdb」はucspi-tcpで解説していますが、tcpserver用のルールデータベースです。変換前のデータベースの一例は以下の通りです。 tcp.pop3.txt
※ローカルネットワーク(192.168.1.x)からの接続を許可して、それ以外は拒否という設定。 上記のファイルを以下のコマンドで変換すればOKです。
-次は認証モジュールの部分です。 書き方はAPOP対応の「checkapoppw」と「checkpasswd」で違います。 APOP非対応
APOP対応
-最後にデーモン本体です。
「qmail-pop3d」自体は「qmail-pop3d Maildir」と書くだけです。画面にログを出したくないので「2>&1」と付いてます。ログはsploggerにリダイレクトします。sploggerはqmailに標準添付のロギングプログラムで、「splogger タグ ファシリティレベル」とオプションをつけます。「タグ」はログに記録される指標なので、わかりやすいように「pop3d」でOKです。ファシリティレベルはsyslogの話になってしまうのですが、簡単に説明すると「2(デフォルト)」だと/var/log/maillog、「3」だと「/var/log/messages」に出力されます。qmal-smtpdとかは「2」がいいですが、pop3dは通常「3」でOKです。 さて、実際に実行するときはこれらをいっぺんに起動します。IPレベルでの接続をスーパサーバで振り分け→認証部分でPOP3認証→POP3の処理です。起動時はこれをいっぺんに書きます。 -非APOP
-APOP
微妙に違っているところはバックグラウンドで動かさないとダメ(ダメって訳ではないがデーモンをフォアで動かしても意味がない)なので、最後に「&」が付いてます。サーバ名はメールサーバの名前なので「mail.hogehoge.jp」なら、それをそのまま書きます。 あとはそれをスクリプトにしちゃいましょう。以下はサーバ名を「mail.hogehoge.jp」、APOP対応で起動する場合のスクリプトです。 ※APOPに対応しない場合はcheckapoppwをcheckpasswdに書き換えるだけです。 -/var/qmail/rc.qmail-pop3d
これでOKです。 (余談)動作チェックうまく動かない場合などはtcpserver等を使わないで起動したり、コマンドラインから起動することも出来ます。コマンドラインからは以下のコマンドで起動できます。 ※以下はAPOPの場合。POPはcheckapoppwをcheckpasswdに書き直す。
ちなみにこの方法だとフロントエンドで動くのでctrl+cを押すまでプロンプトが帰ってきません。また、ログは標準出力に出力されるので、そのまま画面に出ます。 POP3デーモン・・・POP before SMTP対応通常の自宅サーバでのSPAM対策は「/var/qmail/control/rcpthosts」に自ドメインをして、送信可能なIPアドレスに対し、「RELAYCLIENT=""」という環境変数を指定すれば問題ありません。 しかし、送信可能なIPアドレスが特定できない状況(ISPやダイヤルアップ接続ユーザ等)の場合はこの方法は使えません。 「POP before SMTP」はこういうときに有効な手段の一つで、POP3認証を済ませたユーザだけSMTP中継を許可するというSPAM対策手法の一つです。SMTP認証(SMTP AUTH)のように認証を別々にすることによる煩わしさにも解放されます(SMTP認証の方が安全と言えば安全だが)。 弱点としては、POP認証を済ませた後、同じIPを持つ人がきた場合(どこかのドメインでNATで振り分けられたユーザとか)に無防備になりますが、それは非常に難しいことですし、POP認証後の制限時間を短くすることによってもある程度避けられます。 また、当然ながら、POP認証を事前に済ませる必要があるので、POP3へのアクセスも解放されて無ければなりません。 なお、POP before SMTPを実現するのに、今回はqmail-pop3dへの機能追加という形を取っています。qpopperでがんばってみたのですがかなり大変そうなのでやめました。どうしてもMaildirがイヤだって人はqpopperでも調べれば方法があります。 インストール基本的にqmail-pop3dに機能追加するという方法なので、qmail-pop3dの導入は終わってるものと仮定します。APOP対応/非対応は関係なくどちらでもOKです。 今回は「relay-ctrl」を使います。これを利用するには「daemontools」が必要になります(「daemontools」とはqmailと同じ作者が作ったツール群で、サービスが落ちたときの再起動をしてくれたりなどの便利なツールが入ってます)。今回使用するバージョンは以下のとおりです。
インストール方法は検索すればいくらでも出てくるので、簡単に解説します。
「http://cr.yp.to/daemontools.html」からダウンロード(How to install daemontoolsにある)。
「http://untroubled.org/relay-ctrl/」からダウンロード。
インストールは以上です。 relay-ctrlの設定daemontoolsについては設定は不要です(一部のファイルを使うだけなので)。 relay-ctrlはそのままでは動きません。以下の設定を行います。 -まず、キャッシュ(/var/spool/relay-ctrl/allow)を作成します。
次に、キャッシュの位置を示す設定ファイル(/etc/relay-ctrl/RELAY_CTRL_DIR)を作成します。
・キャッシュを操作するプログラムにsetuidの設定
・キャッシュの削除の設定(要cron) /etc/cron.d/relay-ctrl
・キャッシュの生存時間の設定
単位は「秒」です。 relay-ctrlの設定は以上です。 キャッシュと生存時間に関しては、あとで解説します。 関連デーモンの設定まず、qmail-smtpdの起動ファイルに幾つかの指定を追加します。既存の設定に以下の強調されている部分を追加するだけでOKです。
このとき、「tcp.smtp.cdb」に「RELAYCLIENT」の設定がされているとその設定が優先されます。 ※つまり、「192.168.1.:allow,RELAYCLIENT=""」という行があった場合、「192.168.1.xxx」というIPアドレスを持つユーザはPOP認証をしなくてもSMTPによる転送が可能になります。 次は「qmail-pop3d」関連の設定です。
こんな感じに追加し、各デーモンを再起動します。 APOPの場合も「 メールサーバ名 /bin/checkpassword \」の行を「 メールサーバ名 /bin/checkapoppw \」に書き換えるだけで対応できます。 動作テストまず、自ドメインから外のドメインのメールに対しメール送信のチェックをします。 送信が出来てしまったら問題です(^^;。POP before SMTPでは、POP認証を済ませないと、メール送信が出来ません。もし、認証もせずに送信できた場合は幾つかの原因が考えられます。
送信でエラー「553 sorry,that domain isn’t in my list of allowed rcpthosts(#5.7.1)」が出ればOKです。 次に、pop3接続をし、pop3認証を済ませます(メールの受信)。これにより、「/var/spool/relay-ctrl/認証者のIP」というファイルが作成されます(内容は「user=ユーザ名」です)。このファイルはほおって置けば消えますが、rmコマンドで手動で消せば何度でもテストできます。 pop3認証後、メールが送信できればテスト完了です。 プロセスリストに変な物が、、、これらの設定が終わる頃、プロセス(ps aux)に「sh /command/svscanboot」とか、「svscan /service」とか、「readproctitle service errors: …..」とかいうものが見つかります。これらはdaemontoolsをインストールすると自動的に起動します。単に、relay-ctrlを使用するだけならメモリの無駄なので止めましょう。止め方は「/etc/inittab」にある「SV:123456:respawn:/command/svscanboot」という行をコメントアウトして再起動です。 ※当然、daemontoolsを有効活用する場合はこれらのプロセスは必要です。 ※それにしてもルートディレクトリにディレクトリ作るなよとか思いました(しかもインストーラではインストール先は固定になってます)。 ドメイン移行/複数ドメイン並行稼動時のqmailの設定このサイトのドメインはd77.jpですが、以前はdelta0.netというドメインでした。 delta0.net(旧)はレンタルWebスペース+メールでしたので、d77.jp(新)への移行に伴い、qmailでメールサーバを構築。そして、delta0.netを業者のDNSからここのドメインへ移動してます(その証拠にwww.delta0.netとwww.d77.jpへのpingの結果は同じになると思います)。 さて、メールの移行ですが、delta0.netへ届くメールをd77.jpで受信するのは簡単です(それも解説します)。しかし、複数のメールアドレス(例としてaaa@example.jpとbbb@example.jpとしましょう)を持っており、aaa@example.jpをaaa@example.jpへ転送する一方、bbb@example.jpは転送しないという場合もあります(bbb@example.jpは存在していたとしてもです)。 ここでは、こういう複雑な要因が絡んだ時のqmailの設定方法を解説します。 なお、ほとんど制御ファイル(デフォルトでは/var/qmail/control)とエイリアス(デフォルトでは/var/qmail/alias)の設定で解決します。 複数ドメインの平行稼動DNSの設定に関しては解説しませんが、とりあえず正引きデータは2つ分用意し、それぞれMXレコードを定義します。うちではdelta0.netへのメールは、d77.jpが管理するような設定にしてありますが、まぁ特に凝った設定は必要ありません。優先度も同一でいいです(1つのサーバに優先も何もないですから)。 次にqmailの設定です。既に一方のドメインで正常稼動する状態であるとします。ここでは、d77.jpでqmailが稼動しており、そこにdelta0.netドメインを追加します。 重要な制御ファイルは2つ、「locals」と「rcpthosts」です。「me」は1ドメインしか書けないのでここでは関係ありません。 「locals」には、複数のドメイン、、、例に沿って説明すると「d77.jp」と「delta0.net」を記述します。基本的にはこれで複数ドメインに対応完了ですが、「rcpthosts」も設定しないとSPAMと勘違いされて遮断されますの。基本的には「rcpthosts」の内容は「locals」と同じになります。環境によってもしかすると違う設定になるかも知れませんので注意が必要です。 設定はこれで完了。ちなみに「rcpthosts」は変更後即座に反映されるようですが、「locals」はqmailを再起動しないと反映されないようです(これで一日悩みました^^;)。 再起動しなかったり、間違えた設定をすると「Sorry. Although I’m listed as a best-preference MX or A for that host,it isn’t in my control/locals file, so I don’t treat it as local. (#5.4.6)」のようなエラーが出ます。 特定のメールを受信する。(2002/10/29)ここで解説するのは、たとえば、example.jp1とexample.jp2というドメインを並行稼動していた場合に、以下のようなパターンでメールを受信したい場合の設定です。 ※全て例のメアドなので、送っても無駄です。
まず、必要なのが制御ファイル「rcpthosts」。これに受信する全てのドメインを記述します。上記の例なら、「example.jp1」と「example.jp2」です。ちなみに「locals」は不要です。 次に制御ファイル「virtualdomains」を設定します。設定内容は「2つ目のドメイン:転送用の名前」です。転送用の名前は何でもいいですけど、次のaliasに影響します。例として「transfar」とした場合、上記の例と照らし合わせると「example.jp2:transfar」です。 こうすると何が起きるかと言うと、「aaa@example.jp2」へメールを送ったとき、「transfar-aaa@example.jp1(転送用の名前-メアドのユーザ名@制御ファイルmeのドメイン)」というメールアドレスとして受信します。 さて、これにより、「aaa@example.jp2」は「transfar-aaa@example.jp1」へ「bbb@example.jp2」は「transfar-bbb@example.jp2」へ送られるようになります。当然「transfar-???@example.jp1」というメールボックスが無ければエラーになります。というかそういうメールボックスは無いように制御ファイル「virtualdomains」を設定してください。 最後に「aaa@example.jp2:aaa@example.jp1で受信」という設定をします」。上記の設定により「aaa@example.jp2」は「transfar-aaa@example.jp1」へ送られるようになったので、エイリアスを設定してやれば「transfar-aaa@example.jp1」を「aaa@example.jp2」へ送ることが出来ます。 エイリアスの設定はエイリアスディレクトリ(デフォルトで「/var/qmail/alias/」)に「.qmail-transfar-aaa(.qmail-転送元アドレスのユーザ名)」というファイルを作成し、内容を「aaa」とするだけです。 これにより、「aaa@example.jp2」は「transfar-aaa@example.jp1」として受信され、エイリアスにより「aaa@example.jp1」で受信可能となるわけです。 「bbb@example.jp1」のようにエイリアス設定されていないメールは、メールボックスが無いので、送信元に「Sorry, no mailbox here by that name. (#5.1.1)」というメールが返信されます。
Apacheの概要
|
|||||||||||
|
Copyright © 2026 Delta's web sites. - All Rights Reserved Powered by WordPress & Atahualpa |
|||||||||||