slashwalker
New Member
Hallo Forum,
ich habe hier meinen eigenen kleinen Mailserver basierend auf CentOS 5.4 mit Postfix und Dovecot. Der Server bedient nur 3 Domains, welche bisher nur 5 Postfächer hatten. Daher habe ich alles mit *.db Dateien geregelt.
Nun wird es aber zunehmend voller auf dem Server und die Pflege über diese *.db Dateien macht keinen Spaß mehr.
Ich möchte also Postfix und Dovecot nachträglich auf MySQL umstellen. Das ganze sollte natürlich ohne Verluste ablaufen
Hier die Ausgabe von postconf -n:
Und hier die dovecot.conf (hab alles entfernt, was auskommentiert war):
Ich habe irgendwo gelesen, das die CentOS Version von Postfix kein MySQL kann. Also muss ich den wohl über das CentOS Plus Repo installieren.
Aber wie geht es dann weiter? Möchte weder Konten, noch Mails verlieren.
Hab bisher lediglich nach einem Tut die DB 'mail' angelegt:
Also, wie jubel ich Dovecot und Postfix nun die DB unter?
ich habe hier meinen eigenen kleinen Mailserver basierend auf CentOS 5.4 mit Postfix und Dovecot. Der Server bedient nur 3 Domains, welche bisher nur 5 Postfächer hatten. Daher habe ich alles mit *.db Dateien geregelt.
Nun wird es aber zunehmend voller auf dem Server und die Pflege über diese *.db Dateien macht keinen Spaß mehr.
Ich möchte also Postfix und Dovecot nachträglich auf MySQL umstellen. Das ganze sollte natürlich ohne Verluste ablaufen
Hier die Ausgabe von postconf -n:
Code:
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
debug_peer_level = 2
html_directory = no
inet_interfaces = all
mail_owner = postfix
mailbox_size_limit = 0
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = localhost
mydomain = example.de
myhostname = example.de
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = no
recipient_delimiter = +
sample_directory = /usr/share/doc/postfix-2.3.3/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
smtpd_banner = $myhostname ESMTP
smtpd_client_restrictions = permit_mynetworks,permit_sasl_authenticated, reject_invalid_hostname, reject_unknown_client
smtpd_recipient_limit = 250
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $mydomain
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_sender_restrictions = permit_mynetworks, reject_unknown_address,reject_unknown_sender_domain
smtpd_tls_auth_only = yes
smtpd_tls_cert_file = /etc/pki/dovecot/certs/dovecot.pem
smtpd_tls_key_file = /etc/pki/dovecot/private/dovecot.pem
smtpd_tls_received_header = yes
smtpd_tls_security_level = may
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
tls_random_source = dev:/dev/urandom
unknown_local_recipient_reject_code = 550
virtual_alias_maps = hash:/etc/postfix/virtual_alias
virtual_gid_maps = static:5000
virtual_mailbox_base = /var/mail/vhosts
virtual_mailbox_domains = /etc/postfix/virtual_domains
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_minimum_uid = 100
virtual_transport = dovecot
virtual_uid_maps = static:5000
Und hier die dovecot.conf (hab alles entfernt, was auskommentiert war):
Code:
protocols = imaps pop3s
disable_plaintext_auth = yes
log_path =/var/log/dovecot
ssl_cert_file = /etc/pki/dovecot/certs/dovecot.pem
ssl_key_file = /etc/pki/dovecot/private/dovecot.pem
login_greeting = Dovecot ready.
protocol lda {
postmaster_address = postmaster@example.de
hostname =example.de
auth_socket_path = /var/run/dovecot/auth-master
}
auth default {
mechanisms = digest-md5 cram-md5 ntlm
passdb passwd-file {
# File contains a list of usernames, one per line
args = /var/mail/vhosts/%d/shadow
#deny = yes
}
userdb passwd-file {
args =/var/mail/vhosts/%d/passwd
}
user = root
socket listen {
master {
path = /var/run/dovecot/auth-master
mode = 0600
user = vmail
group = vmail
}
client {
path = /var/spool/postfix/private/auth
mode = 0660
user=postfix
group=vmail
}
}
}
}
Ich habe irgendwo gelesen, das die CentOS Version von Postfix kein MySQL kann. Also muss ich den wohl über das CentOS Plus Repo installieren.
Aber wie geht es dann weiter? Möchte weder Konten, noch Mails verlieren.
Hab bisher lediglich nach einem Tut die DB 'mail' angelegt:
Code:
CREATE TABLE `domains` (
`domain` varchar(50) NOT NULL,
PRIMARY KEY (`domain`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
CREATE TABLE `forwardings` (
`source` varchar(80) NOT NULL,
`destination` text NOT NULL,
PRIMARY KEY (`source`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
CREATE TABLE `users` (
`email` varchar(80) NOT NULL,
`password` varchar(255) NOT NULL,
`quota` int(10) DEFAULT '10485760',
PRIMARY KEY (`email`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Also, wie jubel ich Dovecot und Postfix nun die DB unter?
Last edited by a moderator: