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

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

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

Название:
Linux-сервер своими руками
Издательство:
-
ISBN:
-
Год:
-
Дата добавления:
16 сентябрь 2019
Количество просмотров:
371
Читать онлайн
Денис Колисниченко - 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 –A inet-net2 –p tcp –d 192.168.2.98 smtp –j ACCEPT

ipchains –A inet-net2 –p udp –d 192.168.2.99 domain –j ACCEPT

ipchains –A inet-net2 –p tcp –d 192.168.2.99 domain –j ACCEPT

ipchains –A inet-net2 –p tcp –d 192.168.2.97 www –j ACCEPT

ipchains –A inet-net2 –p icmp –j icmp ipchains –A inet-net2 –j DENY

Далее задаем правила цепочки net1-inet. Пользователи внутренней сети могут получать доступ к сервисам WWW, FTP внешней сети, использовать traceroute во внешнюю сеть. Нужно разрешить доступ к почтовому серверу, серверу имен, Web-серверу. Модуль masq обеспечит пассивный доступ к серверу FTP. Возможные нарушения будут регистрироваться. Пользователи внутренней сети также смогут использовать программу ssh для доступа к внешним узлам, и программу ping.

ipchains –A net1-inet –p tcp www –j MASQ

ipchains –A net1-inet –p tcp ssh –j MASQ

ipchains –A net1-inet –p udp –dport 33434:33500 –j MASQ

ipchains –A net1-inet –p tcp –dport ftp –j MASQ

ipchains -A net1-inet -p icmp -icmp-type ping -j MASQ

ipchains -A net1-inet -j REJECT -l

Сейчас займемся определением правил для цепочки net2-net1. Пользователи могут получать доступ к серверам Web, SMTP, DNS, POPS. Как и для предыдущего случая, мы будем использовать модуль masq для пассивного режима работы FTP-сервера и будем регистрировать нарушения. Правила для этой цепочки будут таковыми:

ipchains -A net2-net1 -р tcp i -y -s 192.84.219.128 smtp -j ACCEPT

ipchains -A net2-net1 -р udp -s 192.84.219.129 domain -j ACCEPT

ipchains -A net2-net1 -р tcp i -y -s 192.84.219.129 domain -j ACCEPT

ipchains -A net2-net1 -р tcp i -y -s 192.84.218.130 www -j ACCEPT

ipchains -A net2-net1 -р tcp i -y -s 192.84.218.130 rsync -j ACCEPT

ipchains -A net2-net1 -р icmp -j icmp

ipchains -A net2-inet -j DENY -l

Правила для цепочки net2-inet выглядят так:

ipchains -A net2-inet -p tcp -s 192.84.219.128 smtp -j ACCEPT

ipchains -A net2-inet -p udp -s 192.84.219.129 domain -j ACCEPT

ipchains -A net2-inet -p tcp -s 192.84.219.129 domain -j ACCEPT

ipchains -A net2-inet -p tcp ! -y -s 192.84.218.130 www -j ACCEPT

ipchains –A net2-inet –p icmp

ipchains –A net2-inet –j DENY

Эти правила разрешают отправлять почту во внешнюю сеть, принимать почту из внешней и внутренней сети, получать почту только пользователям внутренней сети. Сервер DNS имеет право посылать запросы во внешнюю сеть, принимать запросы от внутренней и внешней сетей, а также от шлюза. Сервер WWW принимает запросы от пользователей внутренней и внешней сетей. Доступ rsync разрешен пользователям внутренней сети.

Следующая цепочка — это inet-net1. В этом случае мы не разрешаем никакого доступа из внешней сети к машинам внутренней сети.

ipchains –A inet-net1 –j REJECT

Основные правила уже определены, осталось установить правила для цепочки input шлюза. Создадим три цепочки input для каждого возможного адресата:

ipchains –N inet-if

ipchains –N net2-if

ipchains –N net1-if

По первой цепочке будут приходить пакеты от внешней сети, а по второй и третьей — от внутренних сетей. Правила для этих цепочек выглядят так:

ipchains –A input –d 192.84.219.1 –j inet-if

ipchains –A input –d 192.84.219.250 –j net2-if

ipchains –A input –d 192.168.1.250 –j net1-if

Непосредственно для цепочки inet-if определим такие правила:

ipchains –A inet-if –i ! ppp0 –j DENY –1

ipchains –A inet-if –p TCP –dport 61000:65096 –j ACCEPT

ipchains –A inet-if –p UDP –dport 61000:65096 –j accept

ipchains –A inet-if –p ICMP —icmp-type pong –j ACCEPT

ipchains –A inet-if –j icmp

ipchains –A inet-if –j DENY

Данные правила разрешают пропинговать любую сеть, использовать программу traceroute для любой сети, доступ к серверу имен, а также получать ICMP-сообщения об ошибках.

Цепочку net2-if определим следующим образом:

ipchains –A net2-if –i ! eth0 –j DENY

ipchains –A net2-if –p TCP ! –y –s 192.168.2.99 53 –j ACCEPT

ipchains –A net2-if –p UDP –s 192.168.2.99 53 –j ACCEPT

ipchains –A net2-if –p ICMP –icmp-type pong –j ACCEPT

ipchains –A net2-if - j icmp

ipchains –A net2-if –j DENY –l

