サーバー設定 · 1 min read · Dec 30, 2025
CentOS 5.1 における Virtualmin を使用した仮想ホスティングの手引き - ページ 4
Dovecot の設定
はじめに
これにより、dovecot を IMAP/POP3 サーバーとして設定します。
基本設定
IMAP と POP3 用に dovecot を設定し、SSL を無効にします。
protocols = imap pop3
listen = *
ssl_listen = *
ssl_disable = yes
Maildir
デフォルトの mbox 形式ではなく、maildir 形式を使用します。
mail_location = maildir:~/Maildir
認証と SASL
多くの MS クライアントが暗号化された認証メカニズムを使用できないため、LOGIN と PLAIN を認証メカニズムとして使用するように dovecot を設定します。また、dovecot を使用して SMTP 接続を認証するために postfix が SASL ソケットを設定します。
auth default {
mechanisms = plain login
passdb pam {
}
userdb passwd {
}
socket listen {
client {
path = /var/spool/postfix/private/auth
mode = 0660
user = postfix
group = postfix
}
}
}
クライアントの問題
Outlook ファミリーの一部の MS IMAP クライアントは、IMAP と POP3 の実装に問題があるため、これらの回避策を設定する必要があります。
protocol imap {
imap_client_workarounds = outlook-idle delay-newmail
}
protocol pop3 {
pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
}
プロキシの背後で IMAP を実行
IMAP サーバーはポート 10143 で実行されるように設定されており、ポート 143 は IMAP プロキシサーバーによって処理され、IMAP サーバーへの接続をキャッシュすることでウェブメールのパフォーマンスが向上します。プロトコルの下のリッスンオプションでこれを設定します。
protocol imap {
imap_client_workarounds = outlook-idle delay-newmail
listen = 127.0.0.1:10143
}
サンプルファイル
- dovecot.conf
IMAP プロキシの設定
はじめに
imapproxy は、IMAP サーバーへの永続的な接続を維持できないウェブメールクライアントを補うために書かれました。ほとんどのウェブメールクライアントは、ほぼすべてのトランザクションのために IMAP サーバーにログインする必要があります。この動作は、IMAP サーバーに悲惨なパフォーマンスの問題を引き起こす可能性があります。imapproxy は、ウェブメールクライアントがログアウトした後、サーバー接続を短時間オープンに保つことでこの問題に対処しようとします。ウェブメールクライアントが再接続すると、imapproxy はキャッシュされた接続が利用可能かどうかを判断し、可能であれば再利用します。 - imapproxy ウェブサイトによる。
設定
/etc/imapproxy.conf ファイルに次の変更を加えます:
server_hostname 127.0.0.1
cache_size 3072
listen_port 143
server_port 10143
cache_expiration_time 900
proc_username nobody
proc_groupname nobody
stat_filename /var/run/pimpstats
protocol_log_filename /var/log/imapproxy_protocol.log
syslog_facility LOG_MAIL
send_tcp_keepalives no
enable_select_cache yes
foreground_mode no
force_tls no
enable_admin_commands no
サンプルファイル
- imapproxy.conf
Bind の設定
はじめに
Bind はセキュリティを向上させるために chroot されて設定され、DNS サーバーの悪用を防ぐためにビューも使用します。
基本設定
基本設定では、デフォルトで再帰的クエリとゾーントランスファーが無効になります。また、実行中の BIND のバージョンを隠すことで、スクリプトキディからのゼロデイ脆弱性の影響を受けないようにします。
options {
directory "/var/named";
pid-file "/var/run/named/named.pid";
listen-on {
127.0.0.1;
192.168.1.5;
};
version "just guess";
allow-recursion { "localhost"; };
allow-transfer { "none"; };
};
ロギング
ロギングは、ログに表示される迷惑な “lame-server” と更新エラーを削除するようにカスタマイズされています:
logging {
category update { null; };
category update-security { null; };
category lame-servers{ null; };
};
Chroot
これは /etc/sysconfig/named ファイルに設定されていることを確認してください(通常は bind-chroot パッケージによって設定されます):
ROOTDIR=/var/named/chroot
ポイントサーバー
このサーバーを DNS 解決に使用するようにマシンを設定し、/etc/resolv.conf を編集して先頭に追加します:
nameserver 127.0.0.1
サンプルファイル
- named.conf
- /etc/sysconfig/named
Vsftpd の設定
はじめに
vsftpd を FTP サーバーとして使用します。これは proftpd および wuftpd サーバーに比べて優れた実績があります。
基本設定
基本設定では、匿名ユーザーを無効にし、ローカルシステムユーザーが FTP サーバーに接続できるようにします。
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
ftpd_banner=Welcome to example.com server
pam_service_name=vsftpd
tcp_wrappers=YES
Chroot
すべてのユーザーは自分のホームディレクトリに chroot されます(/etc/vsftpd/chroot_list ファイル内のユーザー名を除く)。つまり、他のユーザーのファイルを見たりすることはできません。
chroot_list_enable=YES
chroot_local_user=YES
chroot_list_file=/etc/vsftpd/chroot_list
禁止ユーザー
/etc/vsftpd/user_list ファイルに追加されたユーザーはログインを許可されません:
userlist_enable=YES
サンプルファイル
- vsftpd.conf
- user_list
- chroot_list
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。