Monthly Archives: 3月 2008

メールサーバーの構築(3)

なかなかバーチャルユーザーでのメールサーバーがうまくいかないので、まずはLinuxユーザーでのメール送受信をしてみました。(今回は成功しています。)

構成はPostfix(とりあえずSSLなしのSMTP) + SASL2によるSMTP-Auth + OP25B対策のためISP(eo)のサーバーを経由 + Courier(IMAP,POP) よってMaildir形式です。いたって標準的な構成です。
外部に解放するポートは
送信に必須(25,587)
WANからSSLなしでメールチェックをする場合に必要(110,143)
WANからSSLありでメールチェックをする場合に必要(995,993)
です。

Read more …

AFP経由のrsync

検証というほど大それたものではありませんが。
教えて頂いたCJKパッチを当てたnetatalkをインストール済みのDebianにLeopardからAFP経由でrsyncを使ってiTunesフォルダをバックアップしてみました。

SSH経由でバックアップしたときはファイル名によってMac側から開けないファイルがあったのですが、そのような現象はありませんでした。

これで安心してiTunesのバックアップがとれます。
CJKパッチやCoreFoundationによるdecompose/precomposeの変換についてもご丁寧に教えでくださったHATさんには自サイト上で申し訳ありませんが、お礼申し上げます。

メールサーバーの構築(2)

すいません。以前書いたメールサーバーの設定ですが書くのを忘れていましたが殆ど自分のためのメモです。
なんかいろいろいじってたらうまくいってやり方は忘れてしまったということがよくあるので…

実のところ全然できていません。一時メールが受信できるようになったのに次の瞬間ユーザー名とパスワードが通らなかったり。SMTPは全然だめだし。OP25Bが施されているプロバイダ(K-OPTI.COM)なので25番ポートでの標準的な送信ができないし。

以前書いた諸事情で30日までには成功させないといけません。そのときにはちゃんとまとめる予定です。自分のためにも…

rsyncの件ですが近日中にパッチをあてたAFP経由でrsyncしてみます。なにせiTunesライブラリのバックアップで80G弱必要なところにiTunesバックアップ用に準備したハードディスクが80Gで。いったん全部消さないといけないなと思っています。一からした方が気分がいいので。
HATさんにはいつもご丁寧に教えていただき大変勉強になっております。本当にありがとうございます。

今日21日は昼頃から学校で単位認定会議です。高三になれるかどうかが決まる日なのですが、大丈夫であることを祈ります。2回も入院したり退院後もときどき休んだりして出席日数が….なので。欠課のところはどうなるのか…英語も…

netatalkをCJKパッチ付きでインストール

HATさんに当サイトへトラックバックしていただいた「Netatalk 2.0.3 with SSL and CJK on Debian 4.0」を実践してみました。
理由はDebian上のファイルをAFP経由Macからでファイルの一覧は正常に取得できるのに特定のファイルが開こうとマウスで選択した瞬間Finderから消失するという現象があったので、CJKパッチを当てたら直るかなぁという希望があったのです。(同じファイルでもファイル名を変更すると正常にAFP経由でも開けるので。)

こちらのページでは大変丁寧に順番が記載されているので簡単にインストールすることができました。

