![]() |
Установка и настройка Веб-сервера
предположим что вы уже уставноили свою ось и пришло время устанавливать серверные приложения.
опишу установку и настройку веб-сервера апач с РНР+MySQL. скачиваем и устанавливаем апач. ./configure запускаем с ключем --enable-so чтобы мы могли подключать модули. скачиваем РНР. запускаем ./configure --help сначала. внимательно прочитайте. хотя пойдет и так : ./configure --with-apxs2=/path/to/apache/bin/apxs --with-mysql. в файл /path/to/apache/conf/httpd.conf нужно добавить строчки: LoadModule php5_module modules/libphp5.so - чтобы подключить модуль. и Цитата:
на этом этапе можно потестить все ли нормально получилось. киньте какойнить РНР скрипт в корневую директории веб сервера и зайдите на localhost. если скрип заработал как надо то пока что все нормально. теперь устанавливаем мускуль. тут тоже ./configure без каких либо особых ключей подойдет в принципе. теперь запустим mysqld... и обломаемся. оказывается не созданы нужные такие нужные таблицы как mysql.user например. для этого запускаем mysql_install_db, потом опять mysqld и пробуем подключиться при помощи клиента: mysql. если нормально все то считайте что все уже готово. чтобы настроить виртуальные хосты нужно в секции virtual hosts httpd.conf-a добавить строчки которые я приведу ниже. это упрощеные синтаксис. чтобы узнать подробнее обращяйтесь к офф сайту. хотя вряд ли это вам понадобиться: Цитата:
|
Настройка Dns сервера
если у вас фряха то с днс серверов у вас проблем возникнуть не должно.
днс сервер BIND идет с фряхой. конф файлы сервера находятся /etc/namedb. файл named.conf - основной конф файл сервера. там определяются глобальные настройки. например как сервер должен вести себя: сразу редирекить все запросы к внещним днс серверам или сначала посмотреть у себя и только потом редиректить. имхо это наиболее удобная конфигурация. для этого в раздел options нужно добавить forward first; потом собственно список днс серверов в виде forwarders { тут_днс_серверы; };. дальше идут файлы зон. корневую (зона "." ) трогать не будем. просто добавим то что нам нужно. общий синтаксис таков: Цитата:
Цитата:
1. SOA (Start Of Authority) - главная запись зоны 2. A - связывает ип-адрес с именем 3. CNAME - связывает синонмы 4. MX - сообщяют внешним почтовым серверам о том какие компьютеры используются для доставки почты адресованной домену. 5. NS - ссылаются на серверы имен зоны. запись soa наиболее сложная и содержит несколько элементов: 1. сервер имен 2. почта админа 3. параметры обновления данных. примеры конф. файла сервера и зоны: конф. файл Цитата:
Цитата:
|
Авторизация по ключам в ssh
Цитата:
Авторизация по ключам в ssh: У клиента: $ cd ~/.ssh/ && ssh-keygen -t rsa id_rsa.pub кладём в ~/.ssh/ сервера и переименовываем(или дописывем в конец существующего) в authorized_keys В sshd_config сервера: PubkeyAuthentication yes(по дефолту) |
Описание установки и конфиги Irc сервера (сервер + сервисы + бот)
Может кому и пригодится... Так как для установки всего этого нужно прочитать не одну страницу манов... А это так сказать лайт-вариант
Данное описание позволит создать и настроить собственный IRC сервер, включая установку и настройку серверов NickServ, ChanServ и пр., а также установка и настройка бота. Поскольку пишу со своего примера, параметры, которые необходимо будет сменить для вашего сервера будут указаны. В этом описании указан только самый необходимый минимум для работы связки сервер-сервис-бот, все остальное в оффдоках ------------------------- 1. ИСХОДНИКИ И ПОДГОТОВКА: VDS, OS: Debian Сам сервер - Unreal3.2.7 Сервер сервисов - anope-1.6.5 Бот - eggdrop1.6 Директория, в которой будут установлены сервера Код:
/home/admin/Создаем необходимые каталоги anope_bin - бинарники anope bin - бинарники Unreal bot - конфиги + бинарники eggdrop conf - конфиги Unreal data - конфиги anope source - исходники Код:
cd /home/adminКод:
cd /home/admin/sourceКод:
gunzip -d Unreal3.2.7.tar.gz |
2. СБОРКА Unreal3.2.7
Код:
cd /home/admin/source/Unreal3.2.7Цитата:
Код:
makeКод:
make installЧистим конфигурационный файл и вбиваем туда нижеуказанный конфиг, предварительно заменив все что с коментами своими значениями Код:
cp /dev/null /home/admin/conf/unrealircd.confКод:
nano home/admin/conf/unrealircd.confКод HTML:
loadmodule "/home/admin/conf/modules/commands.so"; // проверяем правильностьСохраняем и запускаем сервер Код:
/home/admin/bin/ircdЕсли все работает - переходим к установке сервисов.. |
3. СБОРКА anope-1.6.5
Код:
cd /home/admin/source/anope-1.6.5Цитата:
Код:
makeКод:
make installСоздаем файл конфига, также вписываем туда параметры, указанные ниже, предварительно заменив все что с коментами своими значениями Код:
nano home/admin/data/services.confКод HTML:
RemoteServer localhost 6667 "qwerty" // Смените пароль на тот, который указан в link services.irc.loc в файле unrealircd.conf Сохраняем и запускаем Код:
/home/admin/anope_bin/servicesКод:
/home/admin/data/logs/Код:
/msg ChanServ helpПереходим к установке бота |
ПРИМЕЧАНИЕ С ОФФСАЙТА
Цитата:
4. СБОРКА eggdrop Код:
cd /home/admin/source/eggdrop1.6Код:
make configКод:
make install DEST=/home/admin/botСоздаем файл конфига, также вписываем туда параметры, указанные ниже, предварительно заменив все что с коментами своими значениями Код:
nano /home/admin/bot/eggdrop.confКод HTML:
#! /home/admin/bot/eggdrop //смотрим правильность путей (эта строка обязательна)Сохраняем. Запускаем бота... Первый старт делаем с ключом -m и указанием файла конфига Код:
cd /home/admin/botВыполним на канале команду Код:
/msg TAHK helloПосле этого убиваем наш PID с ботом и запускаем его заново без каких либо ключей Код:
cd /home/admin/botВот вроде и все.. Если что то и напутал, то только из за того что многобукаф )) |
Почтовый сервер на основе Postfix+Dovecot+Mysql+AMaViS Ubuntu 8.04 LTS
Почтовый сервер на основе Postfix+Dovecot+Mysql+AMaViS
Необходимые компоненты * Postfix чтобы получать поступающие письма из internet и хранит их в почтовых ящиках пользователей на жёстком диске . * Dovecot, Позволяет пользователям получать их письма на почтовый клиент через POP3 и IMAP * Squirrelmail Как интерфейс webmail * MySQL КАК база данных системы, которая загружает информацию о ваших доменах , отчетности пользователя и email пересылок * AMaViS ДЛЯ сканирования поступающих писем на наличие вирусов, spam и нежелательных вложений . Расписывать подробно тут про Postfix и Dovecot я не намерен , если кого то интересует дополнительная информация , добро пожаловать сюда Postfix http://afti.ru/start.html , Dovecot http://www.dovecot.org/ Для начало в /etc/apt/sources.list надо добавить нужные ссылки на допольнительные репозитарии , будем использовать редактор vim Код:
vim /etc/apt/sources.listдалее выполняем Код:
aptitude update или apt-get updateКод:
aptitude install postfix-mysqlЗатем нужно установиться сам Mysql , в котором будут храниться базы данных почтового сервера .В этих базах будут содержаться структуры таблиц доменов , транспорта , квоты , юзеры и их пароли . Код:
aptitude install mysql-server-5.0Ставим Dovecot , он будет обслуживать запросы пользователей с помощью протоколов imap, imaps, pop3, pop3s Код:
aptitude install dovecot-pop3dКод:
aptitude install amavisd-new libclass-dbi-mysql-perlКод:
aptitude install opensslКод:
aptitude install phpmyadmin libapache2-mod-php5 php5-mysqlmysqladmin password ваш пароль Создадим базу данных под названием mailserver mysqladmin -p create mailserver Создавать базы данных , юзеров и таблицы , можно и другими способами , не посредственно из mysql или с помощью phpmyadmin Теперь заходим в mysql PHP код:
PHP код:
Примеры созданных таблиц virtual_domains id name 1 example.com 2 foobar.org virtual_users id domain_id user password 1 1 john summersun 2 1 steve veryloud virtual_aliases id domain_id source destination 1 1 steve steve.miller@gmail.com 2 2 kerstin kerstin42@yahoo.com 3 2 kerstin kerstin@mycompany.com ################################################## ########## ###### Начинаем создавать конфигурационные файлы для Postfix vim /etc/postfix/mysql-virtual-mailbox-domains.cf в файле прописываем следующие строки Цитата:
Внесём изменения в конфигурационный файл Postfix main.cf , выполняем это командой postconf -e , postconf -e добавляет конфигурационные строки в наш main.cf Код:
postconf -e virtual_mailbox_domains=mysql:/etc/postfix/mysql-virtual-mailbox-domains.cfВозвращаемся в mysql в БД mailserver mysql -p mailserver Там создаём виртуальный домен PHP код:
Код:
postmap -q example.com mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf1 Добавляем юзера и группу vmail Цитата:
Цитата:
mail - u root -p ваш пароль и создаём виртуально пользователя , например belfigor PHP код:
PHP код:
Выполняем запрос на поле пароля в mysql PHP код:
Код:
+------------------+----------------------------------+mysql -u root -p ваш пароль PHP код:
vim /etc/postfix/mysql-virtual-mailbox-maps.cf Цитата:
Цитата:
Цитата:
Создадим в БД mailserver алиасы для юзера belfigor@example.com PHP код:
PHP код:
Цитата:
vim /etc/postfix/mysql-virtual-alias-maps.cf В него вносим Цитата:
Назначения должно быть следующего вида belfigor@example.com,raymond@gmail.com Сотворим cf файл vim /etc/postfix/mysql-email2email.cf в нём пишем Код:
user = mailuserЦитата:
belfigor@example.com Добавим также строки в наш main.cf Выставим нужные права , на наши конфигурационные файлы Код:
chgrp postfix /etc/postfix/mysql-*.cfНаходим файл master.cf в директории /etc/postfix/master.cf в конце добавляем такие строки vim /etc/postfix/master.cf Код:
dovecot unix - n n - - pipeЦитата:
Код:
postconf -e virtual_transport=dovecotC Postfix пока закончили , переходим к настройке Dovecot Начнём с конфигурационного файла Dovecot который находиться в директории /etc/dovecot/ vim /etc/dovecot/dovecot.conf Убираем # (с закомментированных строк) Код:
protocols = imap imaps pop3 pop3sКод:
namespace private {PHP код:
Код:
passdb sql {PHP код:
PHP код:
Прописываем следующие PHP код:
Цитата:
Код:
driver = mysql/etc/init.d/dovecot restart Срочно бежим в логи и проверяем /var/log/mail.log, должно быть ТАК : Цитата:
Код:
chgrp vmail /etc/dovecot/dovecot.confPHP код:
Теперь настаёт очень ОТВЕТСТВЕННЫЙ момент , мы начинаем КВН :D , шутка , мы будем тестировать наши smtp и pop сервера ! в консоли : Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Postfix , сообщает нам ,что получил почту и поставил в очередь под очередью ID: Цитата:
Цитата:
Цитата:
Но если в логах вы видите ошибки , выполните команду postfix check для проверки правильности настроек и прав доступа на файлы, команда должна отдать пустой результат. И всё ошибки и какие то отклонения от нормального функционала , можно проглядеть тут : /var/log/mail.log /var/log/mail.err /var/log/mail.warn /var/log/mail.info ################################################## ########## ##### Идём в нашу домашнию директорию cd /home/vmail/example.com/belfigor и видим вот такие папки Цитата:
установим его Код:
apt-get install mcТестируем POP сервер Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Так что начинаем созвать SSL/TLS , сертификаты доверий в консоли : Код:
openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/certs/dovecot.pem \Цитата:
Цитата:
Цитата:
Аутификация по SMTP правим наш main.cf Цитата:
Код:
postconf -e smtpd_sasl_type=dovecotpostconf Создадим ещё один ключ/сертификат ,уже выше указанным методом: Код:
openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/certs/postfix.pem \/etc/ssl/certs/dovecot.pem и /etc/ssl/private/dovecot.pem Выставим права на них Цитата:
Цитата:
установим эти параметры PHP код:
Переходим к настройке AMaViS Фильтрация spam и viruses В файле /etc/amavis/conf.d/15-content_filter_mode , удаляем комментарии # возле Код:
@bypass_...в файле /etc/spamassassin/local.cf добавляем строку [/code] Код:
bayes_auto_expire 0Перезагружаем AMaViS Код:
/etc/init.d/amavis restartКод:
netstat -nap | grep 10024Код:
tcp 0 0 127.0.0.1:10024 0.0.0.0:* LISTEN 12345/amavisdНесколько слов о функциях Аmavis ,если например нам послали письмо из интернета , то его сначало получит Postfix на порту 25 , затем если Postfix разрешит это письмо , то он перешлёт его к AMaViS на TCP порт 10024 (SMTP)и если оно соответствует теребывания политики AMaViS , то AMaViS посылает его обратно Postfix на TCP порт 10025 (SMTP) Для этого выполним следущие команды : Код:
postconf -e content_filter=smtp-amavis:[127.0.0.1]:10024vim /etc/postfix/master.cf PHP код:
Код:
postfix reloadДобавим clamav в члены группы amavis Цитата:
Цитата:
vim /etc/amavis/conf.d/50-user перед "1;" Прописываем эти строки Код:
@lookup_sql_dsn = ( ['DBI:mysql:database=mailserver;host=127.0.0.1;port=3306', 'mailuser', 'mailuser2008']);Цитата:
Цитата:
Попробуем отослать нашему юзеру спам письмо Цитата:
Цитата:
Код:
chmod o= /etc/amavis/conf.d/50-userНу думаю на этом я пока и остановлюсь , значит заводить новых юзеров можно , не посредственно в mysql PHP код:
Или через phpMyAdmin , я выбрал скрип написынный на php mail_control.php очень лёгкий и удобный , можно легко и быстро создавать домены и юзеров . Теперь Белку (squirrelmail) я не люблю , и просто заюзал Mozilla Thunderbird , а для Веб интерфейса пожно использовать roundcube , UebiMiau и ещё много других разных клиентов можно найти в инетерете . От себя хочу сказать , что это не полный перевод , если кто желает подробно вникнуть с суть дела , то добро пожаловать сюда http://workaround.org/articles/ispmail-etch/ , для гуру и опытных почтоводов , этот скромный мануал думаю не пригодиться , а вот новичкам с самый раз , свои конфиги я выкладывать не буду , дабы не было банального копипаста , поверте он не даёт ничего хорошо , уже лучше поседеть суток так двое , трое и самому понять работу данного почтового сервера ! имхо По данном мануалу , почтовый сервер был поднят и настроен 5 раз , ошибок не наблюдалось , багов пока тоже . Одновременно на другом сервера заюзал связку Postfix, Courier, MySQL And SquirrelMail (Ubuntu 8.04 LTS) , опять же имхо , но Postfix+Dovecot+Mysql+AMaViS мне понравилась больше, хотя у каждой связки есть свои приемушества ! Желаю успехов на поднятии и настройки почтовых серверов , с уважением Belfigor . источник http://workaround.org/articles/ispmail-etch/ |
*nix скрипт для автобэкапа баз данных mysql, их архивирование и закачка на удаленный ftp.
Код:
mkdir /usr/back/base/backup_`date "+%Y-%m-%d"` |
Защитить сервера от случайной перезагрузки или выключения поможет пакет molly-guard. При выполнении команд shutdown, reboot, halt он засечет удаленное подключение и попросит ввести имя хоста, с которым осуществляется операция. Это полезно при работе с удаленными серверами через ssh подключения, и особенно - при работе с несколькими серверами одновременно.:) |
| Время: 00:02 |