Правила этой цепочки разрешают те же операции, что и для цепочки inet-if, только в этом случае вместо интерфейса ррр0 используется eth0.

Входящая цепочка net1-if определяется так:

ipchains –A net1-if –i ! eth1 –j DENY

ipchains –A net1-if –p ICMP –icmp-type ping –j ACCEPT

ipchains –A net1-if –p ICMP –icmp-type pong –j ACCEPT

ipchains –A net1-if –j icmp ipchains –A net1-if –j DENY –l

Разрешается доступ к серверам WWW, SMTP, POP3. Можно использовать программы ping, traceroute, ssh.

Теперь осталось удалить правила блокировки:

ipchains –D input l

ipchains –D forward l

ipchains –D output l

В начале этого пункта я обещал объяснить настройку ICQ. Предположим, что сервер SQUID у вас установлен на шлюзе, то есть на той машине, которая обеспечивает пакетную фильтрацию (о прокси-сервере SQUID читайте в следующей главе). В файле конфигурации SQUID разрешите порт 5190. Именно этот порт используется новыми клиентами ICQ.

acl SSL_ports port 443 563 5190

Затем установите сервер socks. Можно, конечно, настроить ICQ, используя маскарадинг, но данный метод, как мне кажется, лучше. В качестве сервера socks я рекомендую использовать сервер dame-socks. В файле конфигурации /etc/socks.conf установите внутренний и внешний адреса шлюза:

internal: 192.168.1.1 port = 1080

external: 111.1.1.1

Затем определите узлы, которые могут использовать socks:

client pass {

 from: 192.168.0.0/16 to: 0.0.0.0/0

}

Осталось определить, кто может отвечать клиентам:

pass {

 from: 0.0.0.0/0 to: 192.168.0.0/16

 command: bindreply udpreply

 log: connect error

}

14.5. IPTables

Пакетный фильтр IPChains использовался в ядрах Linux до версии 2.4. В новых версиях ядра (начиная с 2.4) вместо IPChains используется пакетный фильтр IPTables. Практически все основные опции остаются прежними. Только, естественно, в командной строке вместо ipchains следует писать iptables.

В этом пункте будут рассмотрены некоторые новые опции ядра, связанные непосредственно с IPTables. Эти опции для большей наглядности я представил в табл. 14.3. Если вы еще не знакомы с компилированием ядра, то эта информация вам пригодится после прочтения гл. 18.

Опции ядра Таблица 14.3

Опция Описание CONFIG_PACKET Позволяет использовать программы, которые работают непосредственно с сетевым устройством. Примером такой программы может послужить tcpdump CONFIG_NETFILTER Включите данную опцию, если вы собираетесь использовать ваш компьютер в качестве шлюза CONFIG_IP_NF_CONNTRACK Позволяет отслеживать соединения. Данная опция необходима для работы функций NAT или IP-маскарадинга. В случае со шлюзом включите данную опцию CONFIG_IP_NF_FTP Прослеживает FTP-соединения. Включите эту опцию, если на вашем компьютере установлен FTP-сервер. Из-за большого количества FTP-запросов модуль IP_NF_CONNTRACK не в состоянии проследить все FTP-соединения, поэтому в помощь ему добавлена опция CONFIG_IP_NF_FTP CONFIG_IP_NF_IPTABLES Необходимая для работы IPTables опция. Без ее включения вы не сможете использовать IPTables CONFIG_IP_NF_MATCH_LIMIT Необязательная опция. Позволяет ограничить количество пакетов передаваемых/принимаемых за промежуток времени CONFIG_IP_NF_MATCH_MAC Позволяет блокировать пакеты, используя МАС-адрес (а не IP-адрес)

Все остальные опции, связанные с IPTables, содержат в своем названии слово MATCH, например, CONFIG_IP_NF_MATCH_MARK. Эти опции разрешают выполнять определенные действия над пакетами. Действия над пакетами, как вы уже знаете, задаются с помощью опции -j. Использование этой опции аналогично как для IPChains, так и для IPTables. Назначение всех возможных действий вы можете узнать из документации по IPTables. Ранее, на примере IPChains, мы рассмотрели два основных действия — ACCEPT и DENY. В IPTables вместо действия DENY нужно использовать аналогичное ему действие DROP. А вместо MASQ (см. п. 14.4) — MASQUERADE.

Я не буду рассматривать различия таблиц (tables) и цепочек (chains), не усложняя тем самым вам жизнь избытком лишней информации, остановлюсь лишь на рассмотрении некоторых полезных примеров.

Представим, что вам нужно что-либо сделать с пакетами, приходящими от узла с МАС-адресом 11:12:13:14:15:16. Выделить данный пакет можно с помощью правила iptables –A INPUT —mac-source 11:12:13:14:15:16.

Дальнейшие операции над пакетом вы уже определите сами, с помощью опции –j. Если же вам нужно выделить все пакеты, кроме тех, которые присылает вам узел с МАС-адресом 11:12:13:14:15:16, то нужно использовать отрицание — !

Допустим, что теперь вам нужно ограничить число пакетов, присылаемым узлом с МАС-адресом 11:12:13:14:15:16, например, не более 10 пакетов в минуту. Делается это следующим образом: iptables –A INPUT –ra limit —limit 10/minute. Промежуток времени можно указать в секундах (second), минутах (minute) и часах (hour).


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

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


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

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

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