<font color="#0000FF">~/</font>$ cd /tmp/
<font color="#0000FF">/tmp</font>$ mkdir netatalkbuild
<font color="#0000FF">/tmp</font>$ cd netatalkbuild/
<font color="#0000FF">/tmp/netatalkbuild</font>$ export LANG=ja_JP.UTF-8
<font color="#0000FF">/tmp/netatalkbuild</font>$ echo $LANG
ja_JP.UTF-8
<font color="#0000FF">/tmp/netatalkbuild</font>$ sudo apt-get install fakeroot
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
fakeroot はすでに最新バージョンです。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 71 個。
<font color="#0000FF">/tmp/netatalkbuild</font>$ sudo apt-get install libssl-dev cracklib2-dev
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
libssl-dev はすでに最新バージョンです。
cracklib2-dev はすでに最新バージョンです。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 71 個。
<font color="#0000FF">/tmp/netatalkbuild</font>$ apt-get source netatalk
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
1947kB のソースアーカイブを取得する必要があります。
取得:1 http://ftp.jp.debian.org etch/main netatalk 2.0.3-4 (dsc) [802B]
取得:2 http://ftp.jp.debian.org etch/main netatalk 2.0.3-4 (tar) [1921kB]
取得:3 http://ftp.jp.debian.org etch/main netatalk 2.0.3-4 (diff) [26.1kB]
1947kB を 1s で取得しました (1492kB/s)
gpg: Signature made 2006年01月14日 17時30分38秒 JST using DSA key ID 496A1827
gpg: Can't check signature: public key not found
dpkg-source: extracting netatalk in netatalk-2.0.3
dpkg-source: unpacking netatalk_2.0.3.orig.tar.gz
dpkg-source: applying ./netatalk_2.0.3-4.diff.gz
<font color="#0000FF">/tmp/netatalkbuild</font>$ sudo apt-get build-dep netatalk
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 71 個。
<font color="#0000FF">/tmp/netatalkbuild</font>$ wget http://www003.upp.so-net.ne.jp/hat/files/netatalk-2.0.3-cjk-4.patch.gz
--22:54:47--  http://www003.upp.so-net.ne.jp/hat/files/netatalk-2.0.3-cjk-4.patch.gz
           =&gt; `netatalk-2.0.3-cjk-4.patch.gz'
www003.upp.so-net.ne.jp をDNSに問いあわせています... 210.132.253.3
www003.upp.so-net.ne.jp|210.132.253.3|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 32,916 (32K) 1

100%[====================================&gt;] 32,916        --.--K/s

22:54:47 (1.00 MB/s) - `netatalk-2.0.3-cjk-4.patch.gz' を保存しました [32916/32916]

<font color="#0000FF">/tmp/netatalkbuild</font>$ zcat netatalk-2.0.3-cjk-4.patch.gz &gt; netatalk-2.0.3/debian/patches/999-netatalk-2.0.3-cjk-4.diff
<font color="#0000FF">/tmp/netatalkbuild</font>$ DEB_BUILD_OPTIONS="ssl debuild"
<font color="#0000FF">/tmp/netatalkbuild</font>$ export DEB_BUILD_OPTIONS
ssl debuild
<font color="#0000FF">/tmp/netatalkbuild</font>$ cd netatalk-2.0.3
<font color="#0000FF">/tmp/netatalkbuild/netatalk-2.0.3</font>$ dpkg-buildpackage -rfakeroot

コンパイル中......

<font color="#0000FF">/tmp/netatalkbuild/netatalk-2.0.3</font>$ sudo dpkg -r netatalk
(データベースを読み込んでいます ... 現在 105050 個のファイルとディレクトリがインストールされています。)
netatalk を削除しています ...
Stopping AppleTalk Daemons: afpd papd timelord atalkd cnid_metad.
<font color="#0000FF">/tmp/netatalkbuild/netatalk-2.0.3</font>$ cd ../
<font color="#0000FF">/tmp/netatalkbuild</font>$ sudo dpkg -i netatalk_2.0.3-4_i386.deb
未選択パッケージ netatalk を選択しています。
(データベースを読み込んでいます ... 現在 104899 個のファイルとディレクトリがインストールされています。)
(netatalk_2.0.3-4_i386.deb から) netatalk を展開しています...
netatalk (2.0.3-4) を設定しています ...

