MyBooks.club
Все категории

Денис Колисниченко - Linux-сервер своими руками

На сайте mybooks.club вы можете бесплатно читать книги онлайн без регистрации, включая Денис Колисниченко - Linux-сервер своими руками. Жанр: Программное обеспечение издательство -,. Доступна полная версия книги с кратким содержанием для предварительного ознакомления, аннотацией (предисловием), рецензиями от других читателей и их экспертным мнением.
Кроме того, на сайте mybooks.club вы найдете множество новинок, которые стоит прочитать.

Название:
Linux-сервер своими руками
Издательство:
-
ISBN:
-
Год:
-
Дата добавления:
16 сентябрь 2019
Количество просмотров:
370
Читать онлайн
Денис Колисниченко - Linux-сервер своими руками

Денис Колисниченко - Linux-сервер своими руками краткое содержание

Денис Колисниченко - Linux-сервер своими руками - описание и краткое содержание, автор Денис Колисниченко, читайте бесплатно онлайн на сайте электронной библиотеки mybooks.club
В книге подробно рассмотрены настройки сетевых сервисов, позволяющих создать сервер требуемой конфигурации и функциональности на основе ОС Linux. Вы сможете настроить сервер любого типа: от сервера локальной сети до Интернет-сервера и сервера удаленного доступа. Детальна описано администрирование Linux.Изложение материала построено на основе дистрибутивов Red Hat и Mandrake. Много уникальной информации: запуск Windows-игр под Linux и создание Linux-сервера для игрового зала, настройка антивирусов Dr. Web и AVP под Linux, программа учета трафика MRTG, система защиты и обнаружения атак LIDS, а также многое другое. Особое внимание уделено безопасности Linux-серверов. Достаточно подробно описана сама ОС Linux и приведен справочник ее команд. Прочитав книгу, вы станете обладателями знаний по настройке и компилированию ядра, созданию собственных rpm-пакетов, командному интерпретатору bash, использованию массивов RAID. Вы узнаете внутренний мир Linux. Книга подойдет как для профессиональных, так и для начинающих администраторов, поскольку изложение материала начинается с установки ОС Linux, а в первой главе дано описание основных сетевых технологий и протоколов (Курс Молодого Администратора).Все приведенные в книге листинги проверены на практике и размещены на прилагаемом CD. Помимо этого на нем содержится много справочной информации (HOWTO, RFC), a также статей, посвященных Linux. Размещен богатый набор вспомогательных утилит и программного обеспечения для сервера (Apache, MySQL, MRTG и др.).

Linux-сервер своими руками читать онлайн бесплатно

Linux-сервер своими руками - читать книгу онлайн бесплатно, автор Денис Колисниченко

Один из примеров использования IPChains мы уже рассматривали в главе 8. Напомню, в той главе нужно было организовать маршрутизацию средствами IPChains. При этом использовались следующие команды:

ipchains –P forward DENY

ipchains –A forward –s 192.168.1.0/24 –d 192.168.2.0/24 –j ACCEPT

ipchains –A forward –s 192.168.2.0/24 –d 192.168.1.0/24 –j ACCEPT

Первая команда изменяет стратегию для пустой цепочки forward, которая используется именно для маршрутизации. Вторая команда перенаправляет пакеты из сети 192.168.1.0 в сеть 192.168.2.0. Опция –s означает источник (source), а опция –d означает назначение (destination). Опция –j определяет действие. В том случае, если вы должны принять пакет, используется параметр ACCEPT. Если вам нужно отбросить пакет, используйте параметр DENY.

Адреса источника и пункта назначения можно указывать четырьмя способами:

1. Просто указать IP-адрес, например, 192.168.1.1.

2. Указать имя компьютера, например, www.host.ru.

3. Указать целую группу IP-адресов, например, 192.168.1.0/24.

4. Указать группу адресов и маску сети, например, 192.168.1.0/255.255.255.0.

Для формирования правил также используются опции, представленные в табл. 14.2.

