Cyrus SASL
その他UNIX系
Cyrus SASL とは
SASL とは Simple Authentication and Security Layer の略で認証や暗号化の機能を追加することを目的としたレイヤです。
Cyrus SASL は、これを実現するライブラリやアプリケーション群です。
これ単体では特別な利用価値はないですが、他のアプリケーションと組み合わせることにより、効果を発揮します。
インストール
cyrus-sasl-2.1.22 の例です。
SASL の公式サイトのダウンロードページよりアーカイブを取得し、展開します。
% gzip -dc cyrus-sasl-2.1.22.tar.gz | tar xvf - % cd cyrus-sasl-2.1.22
あとはお決まりの手順ですが、デフォルトだと不都合なことが多いようです。
私は以下のように openssl の path を明示的に指定し、PAM を無効にしました。(不要な上、これのせいでコンパイルエラーが出たので)
また、Outlook は SMTP 認証のうち LOGIN 認証しかサポートしていないため、Outlook に対応させるためには --enable-login=yes を指定する必要があります。
% ./configure --with-openssl=/usr/local/ssl --without-pam % make % su # make install
インストール自体はこれで終了ですが、このままにしておくと Postfix 等で SASL を使用する際にハマります。
他のアプリケーションから参照できるように、以下のように /usr/lib 以下に symbolic link しておきます。
# ln -s /usr/local/lib/sasl2 /usr/lib/sasl2
認証情報作成
SASL の認証情報はデフォルトで /etc/sasldb2 に作成されます。
この認証情報を作成・変更するには、以下のように saslpasswd2 コマンドを使用します。
# saslpasswd2 -c -u do.ma.in username
上記のコマンドを実行すると、パスワード入力プロンプトが表示されますので、パスワードを登録します。
パスワードが問題なければ、username に対して入力されたパスワードで登録します。
-c を指定すると、sasldb2 上に登録情報が無い場合には新規に作成されます。
-u を指定すると、username のドメイン情報を指定することが出来、Postfix で使用する際には、username だけでなく、このドメイン情報と myhostname が一致しているアカウントが対象のアカウントとなりパスワードのマッチングが行われます。
以下のようにすると、現在 sasldb2 に登録されている情報が表示されます。
# sasldblistusers2