FreeBSD QandA 1217
Q. qpopper の USER/PASS認証で ユーザ として
root,toor,daemon,operator,bin,games,news,man,uucp,xten,nobody
を指定すると、正しいパスワードを与えているのに以下のように
失敗してしまいます。なぜですか?
% telnet news pop3
Trying 192.168.1.1...
Connected to foo.bar.org.
Escape character is '^]'.
+OK QPOP (version 2.53) at foo.bar.org starting. <3185.919126589@foo.bar.org>
USER news
+OK Password required for news.
PASS HogeHogeFuga
-ERR Password supplied for "news" is incorrect.
+OK Pop server at foo.bar.org signing off.
Connection closed by foreign host.
A. qpopper には、接続を拒否するユーザリストを与えることができます。
FreeBSD の portsや、packages からインストールした場合、デフォルトでは
Makefile で ftp の接続拒否ユーザリストである /etc/ftpusers を指定してます。
O_DEFS= -DSETPROCTITLE -DKEEP_TEMP_DROP -DBSD44_DBM -DBIND43 \
-DBULLDB -DNONAUTHFILE='\"/etc/ftpusers\"'
ユーザ news は、/etc/ftpusers にデフォルトで記述されていますので
失敗するわけです。
では、/etc/ftpusers からユーザ news の記述をはずせばいいかというと、
そうではないようです。
ユーザ news は、/etc/passwd にデフォルトで存在するユーザで、UID が 8 です。
恐らくセキュリティ上の理由からだと思われますが、
qpopper は UID が 10以下のユーザの接続を拒否するようです。
実際、認証は、
Access is blocked for UIDs below 10
というエラーで失敗します。
ユーザ news で qpopper に接続する理由が単に news 宛のメイル取得であれば、
/etc/aliases で一般ユーザに振ることで解決できるでしょう。
間違い・追加情報を見付けた場合は、
修正案の投稿のしかた を読んだ上で、
QandA@jp.FreeBSD.org まで
お知らせください。