Серверы · 4 min read · Dec 03, 2025
Идеальный сервер - Mandriva 2008 Free (Mandriva 2008.0) - Страница 5
10 MySQL (5.0)
Чтобы установить MySQL 5.0, просто выполните:
urpmi MySQL MySQL-client libmysql15-develПо умолчанию сетевое соединение не включено в пакет MySQL Mandriva 2008, но оно требуется для ISPConfig. Мы можем изменить это, закомментировав строку skip-networking в /etc/my.cnf:
vi /etc/my.cnf| [...] # Не слушать на TCP/IP порту вообще. Это может быть улучшением безопасности, # если все процессы, которым нужно подключиться к mysqld, работают на одном хосте. # Все взаимодействия с mysqld должны происходить через Unix-сокеты или именованные каналы. # Обратите внимание, что использование этой опции без включения именованных каналов в Windows # (через опцию "enable-named-pipe") сделает mysqld бесполезным! # #skip-networking [...] |
После этого мы запускаем MySQL:
/etc/init.d/mysqld startТеперь проверьте, что сетевое соединение включено. Выполните
netstat -tap | grep mysqlВывод должен выглядеть так:
[root@server1 var]# netstat -tap | grep mysql
tcp 0 0 *:mysql-im *:* LISTEN 5697/mysqlmanager
tcp 0 0 *:mysql *:* LISTEN 5705/mysqldЗатем выполните
mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpasswordчтобы установить пароль для пользователя root (в противном случае любой сможет получить доступ к вашей базе данных MySQL!).
11 Postfix с SMTP-AUTH и TLS
Установите необходимые пакеты (Postfix, cyrus-sasl, imap и т.д.) следующим образом:
urpmi cyrus-sasl libsasl2 libsasl2-devel libsasl2-plug-plain libsasl2-plug-anonymous libsasl2-plug-crammd5 libsasl2-plug-digestmd5 libsasl2-plug-gssapi libsasl2-plug-login postfix imapЗатем выполните (убедитесь, что вы используете правильные значения для mydomain, myhostname и mydestination):
postconf -e 'mydomain = example.com'
postconf -e 'myhostname = server1.$mydomain'
postconf -e 'mydestination = /etc/postfix/local-host-names, localhost.example.com'
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'
postconf -e 'mynetworks = 127.0.0.0/8'
touch /etc/postfix/local-host-names
touch /var/lib/mailman/data/aliasesОтредактируйте /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 |
Создайте 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'Теперь запустите Postfix, saslauthd, imap и pop3:
chkconfig imap on
chkconfig imaps on
chkconfig ipop3 on
chkconfig pop3s on
/etc/init.d/postfix restart
/etc/init.d/saslauthd restart
/etc/init.d/xinetd restartЧтобы проверить, работают ли SMTP-AUTH и TLS правильно, выполните следующую команду:
telnet localhost 25После того как вы установили соединение с вашим почтовым сервером Postfix, введите
ehlo localhostЕсли вы видите строки
250-STARTTLSи
250-AUTH PLAIN LOGINвсе в порядке:
[root@server1 ssl]# 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.4.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 ssl]#Введите
quitчтобы вернуться в оболочку системы.
12 Apache2 с PHP5
Чтобы установить Apache2 и PHP5, выполните следующую команду (в одну строку):
urpmi apache-mod_suexec apache-mod_ssl apache-mod_php libphp5_common5 php-bz2 php-calendar php-ctype php-curl php-devel php-dio php-dom php-eaccelerator php-enchant php-esmtp php-event php-exif php-fam php-ffmpeg php-fileinfo php-filepro php-ftp php-gd php-gettext php-gmp php-iconv php-id3 php-idn php-imap php-imlib2 php-mailparse php-mbstring php-mcache php-mcrypt php-mhash php-ming php-mysql php-mysqli php-ncurses php-newt php-odbc php-oggvorbis php-pam_auth php-pcntl php-pcre php-pear-Net_IDNA php-posix php-pspell php-readline php-recode php-session php-shmop php-simplexml php-snmp php-soap php-sockets php-sqlite php-ssh2 php-suhosin php-sysvmsg php-sysvsem php-sysvshm php-tclink php-tcpwrap php-tidy php-xml php-xmlrpc php-zip php-ini curl libcurl4-devel perl-libwww-perl ImageMagickЗапустите Apache:
/etc/init.d/httpd restart12.1 Отключить PHP глобально
(Если вы не планируете устанавливать ISPConfig на этом сервере, пропустите этот раздел!)
В ISPConfig вы будете настраивать PHP на уровне каждого сайта, т.е. вы можете указать, какой сайт может запускать PHP-скрипты, а какой нет. Это может работать только в том случае, если PHP отключен глобально, потому что в противном случае все сайты смогут запускать PHP-скрипты, независимо от того, что вы укажете в ISPConfig.
Отредактируйте /etc/httpd/modules.d/70_mod_php.conf и закомментируйте строки AddType:
vi /etc/httpd/modules.d/70_mod_php.conf| |
Отредактируйте /etc/httpd/conf/httpd.conf и добавьте следующую строку в раздел LoadModule:
vi /etc/httpd/conf/httpd.conf| [...] LoadModule php5_module extramodules/mod_php5.so [...] |
(Хотя эта строка уже есть в /etc/httpd/modules.d/70_mod_php.conf, это очень важно, потому что в противном случае команда
httpd -tбудет сообщать об ошибках вместо Syntax OK, когда виртуальные хосты, созданные ISPConfig, содержат такие строки, как php_admin_flag safe_mode On или подобные!)
Перезапустите Apache:
/etc/init.d/httpd restartGet new posts in your inbox
No spam. Unsubscribe anytime.