Этот
документ описывает, как настроить PPP, подключиться к провайдеру (Internet
Service Provider, в дальнейшем ISP), настроить почту и новости, получить
постоянный IP (если это возможно), получить имя домена, и получить прекрасно
работающую машину за 30 минут.
Соединяемся с внешним
миром
В этом документе мы опишем,
как сделать это, используя PPP (Point to Point Protocol (Протокол от Точки к
Точке)), очень популярный протокол, почти всегда используемый в Интернете.
Он позволяет вашему модему "speak" с внешним миром. Это именно то, что делали программы,
такие как Trumpet Winsock в Windows 3.x, и многие другие программы, которые вы,
возможно, никогда и не видели.
В Linux мы используем
программу chat для соединения с ISP, а затем используем утилиту pppd для
'использования' соединения. По сути, chat - это номеронабиратель (dialer), а
pppd - это ваш протокол. Ниже мы опишем, как их настроить.
Связь и коммуникации при
помощи pppd и chat
Вероятно, наиболее простой
способ - это написать скрипт в домашнем каталоге 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-адреса, имена доменов и
подсети
Для многих, кто использует
написанное выше, смена 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/default.htm для
регистрации домена. В Соединенных Штатах обратитесь по адресу
http://www.internic.net/default.htm.
Для регистрации домена вам
будет необходимо получить доступ к DNS-сервисам и еще к нескольким подобным
вещам. Если ваш провайдер не предоставляет таких услуг, выкиньте официальный
.asn.au или какой-то другой домен в форточку, и получите интернетовский домен
Monolith Internet Domain.
Monolith предлагает
бесплатные интернет-домены, кому угодно, по всему миру. Все происходит без
прямого контакта ,через web-формы в вашем обозревателе (browser). Ваш домен
будет иметь форму Ваш_Выбор.ml.org. Monolith предоставляет для вас DNS-сервис.
Если вы хотите получать и отправлять почту для этого домена, попросите вашего
провайдера быть вашим почтовым ящиком (Mail Exchanger).
Посетите
http://www.ml.org/default.htm и
заполните все формы, войдите в базу данных с именем пользователя и паролем, и
получите БЕСПЛАТНЫЙ домен. Вам надо будет ввести свой IP-адрес, поэтому
приготовьте его заранее. Ваш домен появится в DNS через пару дней.
Хорошо, теперь перейдем к
разделу для новичков или для тех, у кого нет постоянного IP-адреса или имени
домена. Все, что вам надо, это отредактировать файл /etc/hosts под правами
пользователя root, назвать ваш сайт как-нибудь не очень некрасиво, дать ему
адрес 10.10.10.10 или нечто подобное и перезагрузить компьютер..
Вот и все, вы только что
настроили компьютер для работы с pppd и chat за десять минут. Теперь перейдем к
разделу, где описывается Электронная Почта.
Электронная почта в вашем Linux-е
Один из самых важных
аспектов Интернета, это удивительная возможность посылать почту внутри страны и
за границу. Для Linux есть очень много простых почтовых программ для текстового
режима. Та, что мы опишем здесь, называется Pine (Program for Internet Mail and
News(Программа для почты и новостей Интернета)), сделанная в Вашингтонском
Университете, и программу fetchmail для получения почты, автор Eric S. Raymond.
Обе программы должны быть включены в ваш дистрибутив Linux.
Fetchmail - это программа,
принимающая вашу почту с сервера при помощи протокола POP, переносящая ее в вашу
машину, и удаляющая ее с сервера, как делают, например, Eudora или Microsoft
Internet Mail/Exchange. Для настройки и автоматизации fetchmail, вам необходим
файл в вашем домашнем каталоге под именем .fetchmailrc. Просто откройте /.fetchmailrc
(Запомните: это вы делаете под своим именем, а не под root-ом в вашем любимом
редакторе), и взгляните на опции командной строки, приведенной ниже:
poll
mail.yourisp.com proto pop3 user
учетное_имя
password пароль
user
login_name with pass your_passwd is login_name here
Все, что вам нужно сделать,
это заменить mail.yourisp.com именем почтового сервера своего ISP, пароль
- своим паролем, и учетное_имя - своим именем входа.
Важная деталь, которую
стоит заметить. Чтобы Pine и fetchmail работали корректно, ваше учетное имя
должно соответствовать имени входа, которое вы используете у провайдера. То есть
локальное имя входа должно совпадать с именем входа в почтовый сервер и с вашим
почтовым (e-mail) адресом.
Затем убедитесь, что у
файла .fetchmailrc правильно проставлены права (чтение/запись только
владельцем). Fetchmail можно запустить двумя способами, в стандартном режиме
(когда он получает почту от сервера и прекращает работу), или в режиме демона (daemon)
(Когда он остается активен и проверяет/загружает почту каждые X секунд). Чтобы
использовать режим демона, наберите fetchmail -a -d(Секунд между запросами).
Опция -a включает загрузку всей почты. Чтобы запустит его в обычном режиме,
наберите fetchmail -a.
Затем, вам надо будет
настроить Pine. Запустите Pine, набрав pine в командной строке, выберите пункт
Setup - Configuration. Настройте строку userdomain, как ваш домен в почтовом (e-mail)
адресе, например, для адреса jack@linux.org, это будет linux.org. Затем
проставьте smtp-сервер такой же, как и POP-сервер (напишите то же, что писали в
настройке fetchmail). Например, это будет www.linux.org. Если вам нужны новости,
настройте строку nntp server в соответствии с сервером новостей вашего ISP.
Ну теперь у вас все есть, и
все должно работать. Для установления связи с провайдером просто запустите /ppp-connect
под пользователем root. Затем, чтобы получить почту, запустите fetchmail уже под
своим рабочим паролем. Чтобы просмотреть почту и новости, используйте Pine.
Установите текстовый обозреватель www, например, Lynx, чтобы вы могли
просматривать www.
|