Установка ПО · 4 min read · Feb 03, 2026
Debian Sarge (3.1) с Ruby on Rails и Apache 2 с FastCGI - Страница 3
Установите MySQL
apt-get install mysql-server mysql-client libmysqlclient12-devУстановите пароль root для mysql
mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpasswordКогда вы выполните netstat -tap, вы должны увидеть строку, подобную этой:
| tcp 0 0 localhost.localdo:mysql *:* |
что означает, что MySQL доступен на 127.0.0.1 на порту 3306. Вы можете перейти к следующему разделу (Postfix). Если вы не видите этой строки, отредактируйте /etc/mysql/my.cnf и закомментируйте skip-networking:
| # skip-networking |
Если вы хотите, чтобы MySQL слушал на всех доступных IP-адресах, отредактируйте /etc/mysql/my.cnf и закомментируйте bind-address = 127.0.0.1:
| # bind-address = 127.0.0.1 |
Если вам пришлось редактировать /etc/mysql/my.cnf, вам нужно перезапустить MySQL:
/etc/init.d/mysql restartУстановите Postfix/POP3/IMAP
Чтобы установить Postfix с SMTP-AUTH и TLS, а также POP3 сервер, который также поддерживает POP3s (порт 995) и IMAP сервер, который также поддерживает IMAPs (порт 993), выполните следующие шаги:
apt-get install postfix postfix-tls libsasl2 sasl2-bin libsasl2-modules ipopd-ssl uw-imapd-sslНа запросы ответьте:
Продолжить установку libc-client без поддержки Maildir? ответьте Нет
На каких портах сервер должен слушать? ответьте pop3 и pop3s
Принудить выбор порта? ответьте Нет
На каких портах сервер должен слушать? ответьте imap2 и ipmaps
Принудить выбор порта? ответьте Нет
Общий тип конфигурации? ответьте Internet Site
Куда должна идти почта для root? ответьте NONE
Имя почты? ответьте server1.example.com
Другие назначения для приема почты? (пусто для none) ответьте server1.example.com, localhost.example.com, localhost
Принудить синхронные обновления в очереди почты? ответьте Нет
Теперь настройте postfix:
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_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination'
postconf -e 'inet_interfaces = all'
echo 'pwcheck_method: saslauthd' >> /etc/postfix/sasl/smtpd.conf
echo 'mech_list: plain login' >> /etc/postfix/sasl/smtpd.confНастройте SSL
mkdir /etc/postfix/ssl
cd /etc/postfix/ssl/
openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024Вы должны ввести пароль для smtpd.key от 4 до 8191 символов
chmod 600 smtpd.key
openssl req -new -key smtpd.key -out smtpd.csrЗаполните запрос на сертификат или примите значения по умолчанию
openssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out smtpd.crtВы должны ввести пароль, который вы ввели ранее для smtpd.key
openssl rsa -in smtpd.key -out smtpd.key.unencryptedВы должны ввести пароль, который вы ввели ранее для smtpd.key
mv -f smtpd.key.unencrypted smtpd.keyopenssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650Заполните запрос на сертификат или примите значения по умолчанию
Сделайте еще несколько настроек postfix
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'Файл /etc/postfix/main.cf теперь должен выглядеть так:
joe /etc/postfix/main.cf| # See /usr/share/postfix/main.cf.dist for a commented, more complete version smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) biff = no # appending .domain is the MUA's job. append_dot_mydomain = no # Uncomment the next line to generate "delayed mail" warnings #delay_warning_time = 4h myhostname = server1.example.com alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = server1.example.com, localhost.example.com, localhost relayhost = mynetworks = 127.0.0.0/8 mailbox_command = procmail -a "$EXTENSION" mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all smtpd_sasl_local_domain = smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous broken_sasl_auth_clients = yes smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination smtpd_tls_auth_only = no smtp_use_tls = yes smtpd_use_tls = yes smtp_tls_note_starttls_offer = yes smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem smtpd_tls_loglevel = 1 smtpd_tls_received_header = yes smtpd_tls_session_cache_timeout = 3600s tls_random_source = dev:/dev/urandom |
Перезапустите postfix
/etc/init.d/postfix restartАутентификация будет выполняться с помощью saslauthd. Нам нужно изменить несколько вещей, чтобы это работало правильно. Поскольку Postfix работает в chroot в /var/spool/postfix, нам нужно сделать следующее:
mkdir -p /var/spool/postfix/var/run/saslauthdТеперь нам нужно отредактировать /etc/default/saslauthd, чтобы активировать saslauthd. Удалите # перед START=yes и добавьте строку PARAMS=”-m /var/spool/postfix/var/run/saslauthd -r”:
joe /etc/default/saslauthd| # This needs to be uncommented before saslauthd will be run automatically START=yes PARAMS="-m /var/spool/postfix/var/run/saslauthd -r" # You must specify the authentication mechanisms you wish to use. # This defaults to "pam" for PAM support, but may also include # "shadow" or "sasldb", like this: # MECHANISMS="pam shadow" MECHANISMS="pam" |
Теперь запустите saslauthd:
/etc/init.d/saslauthd startДалее создайте файл /etc/c-client.cf:
echo "I accept the risk" > /etc/c-client.cf echo "set disable-plaintext 0" >> /etc/c-client.cfТеперь перезапустите inetd:
/etc/init.d/inetd restartЕсли мы этого не сделаем, то наши входы POP3/IMAP будут неудачными.
Чтобы проверить, работают ли SMTP-AUTH и TLS правильно, выполните следующую команду:
telnet localhost 25После того как вы установили соединение с вашим почтовым сервером postfix, введите
ehlo localhostЕсли вы видите строки:
250-STARTTLSи
250-AUTHвсе в порядке.
Введите
quitчтобы вернуться в оболочку системы.
Установите Courier-IMAP/Courier-POP3 с поддержкой Maildir
apt-get install courier-imap courier-imap-ssl courier-pop courier-pop-sslНа запросы:
Создать каталоги для веб-администрации? ответьте Нет
Требуется SSL сертификат ответьте OK
Затем настройте Postfix для доставки электронной почты в Maildir пользователя*:
postconf -e 'home_mailbox = Maildir/'
postconf -e 'mailbox_command ='
/etc/init.d/postfix restartGet new posts in your inbox
No spam. Unsubscribe anytime.