Ключевые слова:mail, postfix, (найти похожие документы)
From: Ages <ages@rambler.ru.>
Newsgroups:
Date: Tue, 28 Jun 2005 13:31:18 +0600 (YEKST)
Subject: Первый опыт создания почтового сервера используя AltLinux
Отмазка:
Я не являюсь специалистом в области unix систем и в частности Linux.
Поэтому прекрасно понимаю, что в глазах настоящих спецов и "спецов"
данная статья будет выглядеть сказкой про Курочку-Рябу. И, тем не
менее, надеюсь, что она все-таки кому-нибудь из новичков (таких как я)
пригодится.
В этой статье я постараюсь описать те действия, благодаря которым я
установил и запустил почтовый сервер (далее ПС) на базе Linux.
Что у меня было:
PIII-500EB x2, память: 256Мб, жесткий диск: 80Гб, Сетевая карта 3Com
10/100, Windows 2003 Enterprise Server с установленным на нем Kerio
MailServer 6.0.9 и огромный глюк с отправкой почты на определенный
сервер. Когда частота вопросов пользователей: "а почему у меня...."
превысило определенный предел, я понял что ситуацию нужно менять
коренным образом. И тут я наконец набрался....., смелости и решил
организовать почтовую службу на базе Linux. Под рукой был ALT Linux
Junior 2.3 (чем богаты), его-то я и установил.
Проинсталил как Интернет станцию и почтовый сервер, все остальное как:
X, KDE, OpenOffice и др. как я и полагал, не понадобилось. В данном
дистрибутиве поставляется postfix-2.0.20 его то мне и нужно было
настроить. Установку самого postfix'а я описывать не буду, так как он у
меня поставился вместе с ОС, к тому же статей и документации на эту
тему и без меня куча.
Наша корпоративная сеть устроена следующим принципиальным образом:
Локальная сеть провайдера: 10.0.0.0/8 в которой наш маршрутизатор
10.0.0.1, на котором фаервол, NAT а также еще один сетевой интерфейс
192.168.0.1 смотрящий соответственно в 192.168.0.0/24, в которой есть
192.168.0.11 (ПС). Есть зарегистрированное доменное имя: domain.ru и
реальный IP: 195.195.195.195. Нужно чтоб все в сети 192.168.0.0./24
могли писать письма друг другу и наружу, а так же получить письма
снаружи.
Сетевые настройки ПС IP: 192.168.0.11, netmask 255.255.255.0,
gateway: 192.168.0.1, dns: 192.168.0.1.
В /etc/postfix/main.cf я внес следующие значения:
myhostname = domain.ru
mydomain = domain.ru
myorigin = $mydomain
mynetworks = 127.0.0.0/32, 192.168.0.0/24
Все. Больше в данном файле я ни чего не трогал и не менял. Далее в файле
/etc/postfix/master.cf
раскоментировал строчку:
#smtp inet n - - - - smtpd
то есть получилось:
smtp inet n - - - - smtpd
и добавил туда по аналогии еще одну:
smtps inet n - - - - smtpd
Все. В этом файле я тоже изменений больше никаких не делал.
После этого перезапустил сам postfix:
/etc/rc.d/init.d/postfix restart
Сканером портов с другой машины в этой же сети просканил ПС на наличие
открытых портов 25 и 465.
Тоже самое можно сделать и более мирными методами на самом ПС:
telnet localhost 25
Порты открыты - все ок.
На данном этапе я уже мог отправлять почту локально и наружу, а также
получать локальную почту на самом ПС командой mail.
Теперь нужно настроить на ПС POP сервис, чтоб можно было забирать почту
с других машин почтовыми клиентами.
В качестве POP сервиса я выбрал popa3d (странное название не правда ли?
:))) версии... короче вот ссылка:
http://ftp.citkit.ru/pub/Linux/ALTLinux/Master/2.4/ALTLinux/RPMS.main/popa3d-0.6.4-alt1.i586.rpm
(не хилый такой ресурс этот www.citkit.ru)
При установки он потребовал xinetd. Что это такое и зачем оно нужно я прочитал тут:
http://www.opennet.me/docs/RUS/xinetd/xinetd.html
и тут:
http://www.opennet.me/docs/RUS/xinetd/xinetd.conf.html
читайте, написано достаточно понятно.
Скачал я xinetd там же:
http://ftp.citkit.ru/pub/Linux/ALTLinux/Master/2.4/ALTLinux/RPMS.main/xinetd-2.3.13-alt1.i586.rpm
установил его. Потом установил пакет popa3d.
После прочтения "ликбеза" по xinetd, в файле /etc/xinetd.conf в секции
defaults поправил строчку начинающуюся на only_from, а именно поставил:
only_from = 127.0.0.1 192.168.0.0
далее в файле /etc/xinetd.d/popa3d в секции service pop-3 в поле
disable поменял значение с yes на no:
disable = no
после этого запустил
/etc/rc.d/init.d/xinetd start
или перезапустил
/etc/rc.d/init.d/xinetd restart
этот супер демон xinetd.
Теперь теленетом (telnet) можно приконектится к 110 порту и проверить
работоспособность POP3 сервера.
telnet localhost 110
Если все ок, то тогда мы можем с других машин, находящихся в сети
192.168.0.0/24 с помощью программ (почтовых клиентов) получать
(локально) ну и конечно же отправлять (локально и глобально) почту.
Осталось настроить последнее, а именно сделать так чтоб наш ПС принимал
почту с наружи.
У нас есть доменное имя, в MX записи которого стоит mail.domain.ru и
разрешается как 195.195.195.195. Наш провайдер смаршрутизировал данный
адрес на наш маршрутизотор т.е. на 10.0.0.1.
Исходя из этого я сделал следующее (не спорю может это и кривое решение,
но как сделать по другому я не знаю, кто знает подскажите):
на своем маршрутизатора я прописал статический маршрут типа:
route -p add 195.195.195.195 mask 255.255.255.255 192.168.0.11
(у меня там windows.... пока)
а на ПС интерфейсу eth0 добавил второй IP адрес:
ifconfig eth0 add 195.195.195.195
А чтоб после перезагрузки ПС каждый раз это не писать, я добавил
соответствующий скрипт в /etc/rc.d/
Ну вот вроде и все....
Спасибо за внимание.
В It я только год. Умею только чистить компы, настраивать принтеры, вводить и выводить юзеров. Но от меня требуют развернуть почтовый сервер. Именно такую понятную для начала статью я и искал. На Slackware 10 у нас Sendmail, работает уже лет пять, хочу продолжить традицию нашего старого админа..читаю много, но книжки про протоколы, разновидности конфигураций и пр. в которых я не силен, подразумевается что это уже должен читать человек соспец образованием и знанием программирования..это статья то что надо..