(Linux - свободно распространяемый UNIX клон, написанный с нуля Линусом
Торвалдсом (Linus Torvalds) с помощью большой команды добровольцев по всей
Сети.) С начала 1998 года интерес к Linux во всем мире резко
возрос.Компьютерные журналы публикуют статьи про эту ОС и интервью с ее
ЛинусомТорвалдсом. Под Linux были "портированы"
практически все коммерческиесистемы управления базами данных: Interbase,
Ingres, Informix, Oracle, DB2 идругие. Коммерческие производители софта и
железа начали серьезно относится кLinux. Сначала IBM, а потом Compaq
заявили о выпуске своих серверовBrandName с ОС Linux. О всплеске
интереса к Linux в России можно судить по статистикепоисковой системы
Rambler. В списке самых "запрашиваемых" слов (Top 100Search Words)
слово "linux" стоит на втором (!) месте, в то время как "nt"
-на 40. И это при том, что полгода назад слова "linux" вообще не было
в этомсписке. Кейт Доусон (http://www.tbtf.com/archive/0138.html#s03) еще
в феврале1998 опубликовал информацию IDС о том, что число установок Linux во
всеммире достигло порядка 7 млн. Цифра, сравнимая с количеством установок NT.
В России (как и во всем мире) разные клоны UNIX традиционно
используются Интернет- провайдерами. Крупные провайдеры работают на серверахSun,
более мелкие - на свободно распространяемых UNIX: FreeBSD и Linux В
качестве Internet сервера Linux предоставляет все необходимыевозможности:
почтовый сервер, web-сервер, прокси-сервер, dns и news-сервера,развитые средства
маршрутизации. Все это может хорошо работать на одноймашине. Linux не
сильно требовательна к "железу". Небольшой маршрутизатор наLinux
может успешно работать на PC с 486 процессором. Такой сервер может
маршрутизировать TCP/IP в сети из 10-20 а то и больше машин с каналом в
Интернет 64-128к. В Linux существует понятие дистрибутива и ядра. На самом
деле Linux -это только ядро. Дистрибутив - это поставка ядра Linux и
прикладныхпрограмм, поставляемых с ядром. Один из самых популярных дистрибутивов
Linux- RedHat (последняя версия - RedHat 5.2). Практически во все
новыедистрибутивы входит основной набор серверных программ. В RedHat входит
Mailсервер sendmail, web-сервер Apache, DNS-сервер named. Sendmail -
является традиционным для UNIX SMTP-сервером. Несмотря нанекоторые трудности
в конфигурировании - это надежное средство работы спочтой. Основное
достоинство sendmail - гибкость. В sendmail можно настроитьпрактически все что
нужно: алиасы, сложный форвард, несколько виртуальныхсерверов, защита от
спама, ограничения размера почтового ящика и многоедругое. Для Linux также
существуют также другие smtp сервера (Qmail, SmailZmail и др.)
Web сервер Apache
По статистике NetCraft
(http://www.netcraft.com/Survey/) web - серверApache работает на 53% всех
серверов в Интернет По результатам исследований Алексея Тутубалина,
создателя русскогоApache (http://www.lexa.ru/ru-survey/) и
Валерия Коржова(http://ruc.osp.ru/igor/spider.html) Apache установлен
на 74% и 72 %русскоязычных Интернет -серверов. (Данные на декабрь 1998
года). ВсегоАлексей Тутубалин исследовал 9193 российских Web серверов, а
Валерий Коржов- 8099. Русский Apache, согласно Тутубалину, установлен на 53%
серверов. Успех сервера Apache в всем мире, по мнению СomputerWeekly, (N6,
1998,c.1,20,46) основан на трех составляющих Apache распространяется
бесплатно, причем бесплатно распространяется нетолько двоичный код, но и
исходный текст. Это обеспечивает серверуисключительную гибкость. Архитектура
Apache отличается модульностью, чтотакже облегчает настройку. Apache
часто обновляется. Первая версия появилась в декабре 1995 г. и стех пор
разработчики несколько раз переписывали ядро системы заново в целях
усовершенствования продукта. Кроме того, хотя коллектив разработчиков Apache
официально не берет на себя обязательств по обслуживанию пользователей, на
практике качество сервиса оказывается гораздо лучшим, чем у коммерческих
продуктов конкурентов. Быстродействие сервера. Начиная с версии 1.2
Apache поддерживаетпротокол HTTP 1.1, который выполняет загрузку
Web-страниц в 4 - 8 разбыстрее, чем HTTP 1.0. Компании Microsoft и Netscape
реализовали HTTP 1.1гораздо позже, чем группа разработчиков Apache.
(Небольшой сравнительный анализ, правда несколько устаревший, некоторыхWWW
серверов, а также полный список всех известных серверов Web можно найтив
Библиотеке Мошкова,
http://kulichki.rambler.ru/moshkow/WEBMASTER/serwerswww.txt) Apache, вернее
его русский вариант (Russian Apache) - это, де-факто,стандарт для
русскоязычного Web-сервера. (Последняя версия - 1.3.3 PL27.3,
можно бесплатно взять сhttp://apache.lexa.ru/) Именно в Русском
Apache впервые появилась серверная перекодировка "подклиента", то
есть вывод Web -страницы в той кодировке, которую поддерживаетоперационная
система и броузер. Последние версии Русского Apache содержатразвитые средства
работы с русским языком: возможность задания разныхкодировок для разных
директорий на сервере, перекодировка "под клиента",задание разных
префиксов или директорий для разных кодировок (например,
http://www-win.company.ru и http://www-koi.company.ru или http://www.
company.ru/win и http://www.company.ru/koi). Перекодируется также
информация, поступающая от клиента (запросы GET, PUT, POST). Основу
русифицированной версии составляет Web-сервер Apache к которомудобавлен ряд
новых функций. Кроме перекодировки русских букв к новымфункциям
относятся: Выдача правильных значений параметра "Content-Type:-
Charset=" всоответствии с указанным согласованием; Вывод при
необходимости заголовка "Expires:" для proxy-серверов корректное
кэширование Web-страниц (если proxy-сервер совместим спротоколом HTTP 1.1).
По "настраиваемости" и гибкости данный сервер, несомненно занимает
одноиз первых мест. Сравнение с Microsoft Internet Information Server (IIS) 3.0
явно не пользу Microsoft. Например, такую простую вещь как задание двух
вариантов стандартного документа сервера (например, index.htm и index.htmlили
index.cgi) в IIS сделать стандартными средствами нельзя. В Apache можно
настроить практически все. При этом настройку можетпроизводить как
администратор сервера (с помощью файлов настройки или даже спомощью графической
утилиты), так и конкретной пользователь (с помощьюспециального файла
(обычно .htdocs), если администратор разрешил эту опцию). Ключевые
возможности Apache Поддержка виртуальных хостов (virtual hosts) -
позволяет держать наодной машине несколько виртуальных web- серверов.
Развитая система аутентификации - позволяет ограничить доступ к разным
директориям на основе файла паролей или по IP адресу. Работа с CGI
скриптами, вcтроенный интерпретатор Perl Модульность системы Модульность
Apache позволяет не только подключить свои модули, но идаже дописать
недостающие функции. Валерий Коржов (http://ruc.osp.ru/igor/spider.html)
описывает случай,когда во время тестирования типов Web серверов
сервер города Сызрани(http://www.syzran.ru) ответил, что он называется
Syzran. Когда жеисследователи заглянули на основную страницу сервера,
они обнаружиликартинку "Powered by russian Apache", то есть это
оказался все тот жеApache, но переделанный под свои нужды.
Анализ Log файлов
Вся информация о том, кто и когда посещал
ваш сервер и какие директориина нем смотрел сохраняется в log файлах (обычно
access_log, error_log и др).Существует множество программ (скриптов),
анализирующих Log файлы и выдающихотчеты (обычно в формате HTML) с графиками.
Большая коллекция ссылок натакие программы представлена на
сервере Cgi-Resources(http://www.cgi-resources.com/). Скрипты на языке
Perl, анализирующие Logфайлы, можно найти в разделе Logging
Accesses and Statistics
(http://www.cgi-resources.com/Programs_and_Scripts/Perl
/Logging_Accesses_and_Statistics/)
Squid
Proxy - сервер squid обеспечивает две основные функции,
необходимые дляработы корпоративной и распределенной сети: ускоряет работу с
Интернет (www,ftp) для пользователя и дает возможность администратору
ограничитьпользователю доступ к разным ресурсам Интернет. (Squid,
последняя версия 1.22, можно бесплатно взять с
http://squid.nlanr.net/Squid/) При использовании squid можно на 20-30%
снизить нагрузку на канал вИнтернет, что при использовании низкоскоростных
каналов (модем 33.600,выделенная линия 64 кб) или большого количества
пользователей ведет кускорению работы для каждого пользователя в отдельности.
Сервер squid позволяет ввести ограничения на доступ пользователям кразным
сайтам, при этом разные пользователи могут обладать разными правами.Можно
сделать и так, что у каждого пользователя есть свой логин и пароль надоступ в
Интернет и работать он сможет с любой машины в локальной сети. Вэто случае
администратор может отследить кто какие ресурсы использует. Дополнительные
функции Squid Иерархия Proxy Редиректоры (Redirectors)
"Прозрачный" Proxy Squid позволяет создавать иерархию Proxy
(иерархию кэшей). Иерархиякешей это структура кеширующих прокси-серверов
расположенных логически как родительский/дочерний и братский узлы,
таким образом, что кешиближайшие к каналу в Internet являются родителями
тем, которые находятсядальше от точки входа в Internet. При обращении
пользователя к Proxyсерверу, Squid ищет информацию сначала в своем
кэше, а затем,последовательно, во всех кэшах иерархии. Можно
зарегистрировать свой серверSquid в базе NLANR
(http://ircache.nlanr.net/Cache/joining.html) и выбратьсебе подходящие
родительские/дочерние узлы. Если ваш провайдер Интернетиспользует Proxy
сервер можно попросить его включить ваш сервер Squid в егоиерархию.
Преимущества иерархического кеширования заключаются в снижении загрузкиканала,
уменьшении времени доступа, лучшей устойчивости к сбоям. Squid Redirectors
"подменяют" одни документы другими. Эту функцию можноиспользовать для
блокирования доступа пользователей к различным серверам(например, содержащим
информацию "для взрослых"). Также представляет интересвозможность
фильтровать рекламу (баннеры) на WWW страницах. Андрей Ковалев
(http://ethereal.ru/~avk/anti-ad.html) предлагаетпростой скрипт (на Perl)
для Squid, позволяющий фильтровать рекламу. Егоидея основана на том, что
URL большинства "баннерных служб" (Reklama.Ru,InterReklema и др)
хорошо известны. Таким образом скрипт вызывает SquidRedirectors и вместо
загрузки программы, генерирующей баннер, загружаетлюбую картинку с
локального сервера. Благодаря этому скрипту можно сильноснизить нагрузку на
канал в Интернет. "Прозрачный" Proxy позволяет пользоваться Proxy
сервером без настройкибраузера. По умолчанию Squid работает через порт
3128, поэтому чтобыпользователь работал через Proxy ему необходимо
настроить соответствующиеопции Браузера. Сервер Squid можно настроить на работу
через порт 80, послеэтого весь стандартный http трафик пойдет через Squid.
Анализ Log файлов На странице http://squid.nlanr.net/Squid/Scripts/
перечислены ссылки напрограммы, позволяющие анализировать Log файлы Squid.
Программа sqmgrlog(http://www.orso.x5.net/index.html) генерирует отчет (в
HTML формате) поиспользованию Интернет (кто куда "ходил" по http и
ftp) на основе файлаaccess.log. Если в Squid используется аутентификация, в
отчете вместо IPадресов будет присутствовать имя пользователя. Отчет можно
разместить на Webтак, чтобы его можно было читать через WWW. Все
рассмотренное выше программное обеспечение распространяется висходных кодах
и будет также работать под большинством реализаций UNIX, какнекоммерческих
(например FreeBSD), так и коммерческих.
FireWall
При использовании FireWall (см ниже)
proxy-сервер позволитпользователям закрытой корпоративной сети работать с WWW
и FTP. Одна из ключевых возможностей Linux, встроенная в ядро системы, -
этотак называемые функции "маскарадинг" (IP Masquerade) и
"файерволинг"(Firewalling). IP Masquerade - вариант Proxy сервера.
С помощью IP Masquerade можно организовать подключение к Интернет машинв
локальной сети через один IP адрес(через одну телефонную линию). В этомслучае
Linux-машина используется как Gateway. Машина-gateway подключается кИнтернет с
помощью модема. На все машины в локальной сети назначаются
"фиктивные" IP-адреса (из свободной зоны, например c
192.168.0.1 по192.168.0.10). После этого все машины в данной локальной
сети получаютдоступ в Интернет через gateway. IP Masquerade - это,
также, хорошеесредство защиты сети, так как все машины, кроме gateway, не
видны изИнтернет. С помощью возможностей "файерволинга"
можно организовать firewallсервер на базе Linux. Существуют два типа Firewall
сервера IP Firewall (или Firewall с фильтрацией пакетов) Proxy сервер
Собственно говоря, первый тип сервера обеспечивает защиту сети от атакизвне, а
второй - позволяет устанавливать ограничения для пользователейвнутренней
сети. IP Firewall построен на фильтрации пакетов. С помощью firewall
этоготипа можно фильтровать пакеты, на основе данных о портах, сети
отправителяпакета и информации о типе пакета. Например, можно закрыть все
порты заисключением нескольких. После этого все пакеты, посланные на закрытые
портыбудут отражены firewall-сервером. Proxy сервер обеспечивает
"непрямой" выход в Интернет через Firewall. Спомощью Proxy сервера
пользователь работает с ресурсами Интернет ненапрямую, а через сервер.
Таким образом для каждого пользователя можнозадавать список доступных им
ресурсов Интернет. Реализация Firewall сервера для Linux может включать в
себя все трикомпонента: IP Masquerade IP Firewall Proxy сервер
(Squid) С помощью IP Masquerade мы закрываем все компьютеры в локальной
сети(кроме серверов) от атак извне (другими словами, мы их делаем невидимыми,
задав им "несуществующие" адреса и подменяя их на адрес данной
машины). Спомощью IP Firewall мы защищаем сервера (важные сервисы Интернет,
напримерwww, ftp и другие) от "направленных" атак хакеров. С помощью
Proxy серверамы, даем возможность пользователям закрытой корпоративной сети
работать вИнтернет, сокращаем интенсивность обращения к внешним ресурсом за
счеткеширования данных, а также устанавливаем для них ограничения.
Контроллер домена Windows NT
Одна из основных функций
Windows NT - контроллер домена и подключениесетевых дисков с Windows станций.
После выхода системы "Samba Server 2.0"эта возможность теперь есть
и для Linux. С помощью этой системы каждыйпользователь корпоративной сети
может работать со своей рабочей директориина сервере Linux как с обычным
сетевым диском Windows. Можно редактировать исохранять файлы (например html
документы) прямо на сервере, не прибегая куслугам Ftp. Точно также с
консоли Linux можно получить доступ к сетевым дискам всети Microsoft. На
каждую директорию средствами операционной системы можно установитьдисковые
"квоты" и после этого использовать Linux как файл-сервер.
Интеграция с Novell
Интеграция между Linux и Novell может
осуществляться путем: Монтирования томов Novell на Linux Использование
сервера печати Novell на Linux Маршрутизации протокола IPX Эмуляторы
Mars Caldera Недостатки Как и любое другое сетевое решение Linux-
сервер не лишен недостатков. Основной его недостаток - отсутствие
большого количества прикладныхпрограмм, не относящихся к Интернет. Еще год
назад под Linux не было "настоящих" систем управления базамиданных.
Сейчас c серверным ПО эта проблема практически решена. Насегодняшний
день под Linux нет стандартных средств документооборота(GroupWare) и
систем планирования рабочего времени (Shreduling). И хотя IBM заявляет,
что планирует выпуск системы документооборотаLotus Notes под Linux,
рассчитывать на появление большого количества такогорода продуктов, наверное,
не стоит. Однако, новое ПО постоянно появляется
Опыт практической эксплуатации Linux
Автор статьи успешно
использует Linux в качестве платформы для Интернетсервера и маршрутизации.
Интернет- сервер (IBM PC, Pentium II, 64мб RAM, 3гбHDD IDE) обслуживает
порядка 60 машин в распределенной гетерогенной сети.Сеть включает в себя два
сегмента, связанных по выделенной линии 64к.
Переход на Linux
Первоначально, в качестве Интернет-
сервера использовался сервер подNT. (Web- сервер - Microsoft Internet
Information Server, Mail Server -Lotus Notes). Сервер под NT
использовался также как сервер документооборота LotusNotes. В течении
3-х месячной эксплуатации Mail Server работал оченьнеустойчиво, часто не
выдерживал большой нагрузки (прием пересылка большихписем), чем доставлял много
хлопот системным администраторам. В основную поставку Lotus Notes не
входило система защиты smtp сервераот "спэма", что позволило
недоброжелателям из Интернет пользоваться даннымсервером для рассылки своего
"спэма". В результате сервер был включен в"черный
список". Все эти проблемы можно было решить путем установки более
мощной машины(2-х процессорного Pentium -II) и покупкой дополнительного
программногообеспечения. Однако все это требовало серьезных финансовых затрат.
Было принято решение перейти на сервер Linux. На сервере Linux установлен
Web -сервер (Apache Rus.), Ftp- сервер,прокси-сервер (Squid), Mail-сервер
(Sendmail), Dns-сервер (Named),Samba-server. Web-сервер отвечает за
работу 3 виртуальных серверов, для каждого изкоторых ведутся свои log-файлы.
За разные директории сервера отвечаютразличные сотрудники. Прайс-листы
сервера обновляются менеджерами полокальной сети с помощью Samba
Server. Другие директории обновляютсясотрудниками по Ftp. Прокси-сервер
был установлен для контроля за доступом к Интернет и"разгрузки"
выделенной линии (64к). После эксплуатации сервера в течении 6месяцев удалось
"разгрузить" канал в Интернет на 30-50%.
Распределенная сеть
Сеть, как уже говорилась, состоит
из двух сегментов, связанныхвыделенной линией (точнее ISDN каналом). За
маршрутизацию TCP/IP из (в) Интернет и внутри первого сегментаотвечает
маршрутизатор Cisco. Один канал (ISDN B1, 64к) отведен на Интернет,второй (B2,
64к) обслуживает выделенную линию между сегментами сети. Во втором небольшом
(10 машин) сегменте сети установлен второй Linuxсервер, которые используется
как маршрутизатор, firewall и mail- сервер. Этот сервер маршрутизирует
трафик внутри своей локальной сети, вИнтернет (через выделенную линию и
Cisco) и в локальную сеть первогосегмента. (см. Рисунок) /* здесь должна
быть схема сети */ Маршрутизация почты между сегментами реализована
через Алиасы(Aliases). Главный сервер поддерживает общий почтовый домен
(company.ru). Вконфигурации Маil -сервера записано, что почту пользователя
из второгосегмента надо пересылать на Linux сервер, находящийся во втором
сегменте. Пользователи сегмента 2 скачивают почту со своего локального
сервера,что также препятствует "загрузке" выделенной линии. Точно
также, когда пользователь второго сегмента отправляет почту,локальный сервер
пересылает ее на основной сервер. Если почта предназначенапользователю
локальной сети основной Mail сервер просто копирует письмо всоответсвующюю
директорию на сервере. Если же письмо адресовано пользователюИнтернет, Mail
сервер отправляет его через SMTP. Mail - сервер на главной Linux -машине
обслуживает несколько почтовыхдоменов.
Итак, вкратце, достоинства Linux:
Большие серверные
возможности Гибкая настройка и управление. Бесплатное распространение.
Исходя из всего вышесказанного, Linux - может быть хорошим и недорогим
решением для Интернет и даже корпоративного сервера. Информация о ПО,
рассмотренном в этой статье Русский Apache: http://apache.lexa.ru/ Можно
бесплатно скачать самуюсвежую версию. Документация, "Как
настроить?", FAQ. "Дистрибутивный" Apache:
http://www.apache.org Squid: http://squid.nlanr.net/Squid/ Свежая
версия системы,документация, FAQ Squid FAQ на русском:
http://www.lgg.ru/~linux/books/Squid-faq.html
Документация по Linux в Интернет:
Русскоязычные ресурсы:
Телеконференции: fido7.ru.linux, fido7.ru.unix.linux -
"основная" русскоязычнаяконференция по Linux. Рассматриваются
все вопросы связанные с ОС Linux отпрограммирования до настройки. WWW:
http://www.linux.org.ru - Новости, 10mb документации на русском языке,переводы
Man Pages, HowTo, FAQ, ссылки на другие ресурсы по Linux, поиск посерверу. Есть
также Web форум, где можно задать свои вопросы и получитьответы на них.
Один из самых популярных сайтов про Linux
http://kulichki.rambler.ru/moshkow/ - "юниксоидам всех стран".
Большаяколлекция ссылок на ресурсы по UNIX и LINUX (книги М.Уэлш. Инсталляция
Linuxи первые шаги, А.Костарев. Настройка Linux Интернет
сервером,Конфигурирование ядра Linux. (пер.А.Костарев) Владимир Водолазский.
Путь кLinux(для новичков) и др.) http://www.linux.opennet.ru/ Большой
каталог ссылок (с описанием) наLinux ресурсов, обзоры программ, статьи.
Удобный интерфейс, рубрикация,поиск. http://xtalk.price.ru/linux/ Страница
Бориса Тоботраса. Всякая всячинапро Linux, Перевод Linux Meta-FAQ, украинизация
Linux, ссылки http://www.dkd.ot.lt/hompag/linux/koi8/Cover/Cover.htm
Линукс-Чайник.Введение в Linux, "Где взять?", "Как
установить?", новости, полезные советы.
http://linuxfocus.nevod.ru/Russian/ Журнал LinuxFocus по русски. "
LinuxFocus - в настоящий момент это единственный многоязыковой электронный
журнал посвященный операционной системе Linux. LF создается и развивается
усилиями многих добровольцев со всего мира. "
http://www.nevod.ru/linux/ - База данных русифицированного программного
обеспечения (Проект), Ежедневные новости Linux от НЕВОД'а, много иллюстраций
(схем), Русский FreshMeat (новости Linux) http://www.irwin.ru/linux/ -
Каталог программ, проектов, сайтов,документации. Подборка ссылок на русские
ресурсы с описаниями http://www.citforum.ru/operating_systems/unix.shtml -
Подборка статей икниг по Unix и Linux http://linux.inf.ru/ Linux
Information Site: Linux Gazette,документация по-английски, FTP архив.
Довольно неудобный текстовыйинтерфейс. Англоязычные ресурсы:
Телеконференции: alt.os.linux - "Альтернативная" (неофициальная)
конференция по Linux comp.os.linux.* - группа конференций, каждая из
которых посвященаопределенному аспекту ОС. Администрирование, установка,
"железо", вопросы иответы и др. WWW: http://www.linux.org -
Официальный сервер Linux http://www.linuxhq.org - Информация про ядро Linux
http://sunsite.unc.edu/LDP - Linux Documentation Project
(Документация). Один из самых известных сайтов. http://slashdot.org -
Новости Linux http://www.freshmeat.net - ПО под Linux Дистрибуция
http://www.redhat.ru - Один из самых известных и популярных
дистрибутивов Linux http://www.slackware.com/ Дистрибутив SlackWare
http://www.suse.de - Дистрибутив S.u.S.E, немецкая разработка
http://www.cheapbytes.com/ - большое количество различных дистрибутивовLinux на
CD (Debian, SlackWare, RedHat, OpenLinux и др.) В России
http://www.vinchi.ru/ Vinchi Group. RedHat Linux 5.2 на CD + Некотораярусская
документация, переводы HOW-TO, все необходимое для русификации (10$)
http://cheapbytes.homepage.ru/ Российское представительство CheapBytes