Серверы · 5 min read · Oct 23, 2025
Идеальный сервер - Mandriva 2009.0 Free (x86_64) - Страница 5
10 MySQL (5.0)
Чтобы установить MySQL 5.0, просто выполните:
urpmi MySQL MySQL-client lib64mysql15-develПо умолчанию сетевое взаимодействие не включено в пакет MySQL Mandriva 2009.0, но оно требуется для ISPConfig. Мы можем изменить это, закомментировав строку skip-networking в /etc/my.cnf.
vi /etc/my.cnf| [...] # Не слушать на TCP/IP порту вообще. Это может быть улучшением безопасности, # если все процессы, которым нужно подключиться к mysqld, работают на одном хосте. # Все взаимодействие с mysqld должно происходить через Unix-сокеты или именованные каналы. # Обратите внимание, что использование этой опции без включения именованных каналов на Windows # (через опцию "enable-named-pipe") сделает mysqld бесполезным! # #skip-networking [...] |
После этого создаем системные ссылки для запуска MySQL…
chkconfig mysqld on… и запускаем его:
/etc/init.d/mysqld startТеперь проверьте, что сетевое взаимодействие включено. Выполните
netstat -tap | grep mysqlВывод должен выглядеть так:
[root@server1 var]# netstat -tap | grep mysql
tcp 0 0 *:mysql-im *:* LISTEN 3181/mysqlmanager
tcp 0 0 *:mysql *:* LISTEN 3190/mysqld
[root@server1 var]#Далее выполните
mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpasswordчтобы установить пароль для пользователя root (в противном случае любой сможет получить доступ к вашей базе данных MySQL!).
11 Postfix с SMTP-AUTH и TLS; Dovecot
Установите необходимые пакеты (Postfix, cyrus-sasl, Dovecot и т.д.) следующим образом:
urpmi cyrus-sasl lib64sasl2 lib64sasl2-devel lib64sasl2-plug-plain lib64sasl2-plug-anonymous lib64sasl2-plug-crammd5 lib64sasl2-plug-digestmd5 lib64sasl2-plug-gssapi lib64sasl2-plug-login postfix dovecotЗатем выполните:
postconf -e 'mydestination = /etc/postfix/local-host-names, localhost.$mydomain'
postconf -e 'smtpd_sasl_local_domain ='
postconf -e 'smtpd_sasl_auth_enable = yes'
postconf -e 'smtpd_sasl_security_options = noanonymous'
postconf -e 'broken_sasl_auth_clients = yes'
postconf -e 'smtpd_sasl_authenticated_header = yes'
postconf -e 'smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination'
postconf -e 'inet_interfaces = all'
postconf -e 'mynetworks = 127.0.0.0/8'
touch /etc/postfix/local-host-namesЗатем мы устанавливаем имя хоста в нашей установке Postfix (убедитесь, что вы заменили server1 и example.com на свои настройки):
postconf -e 'mydomain = example.com'
postconf -e 'myhostname = server1.$mydomain'Отредактируйте /etc/sasl2/smtpd.conf. Он должен выглядеть так:
vi /etc/sasl2/smtpd.conf| # Конфигурационный файл библиотеки SASL для postfix # все параметры задокументированы в: # /usr/share/doc/cyrus-sasl/options.html # Параметры mech_list перечисляют механизмы sasl, которые нужно использовать, # по умолчанию используются все найденные механизмы. mech_list: plain login # Для аутентификации с использованием отдельного демона saslauthd, (например, для # системных или ldap пользователей). Также смотрите /etc/sysconfig/saslauthd. pwcheck_method: saslauthd saslauthd_path: /var/lib/sasl2/mux # Для аутентификации против пользователей, хранящихся в sasldb. #pwcheck_method: auxprop #auxprop_plugin: sasldb #sasldb_path: /var/lib/sasl2/sasl.db |
Механизм аутентификации по умолчанию для saslauthd - pam, однако в Mandriva 2009.0, похоже, есть ошибка. Когда вы отправляете электронное письмо, первое проходит, и как только вы пытаетесь отправить второе письмо, saslauthd умирает. Вы можете найти сообщения вроде этого в /var/log/messages:
Oct 9 17:53:42 server1 saslauthd[4460]: server_exit : master exited: 4460Я нашел следующее решение: откройте /etc/sysconfig/saslauthd…
vi /etc/sysconfig/saslauthd… и измените SASL_AUTHMECH с pam на shadow:
| # $Id: saslauthd.sysconfig,v 1.1 2001/05/02 10:55:48 wiget Exp $ # Механизм аутентификации (для списка смотрите saslauthd -v) SASL_AUTHMECH=shadow # Имя хоста для удаленного IMAP сервера (если используется механизм аутентификации rimap) # Конфигурационный файл Ldap (если используется механизм аутентификации ldap) SASL_MECH_OPTIONS= # Дополнительные параметры (для списка смотрите saslauthd -h) SASLAUTHD_OPTS= |
Создайте SSL-сертификат, необходимый для TLS:
mkdir /etc/postfix/ssl
cd /etc/postfix/ssl/
openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024chmod 600 smtpd.key
openssl req -new -key smtpd.key -out smtpd.csropenssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out smtpd.crtopenssl rsa -in smtpd.key -out smtpd.key.unencryptedmv -f smtpd.key.unencrypted smtpd.key
openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650… и настройте Postfix для TLS:
postconf -e 'smtpd_tls_auth_only = no'
postconf -e 'smtp_use_tls = yes'
postconf -e 'smtpd_use_tls = yes'
postconf -e 'smtp_tls_note_starttls_offer = yes'
postconf -e 'smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key'
postconf -e 'smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt'
postconf -e 'smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem'
postconf -e 'smtpd_tls_loglevel = 1'
postconf -e 'smtpd_tls_received_header = yes'
postconf -e 'smtpd_tls_session_cache_timeout = 3600s'
postconf -e 'tls_random_source = dev:/dev/urandom'Далее мы должны настроить Dovecot для обслуживания протоколов imap, imaps, pop3 и pop3s. Откройте /etc/dovecot.conf и измените следующие значения:
vi /etc/dovecot.conf| [...] # Протоколы, которые мы хотим обслуживать: imap imaps pop3 pop3s # Если вы хотите использовать только dovecot-auth, вы можете установить это значение в "none". protocols = imap imaps pop3 pop3s [...] disable_plaintext_auth = no [...] pop3_uidl_format = %08Xu%08Xv [...] |
Теперь мы должны сказать системе запускать Dovecot только после того, как ntpd запустится, потому что Dovecot не очень прощает, если время вашей системы движется назад, пока Dovecot работает (см. http://wiki.dovecot.org/TimeMovedBackwards). Это может вызвать ошибки, подобные следующим, в вашем syslog:
Apr 9 19:29:18 server1 dovecot: Время только что переместилось назад на 17 секунд. Это может вызвать много проблем, поэтому я просто убью себя сейчас. http://wiki.dovecot.org/TimeMovedBackwardsК сожалению, в Mandriva Dovecot запускается до ntpd, поэтому мы изменяем это следующим образом:
cd /etc/rc3.d
mv S99ntpd S98ntpd
mv S54dovecot S99dovecot
cd /etc/rc4.d
mv S99ntpd S98ntpd
mv S54dovecot S99dovecot
cd /etc/rc5.d
mv S99ntpd S98ntpd
mv S54dovecot S99dovecotЗатем создаем системные ссылки для запуска Postfix…
chkconfig postfix on… и (пере)запускаем Postfix, saslauthd и Dovecot:
/etc/init.d/postfix restart
/etc/init.d/saslauthd restart
/etc/init.d/dovecot restartЧтобы проверить, работают ли SMTP-AUTH и TLS правильно, выполните следующую команду:
telnet localhost 25После того как вы установили соединение с вашим почтовым сервером Postfix, введите
ehlo localhostЕсли вы видите строки
250-STARTTLSи
250-AUTH PLAIN LOGINвсе в порядке:
[root@server1 rc5.d]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 server1.example.com ESMTP Postfix (2.5.5) (Mandriva Linux)
ehlo localhost
250-server1.example.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye
Connection closed by foreign host.
[root@server1 rc5.d]#Введите
quitчтобы вернуться в оболочку системы.
11.1 Maildir
Dovecot использует формат Maildir (не mbox), поэтому если вы установите ISPConfig на сервер, убедитесь, что вы включили Maildir в разделе Управление -> Сервер -> Настройки -> Электронная почта. ISPConfig затем выполнит необходимую конфигурацию.
Если вы не хотите устанавливать ISPConfig, то вам нужно настроить Postfix для доставки электронных писем в Maildir пользователя (вы также можете сделать это, если используете ISPConfig - это не повредит ;-)):
postconf -e 'home_mailbox = Maildir/'
postconf -e 'mailbox_command ='
/etc/init.d/postfix restartGet new posts in your inbox
No spam. Unsubscribe anytime.