設定ファイル `/etc/default/netatalk'
 ==&gt; これはインストールしてから (あなたかスクリプトによって) 変更されています。
 ==&gt; パッケージ配布元が更新版を提供しています。
   どうしますか? 以下の選択肢があります:
    Y か I  : パッケージメンテナのバージョンをインストールする
    N か O  : 現在インストールされている自分のバージョンを残す
      D     : 両バージョンの差異を表示する
      Z     : この処理をバックグラウンドにし、状況を確認する
 デフォルトでは現在使っている自分のバージョンを残します。
*** netatalk (Y/I/N/O/D/Z) [デフォルト=N] ? <font color="#ff0000">Y</font>
設定ファイル /etc/default/netatalk を新規にインストールしています ...
設定ファイル /etc/pam.d/netatalk を新規にインストールしています ...
Starting AppleTalk services (this will take a while):  atalkd papd afpd cnid_metad.

インストールは以上です。以下は設定ファイルの変更。

「/etc/default/netatalk」の

export ATALK_MAC_CHARSET
export ATALK_UNIX_CHARSET</code>

export ATALK_MAC_CHARSET<font color="#ff0000">='MAC_JAPANESE'</font>
export ATALK_UNIX_CHARSET<font color="#ff0000">='UTF8'</font></code>

に変更。(UTF8は付け加えました。)

「/etc/netatalk/afpd.conf」の最後の行に

- -uamlist uams_dhx.so,uams_clrtxt.so -maccodepage MAC_JAPANESE</code>

を追記。

「/etc/netatalk/AppleVolumes.default」のコメント群の最後

# By default all users have access to their home directories.</code>

の下に

:DEFAULT: options:upriv,usedots cnidscheme:dbd maccharset:MAC_JAPANESE</code>

を追加。

念のためavahi-daemonの確認。
「/etc/avahi/services/afpd.service」を以下の内容で作成。

&lt;?xml version="1.0" standalone='no'?&gt;
&lt;!DOCTYPE service-group SYSTEM "avahi-service.dtd"&gt;
&lt;service-group&gt;
        &lt;name replace-wildcards="yes"&gt;%h&lt;/name&gt;
        &lt;service&gt;
                &lt;type&gt;_afpovertcp._tcp&lt;/type&gt;
                &lt;port&gt;548&lt;/port&gt;
        &lt;/service&gt;
&lt;/service-group&gt;</code>

でavahi-daemonの再起動。

$ sudo /etc/init.d/avahi-daemon restart</code>

さて、最後に緊張のCJKパッチの確認とSSLが有効になっているかの確認をコマンドを2つ実行して行います。
赤字の部分が確認事項です。
/tmp/netatalkbuild$ /usr/sbin/afpd -V
afpd 2.0.3+cjk4 – Apple Filing Protocol (AFP) daemon of Netatalk

This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version. Please see the file COPYING for further information and details.

afpd has been compiled with support for these features:

AFP3.1 support: Yes
Transport layers: TCP/IP DDP
CNID backends: cdb dbd last
SLP support: Yes
TCP wrappers support: Yes
Quota support: Yes
Admin group support: Yes
Valid shell checks: Yes
cracklib support: Yes
Dropbox kludge: No
Force volume uid/gid: No

afpd.conf: /etc/netatalk/afpd.conf
AppleVolumes.system: /etc/netatalk/AppleVolumes.system
AppleVolumes.default: /etc/netatalk/AppleVolumes.default
UAM search path: /usr/lib/netatalk/

/tmp/netatalkbuild$ /usr/bin/asip-status.pl localhost
AFP reply from localhost:548
Flags: 1 Cmd: 3 ID: 57005
Reply: DSIGetStatus
Request ID: 57005
Machine type: Netatalk
AFP versions: AFPVersion 1.1,AFPVersion 2.0,AFPVersion 2.1,AFP2.2,AFPX03,AFP3.1
UAMs: Cleartxt Passwrd,DHCAST128
Flags: SupportsCopyFile,SupportsServerMessages,SupportsServerSignature,SupportsTCP/IP,SupportsSrvrNotifications,SupportsOpenDirectory,SupportsUTF8Servername,SupportsSuperClient
Server name: Debian-Server
Signature:
** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** …………….

Network address: ***.***.*.** (TCP/IP address)
Network address: *****.*** (ddp address)
UTF8 Servername: Debian-Server

これでOKです。Leopardからも接続確認できました。
しかし、残念ながら最初に書いたような現象は改善されず。
rsync経由でMacからSSHで送ったファイルの一部が駄目なようです。
iTunesのバックアップをSSH経由でやっているのですが今度SSHではなくAFPでマウントして同期してみようと思います。

メールサーバーの構築(1)

メールサーバーの構築をしてみようと思う。
きっかけは友達にメールサーバーの設置方法を教えてほしいと言われたからだ。(なんと単純な…)
まずは実験ということでMac上のParallels DesktopにDebianをクリーンインストールし、一から設置しようと思う。(成功してません)

目標:Postfix + PostfixAdmin + MySQL + Courier-IMAP でOP25B対策付きのPOP/IMAP 仮想ユーザー環境

クリーンインストールからの実験なのでSQLのインストールも一からする。ということはApacheとかも…
ということでめんどくさいのでセキュリティと保守性は無視していきます。

とりあえず本格的な設定に入るまで…(Courier-IMAPにはまだ手をつけてません)
Read more …