![]() | VAP home / mail@dialup Завершение конструкции |
Теперь доставка почты работает как на получение, так и на отправку, но пока требует ручного запуска `sendmail` или `fetchmail`. Осталось объединить операции, чтобы они выполнялись автоматически при установлении сетевого соединения.
Пример командного файла для FreeBSD:
#!/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
SPOOL_DIR="/var/spool/mqueue"
LINK_FILE="/var/run/ppp/ppp.linkup"
if [ -f "$LINK_FILE" ]; then
F=`ls "$SPOOL_DIR" 2>/dev/null`
if [ -n "$F" ]; then sendmail -q; fi
su -l USER_NAME -c fetchmail >/dev/null
F=`ls "$SPOOL_DIR" 2>/dev/null`
if [ -n "$F" ]; then sendmail -q; fi
fiВместо `USER_NAME` указывается имя локального пользователя. Путь к маркеру соединения нужно согласовать с конфигурацией dial-up в конкретной системе; скрипт не следует запускать с непроверенными правами или без тестирования.
В файле конфигурации ppp можно добавить запуск скрипта после установления соединения для соответствующей группы провайдера. Важно, чтобы почта передавалась только через сервер провайдера, разрешающий пересылку для своих подключённых клиентов.