Колисниченко Д.Н. - Linux-сервер своими руками (1077324), страница 87
Текст из файла (страница 87)
Включение IP ForwardingРазрешение пересылки IP устанавливается в файле / e t c / s y s c o n f i g/network примерно так: FORWARD_IPV4=yes. При этом ваше ядро должнобыть скомпилировано для поддержки IP_FORWARD.Для включения IP Forwarding введите команду:# echo "1" > / p r o c / n e t / i p _ f o r w a r dВ некоторых дистрибутивах IP Forwarding включается несколько иначе.Если в вашем дистрибутиве есть программа netconf, используйте ее длявключения IP Forwarding, если ее нет, изучите документацию по вашемудистрибутиву.Теперь вы готовы к работе!17.2.5.
Второй вариант настройкиЭтот вариант может оказаться даже более простым, чем первый. Настройки файлов / e t c / o p t i o n s и / e t c / o p t i o n s . ttySx остаются прежними, но строку myhost:pp01 нужно заменить на строку вида:Server_IP:Client_IPнапример,192.168.0.1:192.168.0.11Теперь нужно изменить содержание файла /etc/ppp/pap-secrets(листинг 17.12).Листинг 17.12.
Фрагмент файла/etc/ppp/pap-secrets#userl сервер.домен ""*user2 сервер.домен ""*#где: userl- это имя пользователя, зарегистрированного в системе;сервер.домен • - это имя сервера входящих звонков;- пароли брать из / e t c / p a s s w d (/etc/shadow);*- абонент может аутентифицироваться с любого IP.376Практические примеры.
Обратный звонокПри желании можно назначить другой пароль. В этом случае, еслиданный сервер используется также и в качестве почтовика, то для входящихзвонков и сервиса POP будут использоваться различные пароли.Внимание!Пароли в /etc/ppp/pap-secrets содержатся в открытом виде и не кодируются спомощью алгоритма MD5 (или DES), как в файле /etc/shadow (/etc/passwd).Файл /etc/hosts править не нужно.Вот, собственно, и все.17.2.6. Если что-то не работает...Лучший совет в этом случае — смотрите файл /var/log/messages.
Внем много всего интересного. Если у вас появляются сообщения вида:modprobe: c a n ' t locate module c h a r - m a j o r - 2 4то надо прописать в файле /etc/conf .modules следующие строки:alias ppp-compress-21 bsd_compalias ppp-compress-24 ppp_deflatealias ppp-compress-26 ppp_deflate17.2.7. Настройка Windows-клиентовРассмотрим наиболее распространенную ситуацию, когда для подключения к нашему серверу используется обыкновенное удаленное соединение.IP-адрес клиента и адрес сервера DNS назначается провайдером, то естьнашим сервером. При этом в свойствах соединения нужно указать следующие данные (см.
рис. 17.1):» Тип сервера удаленного доступа: РРР.» Дополнительные параметры: только «Программное сжатие данных».* Допустимые протоколы: только «TCP/IP»....;•;.Г Г1ЯА|- '"Ч .I**»?'.»'''»'''»<;.-!•;.,:-!•:•.;••:•;^Г V;,''-r I :!и1и*|..ч»мн(-Ад|^ :•;Г~ :>ijn>i.-t i:i;i'B«.jj:ji,75,mr!i>s-'.] , •|.Ш'.'.'-••.•>'•: ,ВГ'j'V''jг L11 :;.;:,-J ЩГ--.--1I - .
'-' . ; • • . < . - ..„™?_1Z~ JZIZri: Г:р" TCP/IP'|5:^: :ИСПИЛ!. . -i. ••'.''. i.,...l|."f.:Ul.!:»..:. Д ' К . д а?=•"'::I...'....i;°...'I.•.„iWlCSHIC't(4K"J]Рис. 17.1. Параметры РРР377Практические примеры. Обратный звонок17.2.8. Дополнительная литератураИз дополнительной литературы рекомендую эту книгу, если вы ее ещене прочитали, а также руководства по протоколу РРР, системе доменныхимен DNS, и руководство NET3-HOWTO.
Все эти руководства доступны намоей домашней страничке — http://dkws.narod.ru, а также на прилагаемомкомпакт-диске.17.3. Обратный звонок17.3.1. Что такое callback?Первоначально обратный звонок был предназначен для снижения стоимости международных телефонных переговоров. Стоимость разговора определяется так: отсчет начинается с момента, когда вызываемый абонент поднялтрубку или после пятого гудка, если абонент не отвечает, интервал тарификации -- 1 минута, то есть каждая неполная минута будет оплачиваться какполная. Стоимость самого разговора зависит от страны, из которой мызвоним.
Например, в Украине 1 минута связи с США вам обойдется в 2,5...3,3доллара США в зависимости от типа линии, которую вы используете: обыкновенную или Utel. Звонок из США в Украину вам обойдется 1...2 доллара.На этом и основана идея callback (callback — обратный звонок).Рассмотрим небольшой пример: звонок из Украины в США:1. Украинский абонент набирает выделенный ему номер в США и послепервого вызова кладет трубку. Этим звонком он активирует специальноеоборудование системы callback. Естественно, этот звонок не оплачивается,потому что оплата начинается с момента поднятия трубки вызываемымабонентом или после пятого вызова. Украинский абонент должен бытьподключен к линии с тональным набором.2. Через 5...20 секунд система callback перезванивает абоненту Украины иприглашает его набрать номер, по которому он хочет позвонить.
Системаcallback набирает этот номер. При этом соединение устанавливается изСША, а не из Украины, что в конечном итоге ведет к снижению стоимостивсего звонка. При этом интервал тарификации не одна минута, как призвонке из Украины, а всего 6 секунд. ,В случае с доступом в какую-нибудь сеть система callback работает почтианалогично. Только сейчас нашей целью является не снижение стоимости(хотя это тоже не исключено), а повышение безопасности сети и дополнительная ее защита от несанкционированного доступа.Работает callback примерно так: клиент сети как обычно устанавливаетсоединение с сервером и проходит аутентификацию. Если аутентификацияпрошла успешно, сервер обрывает соединение (кладет трубку).
Естественно,если аутентификация не прошла, сервер кладет трубку и не предпринимаетникаких дальнейших действий. Кроме логина пароля, клиент также передаетнекоторое «волшебное» слово. Если сервер получил это слово, то черезопределенное время (обычно 25...30 секунд) сервер обратного звонка перезвонит по заранее запрограммированному номеру клиента и установит соедине378Практические примеры. Обратный звонокние. После этого можно работать в сети как обычно. Как видите, если раньшедля доступа в сеть достаточно было знать имя пользователя и пароль, тосейчас нужно, чтобы компьютер, который пытается войти в сеть, был подключен к телефонной линии с заранее запрограммированным номером.Например, ваш сосед купил пакет неограниченного доступа к Интернет,а вы каким-то образом узнали его имя пользователя и пароль.
При обычномсоединении (не callback) вы можете работать в Интернет так же, как и сосед,но, естественно, в разное время. При использовании технологии callbackподобное уже не пройдет, потому что система callback перезвонит не к вамдомой, а к вашему соседу. Таким образом, система callback является дополнительным барьером для нежелательных гостей нашей сети.В этой главе будут рассмотрены два варианта настройки системы callback.Второй вариант более простой и удобный для клиентов: для установлениясоединения не нужно никаких скриптов, но этот способ почему-то не всегдакорректно работает. Первый требует специальной настройки клиентов, но работает в большинстве случаев.
Я рекомендую вам поступить следующим образом:ознакомиться с обоими способами, а начать настройку сначала со второгоспособа и, если он у вас не будет работать, перейти к настройке первого.17.3.2. Настройка сервера. Способ 1Приступим к настройке по первому способу. Как я уже отмечал, этотспособ предполагает дополнительную настройку клиентов, что не оченьудобно. Например, если вы являетесь администратором компании-провайдера Интернет, и у вас несколько сотен пользователей, настраивать все машины, даже если эта работа оплачивается, не очень хочется. Можно, конечно,распечатать подробные инструкции для клиентов, но ведь существуют итакие пользователи, которые и обычный доступ настроить не в состоянии.Я предполагаю, что программы mgetty и pppd у вас уже настроены и самсервер удаленного доступа нормально функционирует.
Напомню, что установка и настройка программы mgetty была подробно рассмотрена в предыдущем п. 17.2.При сборке программы mgetty нужно включить опцию автоматическогораспознания pap-авторизации. Если вы этого не сделали, сейчас самое времяэто сделать. Если вы установили mgetty из пакетов RPM, то можете пропустить инструкции по включению этой функции. Хотя если у вас все-такифункция DAUTO_PPP работать не будет, даже при установке из пакетовRPM, вам придется пересобрать программу самостоятельно. Исходные тексты программы mgetty доступны по адресу http://alpha.greenie.net/mgetty/.После распаковки копируем файл policy.h-Dist в файл policy.h.
В этомфайле нужно сделать определенные изменения, которые подходят для вашейсистемы. В большинстве случаев нужно изменить расположение каталоговили же вообще ничего не изменять.Теперь нужно включить автоматическое распознавание рар-авторизации.Для этого в файле Makefile найдите строку:CFLAGS=-02 -Wall -pipe379Практические примеры. Обратный звоноки измените ее на:CFLAGS=-02 -Wall -pipe -DOFIDO -DOAUTO_PPPВ этом же файле можно изменить установочные каталоги, но я не рекомендую этого делать. Оставьте все как есть: SBINDIR=/sbin, BINDIR=/binПосле этого выполните две команды, которые откомпилируют и установят mgetty:make allmake i n s t a l lТеперь перейдите в каталог callback каталога, который содержит исходныетексты mgetty. Скопируйте программу callback в каталог / u s r / s b i n , а файлcallback, config — в каталог /etc/mgetty+sendfax. Отредактируем файл/ e t c / m g e t t y + s e n d f a x / l o g i n .