Все эти опции могут иметь предшествующий параметру символ «!». Как и в некоторых языках программирования, этот символ обозначает отрицание. Например, правило –s! localhost определяет любой пакет, не исходящий из компьютера localhost.

Опции формирования правил Таблица 14.2

Параметр Описание -s  Источник (IP-адрес или URL-адрес) -d Назначение (IP-адрес или URL-адрес) -i Интерфейс -p Протокол

Указать протокол можно с помощью опции –р. Например, для указания протокола TCP служит правило –р TCP. Иногда нужно указать порт соединения TCP или UDP. Это можно сделать так: IP-addr/ports_range.

Диапазон портов определяется параметром ports_range. Диапазон указывается через двоеточие, например, 0:1023. Нижний предел диапазона равен О, а верхний — 1023. Если нижний предел не задан, принимается значение по умолчанию — 0. Если не задан верхний предел, считается, что он равен 65535, то есть максимальному числу поддерживаемых портов.

Указать интерфейс можно с помощью опции –i. Например, –i ppp0. Если у вас несколько интерфейсов, названия которых начинаются символами ррр, указать их всех вы можете опцией –i ppp+. Под интерфейсом понимается физическое устройство, на (из) который приходит (уходит) пакет. Для того, чтобы просмотреть список доступных в текущий момент интерфейсов, используйте команду ifconfig.

Теперь рассмотрим пару полезных примеров. Возможно, вы захотите запретить использование telnet извне. Это можно сделать с помощью команды:

ipchains –A prov –p tcp –destination-port 23 –j REJECT

Через цепочку prov проходит весь трафик, идущий от провайдера. Ее можно создать командами:

ipchains –N prov

ipchains –A input –i ppp0 –j prov

Предполагается, что вы подключаетесь к провайдеру через интерфейс ррр0. Скорее всего, в вашей сети найдутся несколько машин, которые работают под управлением ОС Windows и имеют общие ресурсы. Возможно, вы даже настроили протокол SMB на сервере. Чтобы протокол 8MB не был заметен извне, что очень нежелательно, воспользуйтесь следующими командами:

ipchains –A prov –p tcp –destination-port 137 –j REJECT

ipchains –A prov –p udp –destination-port 137 –j REJECT

ipchains –A prov –p tcp –destination-port 138 –j REJECT

ipchains –A prov –p udp –destination-port 138 –j REJECT

ipchains –A prov –p tcp –destination-port 139 –j REJECT

ipchains –A prov –p udp –destination-port 139 –j REJECT

Можно запретить локальным процессам получать пакеты от определенных узлов. Например, я не хочу, чтобы мой Netscape тратил время на получения баннеров от машины с адресом 911.111.111.111. Для этого, возможно, удобнее было бы воспользоваться прокси-сервером, но сейчас нужно продемонстрировать, как это можно сделать с помощью IPChains.

ipchains –A output –d 911.111.111.111 –j REJECT

В примере я специально привел несуществующий IP-адрес, чтобы не создать антирекламу какому-нибудь узлу Сети.

Для того, чтобы ваши правила были постоянными (при перезагрузке машины правила IPChains теряются), используйте сценарии ipchains-save и ipchains-restore. Настройте свои правила, затем выполните команду:

# ipchains-save > /etc/ipchains.rules

В листинге 14.1 представлен сценарий, управляющий пакетной фильтрацией.

Листинг 14.1. Сценарий управления пакетной фильтрацией

#! /bin/sh

# Сценарий управления пакетной фильтрацией.,

# Если правил нет, то ничего не делать.

[ –f /etc/ipchains.rules ] || exit 0

case "51" in

start)

 echo –n "Включение пакетной фильтрации:" /sbin/ipchains-restore < /etc/ipchains.rules || exit 1

 echo 1 > /proc/sys/net/ipv4/ip_forward

 echo ". "

 ;;

