- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Linux-сервер своими руками - Денис Колисниченко
Шрифт:
Интервал:
Закладка:
Откройте окно свойств учетной записи и перейдите на вкладку Серверы. Включите режим «Проверка подлинности пользователя», а затем нажмите на кнопку «Настройка» и установите параметры аутентификации.
Netscape MessengerЗдесь все аналогично предыдущим программам — установить имя пользователя для сервера SMTP можно в разделе Mail servers (см. рис. 13.4), включить аутентификацию там же. Хочу заметить, что Netscape Messenger (версия 4.76) поддерживает только метод авторизации PLAIN.
Рис. 13.4. Настройка Netscape Messenger
13.4. Другие программы для работы с электронной почтой
Кроме агентов MTA и демонов POP-сервиса существуют также программы для получения почты, POP-клиенты и программы для сортировки почты.
Конечно, любая почтовая программа, например, kmail или Outlook, обладают встроенным POP-клиентом, но, кроме сбора почты, почтовые программы, как правило, обладают массой других не менее полезных функций — создание, отправка сообщений и тому подобные.
В качестве POP-клиента рассмотрим стандартный почтовый клиент Linux — fetchmail, а также программу сортировки почты — procmail.
Лучше всего объяснять работу любой программы на практическом примере. Сначала сформулируем задачи:
1. На один ящик [email protected] поступает почта для всех отделов какой-либо организации. Вам нужно выполнить сортировку приходящей почты по названию отдела, например, если в теле письма или в одном из его заголовков упоминается название отдела, отправить это сообщение одному из пользователей отдела.
2. Настроить автоответчик электронной почты. Этот автоответчик будет работать подобно обыкновенному автоответчику: когда пользователь получает сообщение, автоответчик автоматически отправит ответ, содержащий примерно такое сообщение: «Ваше сообщение получил. Прочитаю в 19:00».
Теперь займемся решением первой задачи. Сначала немного конкретизируем ее. Пусть у вашей организации существует 3 отдела. Адрес первого отдела — [email protected], второго — [email protected], а третьего — [email protected] У вас также есть пользователь mail, на имя которого будет приходить вся почта. Его адрес — [email protected] Также вы хотите, чтобы рассылка проекта LinuxRSP отправлялась вам по адресу [email protected]
Для начала в домашнем каталоге пользователя mail создайте файл .procmailrc примерно такого содержания, как это показано в листинге 13.2 :
Листинг 13.2. Файл .procmailrc:0
* ^Subject:.*dep1
! dep1
:0
* ^Subject: .*dep2
! dep2
:0
* ^Subject: . *dep3
! dep3
:0
* ^Subject:.*LinuxRSP
! adm
Таким образом, вы определили правила сортировки почты. Если в теме (заголовок Subject) будет присутствовать название отдела, то сообщение будет отправлено нужному пользователю.
Примечание. Если вы создавали файл .procmailrc, зарегистрировавшись в системе как пользователь root, измените права доступа к этому файлу:
chown mail.mail .procmailrc
chmod 600 .procmailrc
Можно выполнить сортировку по полю From или любому другому, например, последнее правило могло бы выглядеть так:
:0
* ^From:.* Subscribe.Ru
! adm
Но в этом случае, если кто-нибудь из пользователей вашей системы также подпишется на другую рассылку на сервере Subscribe.Ru, то вся почта попадет к пользователю adm и вам придется читать рассылку вместе.
Примечание. Подробнее о правилах сортировки вы прочитаете в справочной системе Linux, введя команду man procmail.
В этом же каталоге ($HOME/mail) создайте файл .forward. Если вы работаете как пользователь root, установите права доступа к этому файлу так же как и для файла .procmailrc. В этом файле задаются правила перенаправления почты. Добавьте в него следующую строку:
|IFS=' ' && exec /usr/bin/procmail USER=<mail>
Обычно программа procmail находится в каталоге /usr/bin. Если вы при самостоятельной сборке программы указали другой каталог, измените команду перенаправления в файле .forward.
Теперь создайте файл .fetchmailrc. Этот файл нужно создать в каталоге того пользователя, от имени которого будет запускаться fetchmail. В этот файл добавьте следующие строки:
set postmaster "mail"
poll provider.ru proto POP3 no dns
user "mail" pass "my_password" to mail here
options fetchall
Таким образом вы установите постмастера (пользователь mail. provider.ru) — имя почтового сервера, откуда вы будете забирать почту по протоколу POP3. При этом вы будете использовать имя пользователя mail и пароль my_password. Опция fetchall указывает программе получить всю почту и потом удалить полученные сообщения на сервера provider.ru.
Запускать программу fetchmail можно как демон, а можно с помощью планировщика crontab. В первом случае просто выполните команду:
fetchmail –d 12000
При этом fetchmail будет проверять наличие новой почты через каждые 20 минут. Во втором случае выполните команду crontab –e и введите новое задание:
0,20,40 * .* * * /usr/bin/fetchmail
Теперь перейдем к решению второй задачи. Напомню, что наша цель — создание автоответчика. Существуют два типа автоответчиков. Первые посылают автоответ только на определенные сообщения, а вторые — на все. Например, вам нужно отправить клиенту прайс-лист вашей организации по его требованию. Это первый тип автоответчика. Если же вы уезжаете летом на недельку отдохнуть куда-нибудь и хотите, чтобы программа сообщила людям, что вы в отпуске — это второй тип.
Займемся настройкой первого типа. Для этого в ваш файл .procmailrc добавьте строки:
0:
* ^Subject.*Price
| (formail –r ; cat $HOME/pricelist.zip)
| sendmail –t
Как видите все намного проще, чем ожидалось. А второй тип автоответчика создается еще проще:
0:
| (formail –r; cat $HOME/infо.txt)
| sendmail –t
Заметьте — вы не определяете никаких условий, поэтому ответное письмо будет отправлено всем, кто напишет вам сообщение. В файл info.txt нужно записать ваш автоответ.
Сделаем небольшой вывод. Программа fetchmail используется для загрузки сообщений, a procmail — для ее сортировки. Рекомендую вам изучить параметры программ fetchmail и procmail — вы найдете их в документации по этим программам. Используйте procmail с большой осторожностью, потому что если вы неправильно укажете условия сортировки, почта будет просто утеряна без возможности восстановления.
13.5. Создание списка рассылки
Средствами Linux можно создать небольшую рассылку сообщений электронной почты. Для больших систем рассылки я не рекомендовал бы использовать вам этот метод. Обычно системы рассылки создаются средствами, специально предназначенными для этого, например, РНР в связке с MySQL идеально подходят для этого. Язык программирования РНР предназначен для создания Web-приложений и оснащен всеми необходимыми для этого функциями, а сервер баз данных MySQL обеспечит поддержку базы данных адресов подписчиков и параметры рассылки. Таким образом, если вы хотите создать собственный MailList.Ru, воспользуйтесь готовыми решениями или напишите собственную на РНР или Perl.
Однако иногда бывает полезно создать небольшую рассылку внутри одной организации. Приведенное далее решение не отличается оригинальностью и не претендует на звание лучшей системы рассылки. С помощью этого примера вы также узнаете, как использовать стандартную почтовую утилиту Linux — mail. Эта программа входит в состав практически каждой Unix-системы.
Итак, допустим у вас есть три отдела: отдел маркетинга, производственный отдел и администрация. К первому отделу относятся пользователи вашей системы marina и oleg, ко второму — igor, dmitry, olya, а к третьему — president, director, secretar. Периодически вам нужно отправлять сообщения в один из отделов. Число пользователей небольшое и, возможно, отправить сообщение можно было бы с помощью групп пользователей почтовой программы, которую вы используете. Однако сейчас я покажу, как элегантно это можно сделать средствами Linux. Тем более, что для этого не нужно устанавливать никаких почтовых программ.
Создайте файл .mailrc в вашем домашнем каталоге и добавьте в него строки:
alias market marina oleg
alias proizv igor dmitry olya
alias adm director secretar
В дальнейшем, чтобы отправить сообщение в производственный отдел просто введите команду:
mail proizv
Программа mail попросит вас ввести тему, а затем текст сообщения. Для окончания ввода нажмите Ctrl+D и mail отправит сообщения пользователям.
При создании псевдонимов убедитесь, что в вашей системе нет пользователей с таким именем.
Как видите, средствами одной программы mail вам удалось сделать немного. Если пользователей много, использовать механизм псевдонимов не очень удобно. Гораздо удобнее, чтобы программа mail брала список подписчиков из какого-нибудь файла. К сожалению, разработчики этой программы не предусмотрели такой возможности, однако с помощью небольшого сценария мы можем организовать эту возможность. Посмотрим, что из этого получится, если воспользоваться средствами интерпретатора команд bash.

