コンパイルエラーになるので手動でインストール
# wget https://dovecot.org/releases/2.3/dovecot-2.3.10.1.tar.gz
# tar xvfz dovecot-2.3.10.1.tar.gz
# cd dovecot-2.3.10.1
./configure \ --disable-static \ --disable-rpath \ --with-nss \ --with-shadow \ --with-pam \ --with-gssapi=plugin \ --with-ldap=plugin \ --with-sql=plugin \ --with-pgsql \ --with-mysql \ --with-sqlite \ --with-zlib \ --with-libcap \ --with-lucene \ --with-ssl=openssl \ --with-ssldir=%{ssldir} \ --with-solr \ --with-systemdsystemunitdir=%{_unitdir} \ --with-vpopmail \ --with-docs
#make
#make install
/etc/init.d/dovecot
#!/bin/bash # # /etc/rc.d/init.d/dovecot # # Starts the dovecot daemon # # chkconfig: 2345 85 85 # description: Dovecot Imap Server # processname: dovecot # Source function library. . /etc/init.d/functions test -x /usr/local/sbin/dovecot || exit 0 RETVAL=0 prog="Dovecot IMAP" start() { echo -n $"Starting $prog: " rm -f /usr/local/var/run/dovecot/master.pid daemon /usr/local/sbin/dovecot RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/dovecot echo } stop() { echo -n $"Stopping $prog: " killproc /usr/local/sbin/dovecot RETVAL=$? [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/dovecot echo } # # See how we were called. # case "$1" in start) start ;; stop) stop ;; reload|restart) stop start RETVAL=$? ;; condrestart) if [ -f /var/lock/subsys/dovecot ]; then stop start fi ;; status) status /usr/local/sbin/dovecot RETVAL=$? ;; *) [#w99a9935] echo $"Usage: $0 {condrestart|start|stop|restart|reload|status}" exit 1 esac exit $RETVAL
chmod +x /etc/init.d/dovecot
続きは★★に
●設定ファイルのコピー
cp -rf /usr/local/share/doc/dovecot/example-config/* ./
★★
# vi /etc/dovecot/dovecot.conf ← Dovecot設定ファイル編集
protocols = imap listen = *
# vi /etc/dovecot/conf.d/10-auth.conf
#!include auth-system.conf.ext !include auth-vpopmail.conf.ext ← ※認証をvpopmailで行う設定。
# 10行目:コメント解除し変更(プレーンテキスト認証も許可する) disable_plaintext_auth = no
# 100行目:追記 auth_mechanisms = plain login
# vi /etc/dovecot/conf.d/10-mail.conf
# 30行目:コメント解除して追記 mail_location = maildir:~/Maildir first_valid_uid = 89 ※first_valid_uid は、認証を許可するユーザIDの最小値。だと思う。 なので今回はvpopmailユーザーの89を指定。
# vi /etc/dovecot/conf.d/10-master.conf
default_login_user = dovecot service imap-login { #inet_listener imap {private_words_default #port = 143 #} inet_listener imaps { port = 993 ssl = yes } #service lmtp { # unix_listener lmtp { # #mode = 0666 # } #}
# vi /etc/dovecot/conf.d/10-ssl.conf
# 8行目:変更 ssl = yes ssl_cert = </etc/pki/tls/certs/domainname1.csr ssl_key = </etc/pki/tls/certs/domainname1.key ※SSL/TLSのキー指定。Apacheのを流用。
# vi /etc/dovecot/conf.d/auth-vpopmail.conf.ext
#args = quota_template=quota_rule=*:backend=%q
# /etc/init.d/dovecot start
chkconfig dovecot on ← dovecot起動&自動起動設定
========================================
# dnf -y install yum-utils ← yumでSRPMをダウンロードするyumdownloaderを含むyum-utilsをインストール
# dnf -y install rpm-build ← yumでrpm-buildをインストール
# dnfdownloader --source dovecot ← DovecotのSRPMをダウンロード
warning: user mockbuild does not exist - using root エラーメッセージで検索したら下記のページが参考になりました。 Warning: user mockbuild does not exist: using root | System Network Programming Solution – Linux – windows – centos- security- cpanel – plesk -directadmin helm yum で mock をインストールする。 yum install mock もしくは下記のコマンドで mockbuild を追加すると良いそうです。 useradd -s /sbin/nologin mockbuild
# rpm -ivh dovecot-2.2.32-2.fc26.src.rpm ← DovecotのSRPMを展開
# vi /root/rpmbuild/SPECS/dovecot.spec ← specファイル編集
%configure \ INSTALL_DATA="install -c -p -m644" \ --with-libcap \ --with-libwrap \ --with-vpopmail \ ← 追加
# rpmbuild -bb --clean /root/rpmbuild/SPECS/dovecot.spec ← DovecotのRPMを作成
エラー: ビルド依存性の失敗: がでるので、○○-develをインストールする yum -y install bzip2-devel
先にインストールされている場合は削除する dnf remove dovecot
# rpm -ivh /root/rpmbuild/RPMS/x86_64/dovecot-2.2.32-2.fc26.x86_64.rpm ← Dovecotインストール
#[root@mail ~]# systemctl start dovecot
#[root@mail ~]# systemctl enable dovecot