stop)

 echo –n "Отключение пакетной фильтрации:"

 echo 0 > /proc/sys/net/ipv4/ip_forward

 /sbin/ipchains –X

 /sbin/ipchains –F

 /sbin/ipchains –P input ACCEPT

 /sbin/ipchains –P output ACCEPT

 /sbin/ipchains –P forward ACCEPT

 echo " . "

 ;;

*)

 echo "Использование: /etc/init.d/packetfliter {start|stop}"

 exit 1

 ;;

esac

exit 0

Этот сценарий нужно добавить в сценарии загрузки системы.

14.3. Различные примеры

В этом пункте представлены несколько примеров для обеспечения безопасности вашей сети.

14.3.1. Пакеты SYN

Пакеты SYN используются для запроса на установку соединения. Вы можете отвергать эти пакеты для того, чтобы прервать попытки установить соединение.

Иногда это необходимо, если вы хотите получать пакеты только в одном направлении, например, рабочая станция должна соединяться с сервером, но сервер не должен соединяться с рабочей станцией.

Для фильтрации пакетов SYN нужно использовать опцию –у. Например, попытки соединения по протоколу TCP от узла 192.168.1.34 указываются так:

–р TCP –s 192.168.1.34 –у

14.3.2. Фрагментация пакетов

Иногда передаваемый пакет слишком большой, чтобы его можно было бы передавать за один раз. Если такое происходит, то пакет делится на фрагменты, и эти фрагменты пересылаются. Компьютер, которому этот пакет предназначен, собирает эти фрагменты в один пакет.

Ядро должно анализировать начало пакета, которое содержится в первом фрагменте. Ведь только в первом фрагменте находится заголовок исходного пакета. Для решения этой проблемы вам нужно перекомпилировать ядро с включенной опцией IP: always defragment.

В результате любое правило фильтрации не будет работать для фрагментированных пакетов. При этом только первый фрагмент будет обработан как пакет, а остальные не будут обрабатываться. Однако можно определить правило специально для фрагментированных пакетов. Это можно сделать с помощью опции –f. Эту опцию нельзя применять при указании портов протоколов TCP или UDP, кода ICMP или пакетов SYN.

Следующая команда отбросит все фрагменты, приходящие на компьютер server.domain.com:

# ipchains –A output –f –d 192.168.1.1 –j DENY

14.3.3. Пинг смерти

Есть хорошая новость по этому поводу: ОС Linux невосприимчива к пингу смерти. Напомню, что пинг смерти заключается в посылке большого пакета ICMP, который переполняет буферы стека TCP на компьютере-получателе.

14.3.4. IР-спуфинг

IP-спуфинг — это отправление пакетов с поддельным IP-адресом источника. Так как фильтрация пакета принимает решения на основании адреса источника, то IP-спуфинг используется, чтобы ввести пакетный фильтр в заблуждение.

Для решения этой проблемы мы можем использовать Проверку Адреса Источника (Source Address Verification) или использовать следующие команды IPChains:

ipchains –A prov –s 192.168.1.1/16 –l –j DENY

ipchains –A prov –s 127.0.0.1/8 –l –j DENY

Вторая команда нужна для ядер версий 2.0.x, но если мы ее укажем, явно хуже не будет. Опция –l позволяет протоколировать «плохие» пакеты. Файлом протокола является /var/log/messages. Ядра версий 2.1.x автоматически отклоняют пакеты, приходящие с адресов 127.*, которые зарезервированы для локального интерфейса.

Для включения проверки адреса источника можно воспользоваться сценарием, представленном в листинге 14.2.

Листинг 14.2. Запрещение IР-спуфинга

# Наилучший способ: включить Source Address Verification и защитить

# от спуфинга все текущие и будущие интерфейсы.

if [ –e /proc/sys/net/ipv4/conf/all/rp_filter ] ; then

 echo –n "Установка защиты от спуфинга… "


Денис Колисниченко читать все книги автора по порядку

Денис Колисниченко - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки mybooks.club.


Linux-сервер своими руками отзывы

Отзывы читателей о книге Linux-сервер своими руками, автор: Денис Колисниченко. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.