Колисниченко Д.Н. - Linux-сервер своими руками (1077324), страница 44
Текст из файла (страница 44)
Отредактируйте файл / e t c / p p p / o p t i o n s . t t y S O , как этопоказано в листинге 7.4.Листинг 7.4,Файл/etc/ppp/options.ttySO# Устройство/dev/ttySO# Скорость57600noauthmru 1500# ваш интерфейс: удаленный интерфейс192.168.99.1:192.168.99.2# маска подсетиnetmask 2 5 5 . 2 5 5 . 2 5 5 . 0bsdcomp Оchap-interval 15debugcrtsctsmtu 552mru 552-detachС устройством и скоростью все понятно. Особое внимание обратите наследующую запись: 192.168.99.1:192.168.99.2. Между вашими модемами (собственно между «вашим» и тем, что на другой стороне) создается подсеть192.168.99.0 (netmask 255.255.255.0). По окончанию конфигурирования выделенной линии вам нужно настроить маршрутизацию (см.
man route). Если желиния у вас одна, то вы можете в конец файла / e t c / o p t i o n s . t t y S O добавить команду defaultroute. Эта запись добавляет маршрут в системную таблицумаршрутизации, используя удаленную сторону э качестве шлюза. Обычно этазапись удаляется при завершении соединения. Теперь разберемся со всемиостальными командами, задающими параметры соединения (см. табл. 7.2).Параметры соединенияКомандаТаблица 7.2ОписаниеnoauthHe требует удаленную сторону назвать себя перед тем, как начнется обмен пакетами.Используйте параметр auth — если аутентификация нужнаcrtsctsИспользовать аппаратное управление потоком данных (напр., RTS/CTS), чтобы управлятьпотоком данных на последовательном портуxonxoffИспользовать программное управление потоком данных (напр., XON/XOFF),чтобы управлять потоком данных на последовательном портуmru nУстанавливает значение MRU [Maximum Receive Unit] в n байт при договоренности.Демон pppd запросит удаленную сторону отправлять пакеты не более чем по n байт.Минимальное значение MRU 128.
Значение MRU по умолчанию 1500. Для медленныхсоединений рекомендуется 296 (40 байт для заголовка TCP/IP + 256 байт данных)mtu nУстанавливает значение MTU [Maximum Transmition Unit) в n байт. Пока другая сторона непопросит меньшее значение при договоре о MRU, pppd будет требовать у сетевого кодаядра отправлять пакеты данных не более, чем по n байт через сетевой интерфейс РРР178Настройка сетиПродолжение табл. 7.2КомандаОписаниеchap-intervalинтервалС этой опцией pppd будет заново вызывать удаленную сторону каждые _интервал_ секундdebugУвеличить уровень отладки (то же что -d).
Если эта опция есть, то pppd будет записыватьв журнал все прибывшие и отправленные пакеты в читабельной форме. Пакеты будутрегистрироваться в файлах протоколов через syslog. Эта информация может быть перенаправлена в файл соответствующей установкой /etc/syslog.conf. Если pppd скомпилирован с разрешенной extra-отладкой, он будет записывать сообщения в журнал, используясредство 1оса12 вместо daemon-detachНе переходить в фоновый режим (иначе pppd будет это делать, только если указанопоследовательное устройство)Оптимальными значениями mru и mtu являются 542 и 552 соответственно.Однако, для получения максимальной производительности, поэкспериментируйте со значениями этих параметров.
Помимо вышеуказанных команд, длянастройки ррр вы можете использовать команды, приведенные в табл. 7.3.Дополнительные параметры соединенияКомандаconnectпрограммаdisconnectпрограммаasyncmaplocalТаблица 7.3ОписаниеЗадает программу для настройки линииЗапустить данную программу после того, как pppd завершил связьВ качестве значения данного параметра указывается async-карта символов - 32-bit hex;каждый бит - символ, который надо представить в виде escape-последовательности, чтобыpppd мог его принять. 0x00000001 - это мака для '\х01', а 0x80000000 - маска для '\x1fНе использовать линии управления модемомmodemИспользовать линии управления модемомlockУказывает, что демон pppd должен создать файл блокировки для последовательного портаpassiveРазрешить опцию «passive» в LCP. С этой опцией pppd будет пытаться инициироватьсоединение; если ответ от другой стороны не принят, то pppd будет пассивно ожидатьправильный LCP-пакет от другой стороны (вместо выхода, как делается без этой опции)silent-allС этой опцией pppd не будет передавать LCP-пакеты для инициации соединения, пока непридет правильный LCP-пакет от другой стороны (как опция «passive» в старых версиях pppd)Не разрешать договариваться о любых опциях LCP и IPCP (будут использоваться значенияпо умолчанию)-amЗапретить договариваться о asyncmap-ipНе договариваться об IP-адресе (адрес должен быть указан или в options,или в командной строке)-mruЗапретить договариваться о MRU (Max Receive Unit)-pcЗапретить сжатие полей протокола+papРАР-аутентификация-papОтказаться от РАР-аутентификацииСНАР-аутентификация+chapdomain имя_домена Добавить имя домена к имени машиныname имя_машиныУстановить имя машины (в целях аутентификации)user имяУстановить имя пользователя для аутентификации этой машины на другой стороне,используя РАР.
Нельзя использовать вместе с параметром nameloginИспользовать базу данных паролей для идентификации удаленной стороны, используя РАРidle nЕсли соединение не используется в течение n секунд, то оно будет разорваноspeedЗадет скорость обмена с модемом (пропускную способность порта)179Настройка сетиПосле того как настройка ррр завершена, можно перейти к редактированию inittab. Добавьте в / e t c / i n i t t a b следующие строки:7:2345:respawn:/usr/sbin/pppd file /etc/ppp/options.О > /var/log/pppSO.log8:2345:respawn:/usr/sbin/pppd file /etc/ppp/options.1 > /var/log/pppSl.log7 и 8 — это порядковые номера, 1...6 уже заняты для системных консолей ttyl-tty6. 2345 - - уровни запуска.
Весь inittab должен выглядетьпримерно так, как это показано в листинге 7.5:Примечание.8 процессе загрузки операционная система Linux вызывает фоновый процесс init (PID= 1),который обрабатывает конфигурационный файл /etc/inittab и затем запускает сценарийзапуска системы /etc/re.d/rc.sysinit. Этот сценарий, в зависимости от режимазапуска (уровня выполнения), запускает разные демоны (фоновые задачи).
Уровень выполнения задается в файле inittab. В нашем примере (см. листинг 7.5) уровнемвыполнения по умолчанию является третий уровень. Перейти из одного уровня на другойможно с помощью команды init N, где N — номер уровня. Подробнее об этом и многомдругом, связанном с начальной загрузкой системы, вы можете прочитать в п 5.5.Листинг 7.5.
Файл inittab для выделенной линииid:3:initdefault:# System initialization.si::sysinit:/etc/re.d/re.sysinit10:0:wait:/etc/re.d/rc 011:1:wait:/etc/re.d/rc 112:2:wait:/etc/re.d/rc 213:3:wait:/etc/re.d/rc 314:4:wait:/etc/re.d/rc 415:5:wait:/etc/re.d/rc 516:6:wait:/etc/re.d/rc 6t Things to run in every runlevel.ud::once:/sbin/update# Trap CTRL-ALT-DELETEc a : : c t r l a l t d e l : / s b i n / s h u t d o w n -t3 -r nowp f : :powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"# Run gettys in standard runlevels1:2345 r e s p a w n : / s b i n / m i n g e t t y t t y l2 : 2 3 4 5 r e s p a w n : / s b i n / m i n g e t t y tty23 : 2 3 4 5 r e s p a w n : / s b i n / m i n g e t t y tty34:2345 respawn:/sbin/mingetty tty45 : 2 3 4 5 r e s p a w n : / s b i n / m i n g e t t y tty56 : 2 3 4 5 r e s p a w n : / s b i n / m i n g e t t y tty67:2345:respawn:/usr/sbin/pppd file /etc/ppp/options.0 > /var/log/pppSO.log8:2345:respawn:/usr/sbin/pppd file /etc/ppp/options.1 > /var/log/pppSl.log# Run xdm in runlevel 5# xdm is now a separate servicex : 5 : r e s p a w n : / e t c / X l l / p r e f d m -nodaemonHe забудьте надлежащим образом настроить ваши модемы! Для этоговам нужно прочитать документацию по вашему модему.
Обычно для инициализации модемов используется АТ-команда AT&L1. Однако эта командаподдерживается не всеми модемами.780Настройка сети7.6. Перед настройкой сервераПеред тем как перейти к настройке сервера, нужно решить пару организационных вопросов. Например, где расположить наш сервер и какое железо предпочтительнее использовать. Вы уже произвели базовую настройкуоперационной системы, ваш будущий сервер прекрасно, как я надеюсь,работает в вашей локальной сети.
Теперь самое время решить, где егорасположить и кто будет иметь доступ (кроме вас, естественно) к нему.Очень важно правильно расположить сервер. Теперь это не рабочая станция,практически не представляющая для злоумышленника никакого интереса, аСЕРВЕР ВАШЕЙ СЕТИ!!!Во-первых, сервер должен быть размещен в отдельном помещении, доступ в которое ограничен. В идеальном случае в серверную комнату никто,кроме вас и, возможно, вашего помощника, не должен входить. Запомните:чем меньше посторонних (да и сотрудников) имеют доступ к серверномупомещению, тем меньше проблем у вас будет. Простое нажатие на «Reset»может вызвать простой сервера (а значит и всей сети) от одной-двух минут додвух-трех часов. Например, вы установили пароль в программе первоначальной настройки компьютера (SETUP) и каждый день, придя на работу, вводите его для запуска сервера.
Допустим, что во время вашего отсутствия кто-тонажал на «Reset» или просто выключил сервер. Так как пароль знаете тольковы, это может вызвать простой сети на все время вашего отсутствия.В некоторых материнских платах можно программно отключить кнопкуперезагрузки (например, Chaintech CT 6ATA2). Я рекомендую использоватьэту возможность, если она есть. В крайнем случае, можно просто отключить«Reset», разобрав компьютер.
Перед этим (на всякий случай) прочитайтедокументацию по материнской плате.Приведенный пример несколько некорректен, так как серверы обычноработают в бесперебойном режиме и не выключаются даже ночью, но этозависит от специфики вашего предприятия. Например, если сервер используется только для выхода в Интернет сотрудников сети, то его работа ночьюпросто не имеет смысла. Сейчас рассмотрим более серьезные последствиянепредвиденной перезагрузки сервера.То, что ваша сеть будет временно недоступна и простаивать — это, какговорится, только вершина айсберга. Если ваш сервер обслуживает корпоративную базу данных, неожиданное выключение питания или перезагрузкаможет повлечь за собой куда более весомые потери — потерю информацию, азначит, времени на ее восстановление (если такое вообще окажется возможным) и, естественно, средств. Выходит, что самым «продвинутым» хакеромможет стать обыкновенный электрик, который просто выключит напряжениена щитке возле серверной комнаты.