В этом документе мы опишем, как сделать это, используя PPP (Point to Point Protocol (Протокол от Точки к Точке)), очень популярный протокол, почти всегда используемый в Интернете. Он позволяет вашему модему "speak" с внешним миром. Это именно то, что делали программы, такие как Trumpet Winsock в Windows 3.x, и многие другие программы, которые вы, возможно, никогда и не видели.
В Linux мы используем программу chat для соединения с ISP, а затем используем утилиту pppd для 'использования' соединения. По сути, chat - это номеронабиратель (dialer), а pppd - это ваш протокол. Ниже мы опишем, как их настроить.
Вероятно, наиболее простой способ - это написать скрипт в домашнем каталоге root-а и назвать его ppp-connect, и включать его тогда, когда вам нужно соединение. Обсудим этот метод.
Откройте ваш любимый текстовый редактор, на правах root, и создайте файл ppp-connect. Далее надо определиться по вашим параметрам.
pppd connect 'chat -v "" "строка_инициализации" "" ATDTтелефонный_номер CONNECT "" ogin: учетное_имя word: пароль' /dev/tty(0/1/2) скорость modem
pppd запускает /usr/sbin/pppd в моей системе, затем загружает chat для дозвона. Chat посылает строку_инициализации модему, затем набирает номер телефонный_номер. Затем он ожидает от модема ответа CONNECT, и ждет фразы ogin: (буква l убрана, так как первый символ может быть потерян или может быть буквой L), посылает учетное_имя, ожидает word: и посылает your_passwd. После этого chat прекращает работу, и передает управление pppd.
Последняя часть команды определяет порт модема (у меня /dev/ttyS1). В большинстве случаев это будет ttyS1 (COM2: в DOS-е), ttyS0 (COM1: в DOS-е); или, если вы используете Slackware, cua1 или cua0. (Примечание переводчика: в последних поставках Linux появилось устройство /dev/modem, которое является символьной ссылкой (symbolic link) на соответствующее устройство. Просто настройте эту ссылку на нужное устройство и все.). Скорость - это скорость модема. Я использую 115200 (скорость моего модема - 33600). Если у вас достаточно новый компьютер (с микросхемой UART 16550), то я бы не делал скорость ниже 57600. Иначе для 14400-модема, используйте 38400. Слово "modem" просто сообщает, что это соединение с использованием последовательного порта и модема. Уберите флаг -v, если вы не хотите получать подробных записей в ваших журналах.
Сценарий, приведенный ниже, написан специально для тех, кто дозванивается до провайдера, и тот автоматически запускает PPP, т.е. для тех, у кого не запускается командная оболочка (shell). Вот содержимое их /ppp-connect:
pppd connect 'chat "" "ATZ" "" ATDT555-1800 CONNECT "" ogin: johnny word: blackjak' /dev/ttyS1 115200 modem
Но у некоторых, у кого ISP запускает оболочку и автоматически не запускает PPP, могут возникнуть проблемы. К счастью, chat может справиться и с этим. Просто надо добавить еще пару команд в ваш chat-скрипт. Ниже приведен пример, где провайдер пользователя "johnny" просто запускает для него оболочку (shell), и от "johnny" требуется набрать ppp для установления ppp-соединения. Его приглашение оболочки (shell prompt) заканчивается символом $.
pppd connect 'chat "" "ATZ" "" ATDT555-1800 CONNECT "" ogin: johnny word: blackjak $ ppp' /dev/ttyS1 115200 modem
Если у вас больше одного слова в одной фразе посылки, не забудьте заключить его в двойные кавычки. Я надеюсь, вы уловили суть всего вышесказанного и сможете сами написать свой скрипт для своего соединения. Просто исправьте первый или второй johnny-скрипт по вашим настройкам (порт, сервер и т.п.) и запишите файл.
Теперь, когда вы создали свой файл, убедитесь, что только root может исполнять, читать этот файл или писать в него. Это очень важно. Также убедитесь в том, чтобы никто не смог прочитать ваши журналы (log files), если вы решили оставить опцию -v, так как, в этом случае, в журналы попадет ваш пароль. (Я не вижу особой нужды в -v, если вы не знаете, о чем я, то уберите -v).
Для многих, кто использует написанное выше, смена IP-адреса не будет проблемой. Это те, обычные, простые пользователи, у которых обычные dialup входы, и они особенно не загружают себя техническими тонкостями. Им можно пропустить этот раздел и перейти туда, где описываются важные вещи в правильной настройке их системы. Новички могут пропустить раздел о постоянных IP-адресах, доменах и подсетях, и прочитать только самый конец этого раздела.
Получение постоянного IP-адреса может быть бесплатным у вашего ISP, поэтому, если вы не уверены, спросите их. Лично я бы заплатил за постоянный IP-адрес. Это позволит посылать и принимать электронную почту, используя уникальный IP-адрес или домен, и т.п. Если вы хотите получить постоянный IP-адрес, напишите письмо своему провайдеру и попросите его о выделении вам постоянного IP-адреса.
Когда вы получите свой постоянный IP-адрес, используйте grep в каталоге /etc, чтобы найти, где еще остались ваши старые IP-адреса. Мне пришлось изменять файлы в каталоге sendmail-а и файл /etc/hosts. Существуют еще несколько ключевых файлов, которые вы сможете найти при помощи grep. Откройте файл /etc/hosts, и добавьте свой новый IP-адрес в стандартном формате. Перезагрузите машину: теперь все должно быть готово.
Вам будет необходимо изменить свой chat-скрипт для того, чтобы он отвечал новым условиям. Если у вас автоматически запускается PPP после установления соединения, скажите системному администратору вашего провайдера, чтобы они убедились в том, что их PPP-система знает, что у вас постоянный IP-адрес, и выделяет его, вместо нового. Если вы попадаете в приглашение оболочки (shell prompt), и вам надо написать ppp или что-то подобное для установления соединения, то вместо того, что указано выше, впишите в файл /ppp-connect следующую строку, после того, как он отследит приглашение оболочки провайдера ($ или что-то другое).
/usr/sbin/pppd :Ваш_IP_Адрес
Вместо фразы Ваш_IP_Адрес, впишите постоянный IP-адрес, который вам дал провайдер. Убедитесь в том, чтобы эту строку ограничить кавычками, когда впишите ее в chat-скрипт. Если это не сработает - проконсультируйтесь у своего ISP, относительно местоположения PPPd в его системе, и спросите его, какую команду давать. Вы также можете попробовать оставить все, как есть, и посмотреть, вдруг сервер распознает вас и выделит вам правильный адрес.
Следующее, что вам видимо понадобится - это имя домена. Я знаю, что в Австралии домены .asn.au и .org.au бесплатны. В США, домен .us тоже бесплатный, но они очень долго выделяются. Если вы в Австралии, обратитесь по адресу http://www.aunic.net/ для регистрации домена. В Соединенных Штатах обратитесь по адресу http://www.internic.net/ .
Для регистрации домена вам будет необходимо получить доступ к DNS-сервисам и еще к нескольким подобным вещам. Если ваш провайдер не предоставляет таких услуг, выкиньте официальный .asn.au или какой-то другой домен в форточку, и получите интернетовский домен Monolith Internet Domain.
Monolith предлагает бесплатные интернет-домены, кому угодно, по всему миру. Все происходит без прямого контакта ,через web-формы в вашем обозревателе (browser). Ваш домен будет иметь форму Ваш_Выбор.ml.org. Monolith предоставляет для вас DNS-сервис. Если вы хотите получать и отправлять почту для этого домена, попросите вашего провайдера быть вашим почтовым ящиком (Mail Exchanger).
Посетите http://www.ml.org/ и заполните все формы, войдите в базу данных с именем пользователя и паролем, и получите БЕСПЛАТНЫЙ домен. Вам надо будет ввести свой IP-адрес, поэтому приготовьте его заранее. Ваш домен появится в DNS через пару дней.
Хорошо, теперь перейдем к разделу для новичков или для тех, у кого нет постоянного IP-адреса или имени домена. Все, что вам надо, это отредактировать файл /etc/hosts под правами пользователя root, назвать ваш сайт как-нибудь не очень некрасиво, дать ему адрес 10.10.10.10 или нечто подобное и перезагрузить компьютер..
Вот и все, вы только что настроили компьютер для работы с pppd и chat за десять минут. Теперь перейдем к разделу, где описывается Электронная Почта.