Денис Колисниченко - Linux-сервер своими руками
Использование логина и пароля для доступа к ресурсам называется аутентификацией пользователя (user authentication). Существуют и другие виды аутентификации, например, аутентификация источника данных или однорангового объекта, но сейчас мы рассматривать их не будем. В любом случае, аутентификация — это проверка подлинности.
После рассмотрения архитектуры одноранговой сети можно прийти к выводу, что единственное преимущество этой архитектуры — это ее простота и дешевизна. Сети клиент/сервер обеспечивают более высокий уровень производительности и безопасности.
В отличие от одноранговой сети, в сети клиент/сервер существует один или несколько главных компьютеров — серверов. Все остальные компьютеры сети называются клиентами или рабочими станциями (workstations). Как я уже писал выше, сервер — это специальный компьютер, который предоставляет определенные услуги другим компьютерам. Существуют различные виды серверов (в зависимости от предоставляемых ими услуг): серверы баз данных, файловые серверы, серверы печати (принт-серверы), почтовые серверы, Web-серверы и т.д.
В табл. 1.1 перечислены лишь немногие функции, выполняемые сервером, и рекомендуемое программное обеспечение, которое необходимо для реализации этих функций.
Функции и программное обеспечение сервера Таблица 1.1
Функция Программное обеспечение Дистрибутив Глава Авторизация удаленных пользователей (dialup) Пакет ррр Да 17 Автоматическое конфигурирование узлов сети dhcp Да 8 Доступ (совместный) к файлам NFS, FTPd (ProFTPD, wu-ftpd) Да 8, 13 Доступ к сети Microsoft Пакет samba Да 9 Кэширование передаваемой информации Пакет Squid Да 15 Маршрутизация route(d) Да 8, 14 Обмен сообщениями электронной почты Пакеты sendmail (или postfix/qmail) и imap Да (Да/Нет), Да 13 Подсчет передаваемого по сети трафика ядро Linux, IPChains Да 8, 14 Передача секретной информации modSSL Да (не во всех дистрибутивах) 12 Разрешение (резолвинг) имени компьютера в IP-адрес Пакет bind Да 10 Сетевая печать Lpd, Samba, CUPS Да 6, 9 Функции Web-сервера Пакет apache Да 12 Фильтрация пакетов IPChains (IPTables в новых версиях Linux) Да 14 Управление базой данных MySQL / PostgreSQL / InterBase Да / Да / Не во всех 16 IP-Маскарадинг IPChains Да 14В графе Дистрибутив отмечено, входит ли указанное программное обеспечение в состав распространенных дистрибутивов, а в графе Глава указывается глава книги, в которой описана настройка интересующей вас функции.
Для экономии средств, как правило, один сервер сочетает в себе функции нескольких серверов, например, почтовик может быть также и Web-сервером. Услуги, которые может предоставлять сервер, ограничиваются только его физическими возможностями — чем мощнее сервер, тем больше услуг и с большим качеством он может предоставлять, поэтому в качестве сервера выбирается довольно мощный компьютер. Хотя эта формула (чем мощнее, тем лучше) не всегда оправдана, например, если ваш сервер используется для предоставления доступа к Интернет небольшой сети, то в этом случае с поставленной задачей прекрасно справится старенький 486DX/66 — 32 Мб ОЗУ. Однако, если вы являетесь Интернет-провайдером, то есть предоставляете коммерческий доступ к сети Интернет, такой конфигурации будет явно недостаточно.
Хотя установке Linux посвящена вторая глава, в которой подробно расписаны все рекомендуемые конфигурации, уже сейчас отмечу, что в случае с Linux-сервером объем оперативной памяти более критичен, чем частота процессора. Поэтому, если у вас есть возможность установить больше оперативной памяти, установите — не пожалеете.
Примечание. Иногда увеличивать объем памяти нецелесообразно, потому что машина будет работать медленнее, чем до модернизации. Это может произойти, если вы используете некоторые старые чипсеты, которые не кэшируют объемы оперативной памяти более 64 Мб (или 128 Мб), а так как операционная система загружается в старшие адреса, освобождая младшие адреса для прикладных программ, общая производительность системы будет снижена. Перед модернизацией рекомендую ознакомиться с документацией на материнскую плату.
1.7.2. Протокол и интерфейс
Теперь пора уже перейти к протоколам, в частности, к протоколу TCP/IP, который лежит в основе сети Интернет. Протокол — это совокупность правил, определяющая взаимодействие абонентов вычислительной системы (в нашем случае — сети) и описывающая способ выполнения определенного класса функций. Еще один термин, который мы будем часто употреблять — интерфейс. Интерфейс — это средства и правила взаимодействия компонент системы между собой. Чтобы лучше понять значения этих терминов, обратите внимание на рис. 1.6. На этом рисунке изображены две системы (компьютера) — А и В.
Из рис. 1.6 видно, что средства, которые обеспечивают взаимодействие модулей разных уровней в рамках одной системы (например, В1 и В2), называются интерфейсом, а средства, обеспечивающие взаимодействие компонент одного уровня разных систем (например, А1 и В1), называются протоколом. Протокол и интерфейс можно сравнить еще и так: разговор двух директоров разных предприятий можно назвать протоколом, а разговор директора и подчиненного одного предприятия можно считать интерфейсом. Как вы уже догадались, разговор сотрудников разных предприятий будет протоколом.
Рис. 1.6. Протоколы и интерфейсы
Теперь, когда мы уже знаем, что означает слово «протокол», перейдем к рассмотрению основных протоколов.
Самым главным — святыней всех святынь — является протокол TCP/IP. TCP/IP (Transmission Control Protocol/Internet Protocol — Протокол Управления Передачей/Интернет-протокол) — это базовый транспортный сетевой протокол. На этом протоколе основана вся сеть Интернет.
Следующий важный протокол — это RIP (Routing Information Protocol). Протокол RIP используется для маршрутизации пакетов в компьютерных сетях. Для маршрутизации также используется протокол OSPF (Open Shortest Path First), который является более эффективным, чем RIP. ICMP (Internet Control Message Protocol) — протокол межсетевых управляющих сообщений. Существует несколько типов данного протокола, которые используются для определенных целей (установление соединения, проверка доступности узла).
FTP (File Transfer Protocol) — протокол передачи файлов. Служит для обмена файлами между системами. Например, вам нужно передать файл на сервер или, наоборот, скачать файл с сервера. Для этого вам нужно подключиться к файловому серверу (он же FTP-сервер) и выполнить необходимую вам операцию. Подключение осуществляется с помощью FTP-клиента. Простейший FTP-клиент входит в состав практически любой операционной системы. Обычно для запуска FTP-клиента нужно ввести команду ftp.
HTTP (Hyper Text Transfer Protocol) — протокол обмена гипертекстовой информацией, то есть документами HTML. Протокол HTTP используется Web-серверами. HTTP-клиенты называются браузерами.
POP (Post Office Protocol) — протокол почтового отделения. Этот протокол используется для получения электронной почты с почтовых серверов. А для передачи электронной почты служит протокол SMTP (Simple Mail Transfer Protocol) — протокол передачи сообщений электронной почты.