2005-12-05 00:18:09 +01:00
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
|
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
|
|
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
|
|
|
|
<article id="standalone">
|
|
|
|
|
<!--$Id$-->
|
|
|
|
|
|
|
|
|
|
<articleinfo>
|
|
|
|
|
<title>Одиночный файервол</title>
|
|
|
|
|
|
|
|
|
|
<authorgroup>
|
|
|
|
|
<author>
|
|
|
|
|
<firstname>Tom</firstname>
|
|
|
|
|
|
|
|
|
|
<surname>Eastep</surname>
|
|
|
|
|
</author>
|
|
|
|
|
</authorgroup>
|
|
|
|
|
|
|
|
|
|
<pubdate>2005-11-02</pubdate>
|
|
|
|
|
|
|
|
|
|
<copyright>
|
|
|
|
|
<year>2002-2005</year>
|
|
|
|
|
|
|
|
|
|
<holder>Thomas M. Eastep</holder>
|
|
|
|
|
</copyright>
|
|
|
|
|
|
|
|
|
|
<legalnotice>
|
|
|
|
|
<para>Permission is granted to copy, distribute and/or modify this
|
|
|
|
|
document under the terms of the GNU Free Documentation License, Version
|
|
|
|
|
1.2 or any later version published by the Free Software Foundation; with
|
|
|
|
|
no Invariant Sections, with no Front-Cover, and with no Back-Cover
|
|
|
|
|
Texts. A copy of the license is included in the section entitled
|
|
|
|
|
<quote><ulink url="GnuCopyright.htm">GNU Free Documentation
|
|
|
|
|
License</ulink></quote>.</para>
|
|
|
|
|
</legalnotice>
|
|
|
|
|
</articleinfo>
|
|
|
|
|
|
|
|
|
|
<section>
|
|
|
|
|
<title>Введение</title>
|
|
|
|
|
|
|
|
|
|
<para>Установка Shorewall на отдельной Linux системе очень проста, если Вы
|
|
|
|
|
понимаете основы и следуете данной документации.</para>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Это руководство не пытается ознакомить Вас со всеми особенностями
|
|
|
|
|
Shorewall. Оно больше сфокусировано на том, что требуется для настройки
|
|
|
|
|
Shorewall в наиболее типичных конфигурациях:</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>Linux система</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Один внешний(публичный) <acronym>IP</acronym>-адрес</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Интернет-соединение посредством кабельного модема,
|
|
|
|
|
<acronym>DSL</acronym>, <acronym>ISDN</acronym>, Frame Relay,
|
|
|
|
|
коммутирумой линии ... или есть соединение с <acronym>LAN</acronym> и
|
|
|
|
|
Вы просто хотите защитить Вашу Linux систему от других систем в этой
|
|
|
|
|
<acronym>LAN</acronym>.</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
|
|
|
|
<section>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<title>Системные требования</title>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<para>Shorewall требует, чтобы у Вас был установлен пакет
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<command>iproute</command>/<command>iproute2</command> (на
|
|
|
|
|
<trademark>RedHat</trademark>, этот пакет называется<command>
|
|
|
|
|
iproute</command>). Вы можете определить установлен ли этот пакет по
|
|
|
|
|
наличию программы <command>ip</command> на Вашем файерволе. Как root, Вы
|
|
|
|
|
можете использовать команду <command>which</command> для проверки
|
|
|
|
|
наличия этой программы:</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>[root@gateway root]# <command>which ip</command>
|
|
|
|
|
/sbin/ip
|
|
|
|
|
[root@gateway root]#</programlisting>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
|
|
|
|
<title>Перед тем как начать</title>
|
|
|
|
|
|
|
|
|
|
<para>Я рекомендую Вам прочитать все руководство для первоначального
|
|
|
|
|
ознакомления, а лишь затем пройти его снова, внося изменения в Вашу
|
|
|
|
|
конфигурацию.</para>
|
|
|
|
|
|
|
|
|
|
<caution>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Если Вы редактируете Ваши файлы конфигурации на
|
|
|
|
|
<trademark>Windows</trademark> системе, Вы должны сохранить их как
|
|
|
|
|
<trademark>Unix</trademark> файлы в том случае, если Ваш редактор
|
2005-12-05 00:18:09 +01:00
|
|
|
|
поддерживает эту возможность, иначе Вы должны пропустить их через
|
2005-12-12 22:10:39 +01:00
|
|
|
|
программу <command>dos2unix</command> перед тем как использовать их.
|
|
|
|
|
Аналогично, если Вы копируете конфигурационный файл с Вашего жесткого
|
|
|
|
|
диска с Windows на дискету, Вы должны воспользоваться
|
|
|
|
|
<command>dos2unix</command> для копии перед ее использованием с
|
|
|
|
|
Shorewall. <itemizedlist>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para><ulink
|
|
|
|
|
url="http://www.simtel.net/pub/pd/51438.html"><trademark>Windows</trademark>
|
|
|
|
|
версия <command>dos2unix</command></ulink></para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para><ulink
|
|
|
|
|
url="http://www.megaloman.com/%7Ehany/software/hd2u/">Linux
|
|
|
|
|
версия <command>dos2unix</command></ulink></para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist></para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</caution>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
|
|
|
|
<title>Соглашения</title>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Места, в которых рекомендуется вносить изменения, отмечены как
|
2005-12-05 00:18:09 +01:00
|
|
|
|
<inlinegraphic fileref="images/BD21298_.gif" format="GIF" />.</para>
|
|
|
|
|
</section>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
|
|
|
|
<title>PPTP/ADSL</title>
|
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Если У Вас есть <acronym>ADSL</acronym> модем и Вы используете
|
|
|
|
|
<acronym>PPTP</acronym> для взаимодействия с сервером на этом модеме, Вы
|
|
|
|
|
должны сделать изменения рекоммендуемые <ulink
|
|
|
|
|
url="PPTP.htm#PPTP_ADSL">здесь</ulink> <emphasis role="bold"><emphasis
|
|
|
|
|
role="underline"><emphasis>в дополнение к тем, что описаны в последующих
|
|
|
|
|
шагах</emphasis></emphasis></emphasis>. <acronym>ADSL</acronym> с
|
|
|
|
|
<acronym>PPTP</acronym> наиболее распространен в Европе, особенно в
|
2005-12-05 00:18:09 +01:00
|
|
|
|
Австрии.</para>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
|
|
|
|
<title>Концепции Shorewall</title>
|
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
|
|
|
|
|
<para>Конфигурационные файлы Shorewall находятся в директории <filename
|
|
|
|
|
class="directory">/etc/shorewall</filename> -- в случае простой установки
|
|
|
|
|
Вам необходимо иметь дело только с немногими из них, как описано в этом
|
|
|
|
|
руководстве. После того как Вы <ulink url="Install.htm">установили
|
|
|
|
|
Shorewall</ulink>, Вы можете найти Примеры файлов настроек в следующих
|
|
|
|
|
местах:</para>
|
|
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
<listitem>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Если Вы при установке использовали <acronym>RPM</acronym>,
|
|
|
|
|
примеры будут находится в поддиректории Samples/one-interface/
|
|
|
|
|
директории с документацией Shorewall. Если Вы не знаете где
|
|
|
|
|
расположена директория с документацией Shorewall, Вы можете найти
|
|
|
|
|
примеры используя команду:</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>~# rpm -ql shorewall | fgrep one-interface
|
|
|
|
|
/usr/share/doc/packages/shorewall/Samples/one-interface
|
|
|
|
|
/usr/share/doc/packages/shorewall/Samples/one-interface/interfaces
|
|
|
|
|
/usr/share/doc/packages/shorewall/Samples/one-interface/policy
|
|
|
|
|
/usr/share/doc/packages/shorewall/Samples/one-interface/rules
|
|
|
|
|
/usr/share/doc/packages/shorewall/Samples/one-interface/zones
|
|
|
|
|
~#</programlisting>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>Если Вы установили Shorewall из tarball'а, примеры находятся в
|
|
|
|
|
директории Samples/one-interface внутри tarball'а.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>Если же Вы пользовались пакетом .deb, примеры находятся в
|
|
|
|
|
/usr/share/doc/shorewall/examples/one-interface.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</orderedlist>
|
|
|
|
|
|
|
|
|
|
<warning>
|
|
|
|
|
<para><emphasis role="bold">Замечание для пользователей
|
|
|
|
|
Debian</emphasis></para>
|
|
|
|
|
|
|
|
|
|
<para>Если Вы при установке пользовались .deb, Вы обнаружите, что
|
|
|
|
|
директория <filename class="directory">/etc/shorewall</filename> пуста.
|
|
|
|
|
Это сделано специально. Поставляемые шаблоны файлов конфигурации Вы
|
|
|
|
|
найдете на вашей системе в директории <filename
|
|
|
|
|
class="directory">/usr/share/doc/shorewall/default-config</filename>.
|
|
|
|
|
Просто скопируйте нужные Вам файлы из этой директории в <filename
|
|
|
|
|
class="directory">/etc/shorewall</filename> и отредактируйте
|
|
|
|
|
копии.</para>
|
|
|
|
|
|
|
|
|
|
<para>Заметьте, что Вы должны скопировать <filename
|
|
|
|
|
class="directory">/usr/share/doc/shorewall/default-config/shorewall.conf</filename>
|
|
|
|
|
и /usr/share/doc/shorewall/default-config/modules в <filename
|
|
|
|
|
class="directory">/etc/shorewall</filename> даже если Вы не будете
|
|
|
|
|
изменять эти файлы.</para>
|
|
|
|
|
</warning>
|
|
|
|
|
|
|
|
|
|
<para>По мере того как мы будем знакомится с каждым файлом, я надеюсь, что
|
|
|
|
|
Вы просмотрите реальный файл на вашей системе -- каждый файл содержит
|
|
|
|
|
детальное описание конфигурационных инструкций и значений по
|
|
|
|
|
умолчанию.</para>
|
|
|
|
|
|
|
|
|
|
<para>Shorewall видит сеть, в которой он работает, как состоящую из набора
|
|
|
|
|
<emphasis>зон(zones)</emphasis>. В случае примера конфигурации с одним
|
|
|
|
|
интерфейсом, только две зоны определены:</para>
|
|
|
|
|
|
|
|
|
|
<programlisting>#ZONE TYPE OPTIONS IN OUT
|
|
|
|
|
# OPTIONS OPTIONS
|
|
|
|
|
fw firewall
|
|
|
|
|
net ipv4</programlisting>
|
|
|
|
|
|
|
|
|
|
<para>Зоны Shorewall описаны в файле <ulink
|
|
|
|
|
url="Documentation.htm#Zones"><filename>/etc/shorewall/zones</filename></ulink>.</para>
|
|
|
|
|
|
|
|
|
|
<para>Заметьте, что Shorewall рассматривает систему файервола как свою
|
|
|
|
|
собственную зону. Имя зоны файервола (<emphasis role="bold">fw</emphasis>
|
|
|
|
|
в примере выше) храниться в переменной shell <firstterm>$FW</firstterm>,
|
|
|
|
|
которая может использоваться во всей конфигурации Shorewall для ссылки на
|
|
|
|
|
сам файервол.</para>
|
|
|
|
|
|
|
|
|
|
<para>Правила о том какой трафик разрешен, а какой запрещен выражаются в
|
|
|
|
|
терминах зон.</para>
|
|
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>Вы отражаете Вашу политику по умолчанию для соединений из одной
|
|
|
|
|
зоны в другую в файле<ulink
|
|
|
|
|
url="Documentation.htm#Policy"><filename>/etc/shorewall/policy</filename></ulink>.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>Вы определяете исключения из политики по умолчанию в файле
|
|
|
|
|
<ulink
|
|
|
|
|
url="Documentation.htm#Rules"><filename>/etc/shorewall/rules</filename></ulink>.</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</itemizedlist>
|
|
|
|
|
|
|
|
|
|
<para>Для каждого запроса на соединение входящего в файервол, запрос
|
|
|
|
|
сначала проверяется на соответствие файлу<filename><filename>
|
|
|
|
|
/etc/shorewall/rules</filename></filename>. Если в этом файле не найдено
|
|
|
|
|
правил соответствующих запросу на соединение, то применяется первая
|
|
|
|
|
политика из файла <filename>/etc/shorewall/policy</filename>, которая
|
|
|
|
|
соответсвует запросу. Если есть <ulink
|
|
|
|
|
url="shorewall_extension_scripts.htm">общее действие (common
|
|
|
|
|
action</ulink>) определенное для политики в файле
|
|
|
|
|
<filename>/etc/shorewall/actions</filename> или
|
|
|
|
|
<filename>/usr/share/shorewall/actions.std</filename>, тогда это действие
|
|
|
|
|
выполняется перед тем как .</para>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Файл <filename>/etc/shorewall/policy,</filename> входящий в пример с
|
|
|
|
|
одним интерфейсом, имеет следующие политики:</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>#SOURCE ZONE DESTINATION ZONE POLICY LOG LEVEL LIMIT:BURST
|
|
|
|
|
$FW net ACCEPT
|
|
|
|
|
net all DROP info
|
|
|
|
|
all all REJECT info</programlisting>
|
|
|
|
|
|
|
|
|
|
<para>Политики приведенные выше будут:</para>
|
|
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
<listitem>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>разрешать все запросы на соединение с файервола в
|
2005-12-05 00:18:09 +01:00
|
|
|
|
Internet;</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>отбрасывать (игнорировать) все запросы на соединение из Internet
|
2005-12-12 22:10:39 +01:00
|
|
|
|
к Вашему файерволу;</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>отвергать все другие запросы на соединение (Shorewall требует
|
2005-12-12 22:10:39 +01:00
|
|
|
|
наличия такой политики, применимой для всех остальных
|
|
|
|
|
запросов).</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</listitem>
|
|
|
|
|
</orderedlist>
|
|
|
|
|
|
|
|
|
|
<para>В данный момент Вы можете отредактировать ваш файл
|
|
|
|
|
<filename>/etc/shorewall/policy</filename> и внести изменения, какие Вы
|
|
|
|
|
считаете необходимыми.</para>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
|
|
|
|
<title>Внешний интерфейс</title>
|
|
|
|
|
|
|
|
|
|
<para>Файервол имеет один сетевой интерфейс. Если соединение с Internet
|
2005-12-12 22:10:39 +01:00
|
|
|
|
осуществляется при помощи кабельного или <acronym>DSL</acronym>
|
|
|
|
|
<quote>Модема</quote>, <emphasis>Внешним интерфейсом</emphasis> будет
|
|
|
|
|
ethernet-адаптер (например, <emphasis role="bold">eth0</emphasis>),
|
|
|
|
|
который подсоединен к этому <quote>Модему</quote>, <emphasis
|
|
|
|
|
role="underline">если же</emphasis> Вы соединены посредством протокола
|
|
|
|
|
<emphasis>Point-to-Point Protocol over Ethernet</emphasis>
|
|
|
|
|
(<acronym>PPPoE</acronym>) или <emphasis>Point-to-Point Tunneling
|
|
|
|
|
Protocol</emphasis> (<acronym>PPTP</acronym>), то в этом случае
|
|
|
|
|
<emphasis>Внешним интерфейсом</emphasis> будет <emphasis
|
|
|
|
|
role="bold">ppp</emphasis> интерфейс (например, <emphasis
|
|
|
|
|
role="bold">ppp0</emphasis>). Если Вы подсоединены через обычный модем,
|
|
|
|
|
Вашим <emphasis>Внешним интерфейсом</emphasis> будет также <emphasis
|
|
|
|
|
role="bold">ppp0</emphasis>. Если Вы соединяетесь используя
|
|
|
|
|
<acronym>ISDN</acronym>, <emphasis>Внешним интерфейсом</emphasis> будет
|
|
|
|
|
<emphasis role="bold">ippp0</emphasis>.</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
|
|
|
|
|
<para>Пример конфигурации Shorewall для одного интерфейса подразумевает,
|
|
|
|
|
что <emphasis>Внешний интерфейс</emphasis><emphasis role="bold">
|
|
|
|
|
</emphasis>- <emphasis role="bold">eth0</emphasis>. Если Ваша конфигурация
|
|
|
|
|
отличается, Вам необходимо изменить файл примера /etc/shorewall/interfaces
|
|
|
|
|
соответственно. Пока Вы здесь, Вы возможно захотите просмотреть список
|
2005-12-12 22:10:39 +01:00
|
|
|
|
опций, специфичных для интерфейса. Вот несколько подсказок:</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<tip>
|
|
|
|
|
<para>Если Ваш внешний интерфейс <emphasis role="bold">ppp0</emphasis>
|
|
|
|
|
или <emphasis role="bold">ippp0</emphasis>, Вы можете заменить
|
|
|
|
|
<quote>detect</quote>(обнаружить) во втором столбце на
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<quote>-</quote>(знак минус в ковычках).</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</tip>
|
|
|
|
|
|
|
|
|
|
<tip>
|
|
|
|
|
<para>Если Ваш внешний интерфейс <emphasis role="bold">ppp0</emphasis>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
или <emphasis role="bold">ippp0</emphasis> или Вы имеете статический
|
|
|
|
|
<acronym>IP</acronym>-адрес, Вы можете удалить <quote>dhcp</quote> из
|
|
|
|
|
списка опций.</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</tip>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<title>IP-адреса</title>
|
|
|
|
|
|
|
|
|
|
<para>Перед тем как идти дальше, мы должны сказать несколько слов о
|
|
|
|
|
<emphasis>Internet Protocol</emphasis> (<acronym>IP</acronym>)-адресах.
|
|
|
|
|
Обычно, Ваш Интернет-провайдер<emphasis> (Internet Service
|
|
|
|
|
Provider</emphasis> - <acronym>ISP</acronym>) назначает Вам один
|
|
|
|
|
<acronym>IP</acronym>-адрес. Этот адрес может быть назначен статически,
|
|
|
|
|
при помощи <emphasis>Протокола Динамического Конфигурирования Хостов
|
|
|
|
|
(Dynamic Host Configuration Protocol</emphasis> -
|
|
|
|
|
<acronym>DHCP</acronym>), в процессе установки Вами коммутированного
|
|
|
|
|
соединения (обычный модем), или при установке Вами другого типа
|
|
|
|
|
<acronym>PPP</acronym> соединения (<acronym>PPPoA</acronym>,
|
|
|
|
|
<acronym>PPPoE</acronym> и т.д.).</para>
|
|
|
|
|
|
|
|
|
|
<para><acronym>RFC-1918</acronym> резервирует несколько диапазонов
|
|
|
|
|
<emphasis>Частных (Private)</emphasis> <acronym>IP</acronym>-адресов для
|
|
|
|
|
использования в частных сетях:</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>10.0.0.0 - 10.255.255.255
|
|
|
|
|
172.16.0.0 - 172.31.255.255
|
|
|
|
|
192.168.0.0 - 192.168.255.255</programlisting>
|
|
|
|
|
|
|
|
|
|
<para>На эти адреса иногда ссылаются как на
|
|
|
|
|
<emphasis>немаршрутизируемые</emphasis> потому, что магистральные
|
2005-12-12 22:10:39 +01:00
|
|
|
|
маршрутизаторы Интернет не переправляют пакеты, адреса назначения которых
|
|
|
|
|
зарезервированы <acronym>RFC-1918</acronym>. Хотя в некоторых случаях,
|
|
|
|
|
<acronym>ISP</acronym>s назначающие эти адреса, используют затем
|
|
|
|
|
<emphasis>Преобразование Сетевых Адресов (Network Address Translation -
|
|
|
|
|
<acronym>NAT</acronym>)</emphasis> для перезаписи заголовков пакетов при
|
|
|
|
|
перенаправлении в/из Интернет.</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
|
|
|
|
|
<para>Перед запуском Shorewall, <emphasis role="bold">Вы должны взглянуть
|
2005-12-12 22:10:39 +01:00
|
|
|
|
на IP-адрес Вашего внешнего интерфейса и, если он принадлежит одному из
|
2005-12-05 00:18:09 +01:00
|
|
|
|
указанных выше диапазонов, Вы должны удалить опцию
|
|
|
|
|
<quote>norfc1918</quote> из записи в
|
|
|
|
|
<filename>/etc/shorewall/interfaces</filename>.</emphasis></para>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
|
|
|
|
<title>Разрешение других соединений</title>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Shorewall включает коллекцию макросов, которые могут быть
|
|
|
|
|
использованы для быстрого разрешения или запрещения служб. Вы можете найти
|
|
|
|
|
список макросов включенный в Вашу версия Shorewall при помощи
|
|
|
|
|
команды:</para>
|
|
|
|
|
|
|
|
|
|
<para><command>ls
|
|
|
|
|
<filename>/usr/share/shorewall/macro.*</filename></command></para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Если Вы хотите разрешить соединения из Интернет на Ваш файервол и Вы
|
2005-12-05 00:18:09 +01:00
|
|
|
|
нашли соответствующий макрос в
|
|
|
|
|
<filename>/etc/shorewall/macro.*</filename>, то общий формат правила в
|
|
|
|
|
<filename>/etc/shorewall/rules</filename> такой:</para>
|
|
|
|
|
|
|
|
|
|
<programlisting>#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
|
|
|
|
|
<<emphasis>macro</emphasis>>/ACCEPT net $FW</programlisting>
|
|
|
|
|
|
|
|
|
|
<example>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<title>Вы хотите запустить Web-сервер и IMAP-сервер на Вашем
|
2005-12-05 00:18:09 +01:00
|
|
|
|
файерволе:</title>
|
|
|
|
|
|
|
|
|
|
<programlisting>#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
|
|
|
|
|
Web/ACCEPT net $FW
|
|
|
|
|
IMAP/ACCEPT net $FW</programlisting>
|
|
|
|
|
</example>
|
|
|
|
|
|
|
|
|
|
<para>Вы можете также указать Ваше правило непосредственно, без
|
|
|
|
|
использования предопределенного макроса. Это будет необходимо в случае,
|
|
|
|
|
если нет предопределенного макроса соответствующего Вашим требованиям. В
|
|
|
|
|
этом случае общий формат правила в
|
|
|
|
|
<filename>/etc/shorewall/rules</filename> такой:</para>
|
|
|
|
|
|
|
|
|
|
<programlisting>#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
|
|
|
|
|
ACCEPT net $FW <emphasis><protocol></emphasis> <emphasis><port></emphasis></programlisting>
|
|
|
|
|
|
|
|
|
|
<example>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<title>Вы хотите запустить Web-сервер и IMAP-сервер на Вашем
|
2005-12-05 00:18:09 +01:00
|
|
|
|
файерволе:</title>
|
|
|
|
|
|
|
|
|
|
<para><programlisting>#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
|
|
|
|
|
ACCEPT net $FW tcp 80
|
|
|
|
|
ACCEPT net $FW tcp 143</programlisting></para>
|
|
|
|
|
</example>
|
|
|
|
|
|
|
|
|
|
<para>Если Вы не знаете какой порт и протокол использует определенное
|
|
|
|
|
приложение, смотрите <ulink url="ports.htm">здесь</ulink>.</para>
|
|
|
|
|
|
|
|
|
|
<important>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Я не рекоммендую разрешать telnet в/из Интернет потому, что он
|
2005-12-05 00:18:09 +01:00
|
|
|
|
использует открытый текст (даже для передачи имени и пароля!). Если Вы
|
|
|
|
|
хотите иметь доступ к командному интерпретатору Вашего файервола из
|
2005-12-12 22:10:39 +01:00
|
|
|
|
Интернет, используйте <acronym>SSH</acronym>:</para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<programlisting>#ACTION SOURCE DESTINATION PROTO DEST PORT(S)
|
|
|
|
|
SSH/ACCEPT net $FW </programlisting>
|
|
|
|
|
</important>
|
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
|
|
|
|
|
<para>В этом месте, отредактируйте
|
|
|
|
|
<filename>/etc/shorewall/rules</filename> для добавления необходимых
|
|
|
|
|
соединений.</para>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
|
|
|
|
<title>Запуск и останов Вашего файервола</title>
|
|
|
|
|
|
|
|
|
|
<para><inlinegraphic fileref="images/BD21298_.gif" format="GIF" /></para>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para><ulink url="Install.htm">Процедура установки</ulink> настраивает
|
2005-12-05 00:18:09 +01:00
|
|
|
|
Вашу систему для запуска Shorewall при загрузке системе, но начиная с
|
|
|
|
|
Shorewall версии 1.3.9 запуск отключен, так что система не будет пытаться
|
|
|
|
|
запустить Shorewall до полного завершения конфигурирования. Как только Вы
|
|
|
|
|
полностью завершите конфигурирование Вашего файервола, Вы можете включить
|
|
|
|
|
запуск Shorewall путем удаления файла
|
|
|
|
|
<filename>/etc/shorewall/startup_disabled</filename>.</para>
|
|
|
|
|
|
|
|
|
|
<important>
|
|
|
|
|
<para><emphasis role="bold">Пользователи пакета .deb должны
|
|
|
|
|
отредактировать <filename>/etc/default/shorewall</filename> и установить
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<quote>startup=1</quote>. </emphasis></para>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</important>
|
|
|
|
|
|
|
|
|
|
<important>
|
|
|
|
|
<para><emphasis role="bold">Вы должны разрешить запуск путем
|
|
|
|
|
редактирования /etc/shorewall/shorewall.conf и установки
|
|
|
|
|
STARTUP_ENABLED=Yes.</emphasis></para>
|
|
|
|
|
</important>
|
|
|
|
|
|
|
|
|
|
<para>Файервол запускается при помощи команды <quote><command>shorewall
|
|
|
|
|
start</command></quote> и останавливается при помощи
|
|
|
|
|
<quote><command>shorewall stop</command></quote>. Когда файервол
|
|
|
|
|
остановливается, маршрутизация разрешается на те хосты, которые указаны в
|
|
|
|
|
<filename><ulink
|
|
|
|
|
url="Documentation.htm#Routestopped">/etc/shorewall/routestopped</ulink></filename>.
|
|
|
|
|
Запущенный файервол может быть перезапущен при помощи команды
|
|
|
|
|
<quote><command>shorewall restart</command></quote>. Если Вы хотите
|
2005-12-12 22:10:39 +01:00
|
|
|
|
полностью удалить изменения сделанные Shorewall из конфигурации Вашего
|
|
|
|
|
Netfilter, используйте команду <quote><command>shorewall
|
2005-12-05 00:18:09 +01:00
|
|
|
|
clear</command></quote>.</para>
|
|
|
|
|
|
|
|
|
|
<warning>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<para>Если Вы подсоединены к Вашему файерволу из Интернет, не
|
2005-12-05 00:18:09 +01:00
|
|
|
|
используйте команду <quote><command>shorewall stop</command></quote>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
если Вы не добавили запись для <acronym>IP</acronym>-адреса, с которого
|
|
|
|
|
Вы подсоединены, в <ulink
|
2005-12-05 00:18:09 +01:00
|
|
|
|
url="Documentation.htm#Routestopped"><filename>/etc/shorewall/routestopped</filename></ulink>.
|
|
|
|
|
Также, я не рекоммендую использовать <quote><command>shorewall
|
|
|
|
|
restart</command></quote>; лучше создать <emphasis><ulink
|
|
|
|
|
url="configuration_file_basics.htm#Configs">альтернативную
|
2005-12-12 22:10:39 +01:00
|
|
|
|
конфигурацию</ulink></emphasis> и протестировать ее при помощи команды
|
|
|
|
|
<ulink
|
2005-12-05 00:18:09 +01:00
|
|
|
|
url="starting_and_stopping_shorewall.htm"><quote><command>shorewall
|
|
|
|
|
try</command></quote></ulink>.</para>
|
|
|
|
|
</warning>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<section>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<title>Дополнительно рекоммендуемая литература</title>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<para>Я особо рекоммендую просмотреть Вам <ulink
|
|
|
|
|
url="configuration_file_basics.htm">страницу Особенностей Общих Фалов
|
2005-12-12 22:10:39 +01:00
|
|
|
|
Конфигурации</ulink> -- она содержит полезные советы об особенностях
|
2005-12-05 00:18:09 +01:00
|
|
|
|
Shorewall, делающую администрирование Вашего файервола проще.</para>
|
|
|
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<appendix>
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<title>История пересмотров</title>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
|
|
|
|
|
<para><revhistory>
|
|
|
|
|
<revision>
|
|
|
|
|
<revnumber>2.0</revnumber>
|
|
|
|
|
|
|
|
|
|
<date>2005-09-12</date>
|
|
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<revremark>Больше обновлений для 3.0</revremark>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
|
<revnumber>1.9</revnumber>
|
|
|
|
|
|
|
|
|
|
<date>2005-09-02</date>
|
|
|
|
|
|
|
|
|
|
<authorinitials>CR</authorinitials>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<revremark>Обновление для Shorewall 3.0</revremark>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
|
<revnumber>1.8</revnumber>
|
|
|
|
|
|
|
|
|
|
<date>2005-07-12</date>
|
|
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<revremark>Исправлена неверная ссылка на rfc1918.</revremark>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
|
<revnumber>1.7</revnumber>
|
|
|
|
|
|
|
|
|
|
<date>2004-02-16</date>
|
|
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<revremark>Файл /etc/shorewall/rfc1918 перемещен в
|
2005-12-05 00:18:09 +01:00
|
|
|
|
/usr/share/shorewall.</revremark>
|
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
|
<revnumber>1.6</revnumber>
|
|
|
|
|
|
|
|
|
|
<date>2004-02-05</date>
|
|
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<revremark>Обновление для Shorewall 2.0</revremark>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
|
<revnumber>1.5</revnumber>
|
|
|
|
|
|
|
|
|
|
<date>2004-01-05</date>
|
|
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<revremark>Стандартные изменения</revremark>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
|
<revnumber>1.4</revnumber>
|
|
|
|
|
|
|
|
|
|
<date>2003-12-30</date>
|
|
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<revremark>Добавлен срвет по обновлению
|
|
|
|
|
/etc/shorewall/rfc1918.</revremark>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</revision>
|
|
|
|
|
|
|
|
|
|
<revision>
|
|
|
|
|
<revnumber>1.3</revnumber>
|
|
|
|
|
|
|
|
|
|
<date>2003-11-15</date>
|
|
|
|
|
|
|
|
|
|
<authorinitials>TE</authorinitials>
|
|
|
|
|
|
2005-12-12 22:10:39 +01:00
|
|
|
|
<revremark>Начальное преобразование DocBook</revremark>
|
2005-12-05 00:18:09 +01:00
|
|
|
|
</revision>
|
|
|
|
|
</revhistory></para>
|
|
|
|
|
</appendix>
|
|
|
|
|
</article>
|