APOPfilter は APOP に対応していない POP サーバで APOP を使用できるようにするためのプログラムです。
このプログラムは Ruby ライセンスに従います。
クライアントから接続を受け付け、USER,PASS,APOP,QUIT 命令を処理します。 PASS または APOP 命令成功後、本当の POP サーバに接続します。
事前に、POPサーバにアクセスするための、ログインIDと平文パスワードをファイルまたは MySQL または LDAP データベース上に作成しておく必要があります。
ファイルの場合は、ログインIDと平文パスワードを「:」で区切って、1行1IDでファイルに記述し、apopfiltermap コマンドの引数にファイル名を指定して実行してください。デフォルトのファイル名は /etc/apoppw です。
例
# cat /etc/apoppw hoge:pwd-of-hoge # apopfiltermap /etc/apoppw
apopfilter と同じディレクトリに apopfilter.conf という名前のファイルがある場合はそれが読み込まれます。記述内容は apopfilter.conf.sample を参考にしてください。
設定できるパラメータは以下の通りです。
パラメータ | 意味 | デフォルト値 |
---|---|---|
$port | APOPfilter のポート番号 | 10110 |
$pop_server | POPサーバのホスト名またはIPアドレス | 127.0.0.1 |
$pop_port | POPサーバのポート番号 | 110 |
$apop_only | true の場合は USER/PASS認証を使用しない | false |
$auth_method | 認証方式の指定(file または mysql または ldap) | file |
$error_interval | POPエラー時に応答が返されるまでの秒数 | 5 |
$banner | クライアント接続時に返される文字列 | apopfilter ready |
$hostname | ホスト名 | `uname -n`.chomp |
$connection_keep_time | 最大接続維持時間(秒数)。これを超えると正常に通信できていても接続を切断します。 | 3600(1時間) |
$command_timeout | 最大コマンド待ち時間(秒数)。この時間クライアントからの入力がないと接続を切断します。 | 600(10分間) |
$syslog_facility | シスログのファシリティ | Syslog::LOG_MAIL |
$auth_method="file" 時に有効なパラメータ | ||
$apop_passwd_file | ログインIDと平文パスワードのファイル名 | /etc/apoppw |
$auth_method="mysql" 時に有効なパラメータ | ||
$mysql_server | MySQLサーバ名 | nil |
$mysql_user | MySQL接続ユーザ名 | nil |
$mysql_pass | MySQL接続パスワード | nil |
$mysql_db | MySQLデータベース名 | nil |
$mysql_table | MySQLテーブル名 | apop |
$mysql_userfield | ログイン名フィールド名 | user |
$mysql_pwfield | 平文パスワードフィールド名 | passwd |
$auth_method="ldap" 時に有効なパラメータ | ||
$ldap_server | LDAPサーバ名 | localhost |
$ldap_port | LDAPポート番号 | 389 |
$ldap_dn | bindするDN(nil時はbindしない) | nil |
$ldap_passwd | bind時のパスワード | nil |
$ldap_base | 検索するベースDN | nil |
$ldap_filter | 検索フィルタ。%sがユーザ名に置換される | uid=%s |
$ldap_passwd_attribute | 平文パスワード属性名 | userPassword |
0.2 2003-12-10 ・LDAP機能追加 0.1 2003-11-02 ・公開
Last modified: Wed Dec 10 19:00:00 JST 2003