<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://fateyev.com/ru/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel>
        <title>Денис Фатеев unix:2009</title>
        <description></description>
        <link>http://fateyev.com/ru/</link>
        <lastBuildDate>Fri, 01 May 2026 13:58:03 +0000</lastBuildDate>
        <generator>FeedCreator 1.7.2-ppt DokuWiki</generator>
        <image>
            <url>http://fateyev.com/ru/lib/tpl/fateyev/images/favicon.ico</url>
            <title>Денис Фатеев</title>
            <link>http://fateyev.com/ru/</link>
        </image>
        <item>
            <title>Createtorrent − создание .torrent-файлов</title>
            <link>http://fateyev.com/ru/unix/2009/createtorrent_el5_rpms</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Утилита для создания .torrent-файлов из командной строки. Поддерживает включение в раздачу как одиночного файла, так и набора файлов (находящихся в одной директории). Нет ограничения на размер отдельного файла в наборе.
&lt;/p&gt;

&lt;p&gt;
Мной она используется в связке с &lt;a href=&quot;http://code.google.com/p/rutorrent/&quot; class=&quot;urlextern&quot; title=&quot;http://code.google.com/p/rutorrent/&quot;  rel=&quot;nofollow&quot;&gt;ruTorrent&lt;/a&gt; (плагин &lt;a href=&quot;http://code.google.com/p/rutorrent/wiki/PluginCreate&quot; class=&quot;urlextern&quot; title=&quot;http://code.google.com/p/rutorrent/wiki/PluginCreate&quot;  rel=&quot;nofollow&quot;&gt;create&lt;/a&gt;) в качестве внешней программы создания .torrent-файлов. Готового пакета под RedHat для нее я не нашел, поэтому собрал свой. Вдруг кому-нибудь еще пригодится.
&lt;/p&gt;

&lt;p&gt;
Как всегда, скачать пакеты можно &lt;a href=&quot;http://fateyev.com/RPMS/RHEL5/&quot; class=&quot;urlextern&quot; title=&quot;http://fateyev.com/RPMS/RHEL5/&quot;  rel=&quot;nofollow&quot;&gt;здесь&lt;/a&gt;.
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/network?do=showtag&amp;amp;tag=network&quot; class=&quot;wikilink1&quot; title=&quot;tag:network&quot; rel=&quot;tag&quot;&gt;network&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/centos?do=showtag&amp;amp;tag=centos&quot; class=&quot;wikilink1&quot; title=&quot;tag:centos&quot; rel=&quot;tag&quot;&gt;centos&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/createtorrent_el5_rpms#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>network</category>
        <category>linux</category>
        <category>centos</category>
            <pubDate>Fri, 27 Aug 2010 08:42:00 +0000</pubDate>
        </item>
        <item>
            <title>Организация VPN-сети (часть первая)</title>
            <link>http://fateyev.com/ru/unix/2009/deploy_vpn_network_1</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Этой статьей я открываю цикл кратких заметок по созданию распределенных &lt;a href=&quot;http://ru.wikipedia.org/wiki/VPN&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/VPN&quot;&gt;VPN-сетей&lt;/a&gt; республиканского масштаба для нужд среднего предприятия. Не ищите здесь руководство по VPN-технологиям – его здесь нет, для этого есть специализированные пособия, доступные в электронной и печатной форме. Я лишь попытаюсь дать представление на практическом примере, что это за «зверь» такой – VPN, и указать на особенности построения подобной инфраструктуры в наших условиях, попутно обобщив свой опыт на этом поприще. Все, сказанное мной, не претендует на истину в последней инстанции, и отражает лишь мою собственную точку зрения.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Зачем это нужно?&lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Итак, исходные условия таковы: ваша организация имеет несколько филиалов, расположенных на большом удалении друг от друга в пределах одного города или даже в разных городах страны. Вам поставлена, на первый взгляд, совершенно фантастическая задача: объединить локальные сети филиалов в одну глобальную сеть; чтобы каждый компьютер мог обращаться к другому компьютеру в этой сети, вне зависимости где он находится – в соседней комнате или в тысяче километров от него. Иногда условие задачи выглядит по-другому: предоставить доступ к определенному ресурсу одного филиала с компьютеров сети других филиалов (но суть дела от этого не меняется).
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;И как это сделать?&lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Делается это с помощью технологии &lt;a href=&quot;http://ru.wikipedia.org/wiki/VPN&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/VPN&quot;&gt;VPN&lt;/a&gt;. Проще говоря, поверх ваших отдельных сетей «набрасывается» логическая сеть, отдельные компоненты (то бишь, филиалы) которой могут быть связаны между собой различными способами: по публичным каналам (Интернет), по выделенным линиям, по беспроводной сети. В результате, получается гомогенная сеть, состоящая из разнородных компонентов.
&lt;/p&gt;

&lt;p&gt;
Понятно, что вариант с самостоятельной прокладкой каналов рассматриваться не может в силу поставленных условий, никто не даст вам тянуть кабель через весь город, да и неблагодарная это работа. Поэтому ничего иного не остается, как обратиться к поставщику телекоммуникационных услуг, а проще говоря – к &lt;a href=&quot;http://ru.wikipedia.org/wiki/Провайдер&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/Провайдер&quot;&gt;провайдеру&lt;/a&gt;. Выбор провайдера – отдельная тема для разговора, выходящая за рамки этой статьи. Стоит лишь заметить, что все будет зависеть от нескольких факторов, самые главные из которых – объем предоставляемых услуг и качество связи. Немаловажное значение будут иметь расценки на передачу данных, и здесь нужно выбрать золотую середину между ценой и качеством. Поскольку каждый устанавливает эту планку для себя индивидуально (для кого-то целый час без связи не беда, а кому-то пять минут простоя покажутся трагедией), советовать что-либо здесь невозможно.
&lt;/p&gt;

&lt;p&gt;
На этом этапе требуется сесть и тщательно продумать, какие филиалы вашей организации войдут в сеть. Если их больше двух-трех, можно для наглядности даже нарисовать схему с табличкой, в которой указать адреса и контакты каждого филиала. Если требуется организовать распределенную сеть в пределах одного города, обычно есть выбор из нескольких вариантов подключений у различных провайдеров. В моем случае, требовалось объединить несколько сетей, расположенных в различных городах области; здесь, как говорится, без вариантов – приходится обращаться к компании-монополисту &lt;a href=&quot;http://telecom.kz&quot; class=&quot;urlextern&quot; title=&quot;http://telecom.kz&quot;  rel=&quot;nofollow&quot;&gt;Казахтелеком&lt;/a&gt;, единственному глобальному поставщику данного вида связи на всей территории РК. Далее в статье я буду рассматривать подключение именно через «Казахтелеком», как наиболее универсальный способ, адаптировать рекомендации под конкретного провайдера не составит особого труда.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_2&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_2&quot;&gt;Организация VPN-сети (часть вторая)&lt;/a&gt;
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/vpn?do=showtag&amp;amp;tag=vpn&quot; class=&quot;wikilink1&quot; title=&quot;tag:vpn&quot; rel=&quot;tag&quot;&gt;vpn&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/network?do=showtag&amp;amp;tag=network&quot; class=&quot;wikilink1&quot; title=&quot;tag:network&quot; rel=&quot;tag&quot;&gt;network&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_1#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>linux</category>
        <category>vpn</category>
        <category>network</category>
            <pubDate>Mon, 22 Nov 2010 08:05:00 +0000</pubDate>
        </item>
        <item>
            <title>Организация VPN-сети (часть вторая)</title>
            <link>http://fateyev.com/ru/unix/2009/deploy_vpn_network_2</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Итак, определились с провайдером и четко представляем, из каких структурных элементов, то бишь, филиалов, будет состоять наша сеть. С провайдером согласованы технологии, на основе которых будут предоставляться услуги. В случае «Казахтелекома», это обычно xDSL – &lt;a href=&quot;http://ru.wikipedia.org/wiki/ADSL&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/ADSL&quot;&gt;ADSL&lt;/a&gt;, &lt;a href=&quot;http://ru.wikipedia.org/wiki/SHDSL&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/SHDSL&quot;&gt;SHDSL&lt;/a&gt;. Вообще, предполагается, что вы обладаете базовыми знаниями в маршрутизации IP-сетей и представлениями о технологиях, которые будут использоваться провайдером; а если нет – то сейчас самое время почитать об этом.
&lt;/p&gt;

&lt;p&gt;
На этом этапе необходимо заполнить заявку на подключение, в которой указать все точки, которые впоследствии войдут в сеть. В ней необходимо отразить топологию будущей VPN-сети, доступны следующие варианты:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ru.wikipedia.org/wiki/Сетевая_модель_OSI#.D0.9A.D0.B0.D0.BD.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B9_.D1.83.D1.80.D0.BE.D0.B2.D0.B5.D0.BD.D1.8C_.28.D0.B0.D0.BD.D0.B3.D0.BB._Data_Link_layer.29&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/Сетевая_модель_OSI#.D0.9A.D0.B0.D0.BD.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B9_.D1.83.D1.80.D0.BE.D0.B2.D0.B5.D0.BD.D1.8C_.28.D0.B0.D0.BD.D0.B3.D0.BB._Data_Link_layer.29&quot;&gt;L2&lt;/a&gt; – в этом случае ваша VPN-сеть будет представлять собой подобие большого географически разнесенного &lt;a href=&quot;http://ru.wikipedia.org/wiki/Свитч&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/Свитч&quot;&gt;свитча&lt;/a&gt;;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;a href=&quot;http://ru.wikipedia.org/wiki/Сетевая_модель_OSI#.D0.A1.D0.B5.D1.82.D0.B5.D0.B2.D0.BE.D0.B9_.D1.83.D1.80.D0.BE.D0.B2.D0.B5.D0.BD.D1.8C_.28.D0.B0.D0.BD.D0.B3.D0.BB._Network_layer.29&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/Сетевая_модель_OSI#.D0.A1.D0.B5.D1.82.D0.B5.D0.B2.D0.BE.D0.B9_.D1.83.D1.80.D0.BE.D0.B2.D0.B5.D0.BD.D1.8C_.28.D0.B0.D0.BD.D0.B3.D0.BB._Network_layer.29&quot;&gt;L3&lt;/a&gt; – привычная для нас инфраструктура сетевого уровня на базе протокола &lt;a href=&quot;http://ru.wikipedia.org/wiki/IPv4&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/IPv4&quot;&gt;IPv4&lt;/a&gt;, в которой действует &lt;a href=&quot;http://ru.wikipedia.org/wiki/роутинг&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/роутинг&quot;&gt;роутинг&lt;/a&gt; и прочие «вкусные» вещи. Советую ознакомиться с &lt;a href=&quot;http://fateyev.com/ru/_media/unix/2009/telecom_1.doc&quot; class=&quot;media mediafile mf_doc&quot; title=&quot;unix:2009:telecom_1.doc (323 KB)&quot;&gt;&amp;quot;Рекомендациями по составлению адресного плана&amp;quot;&lt;/a&gt;, это документ, который дается всем клиентам услуги IP VPN L3 «Казахтелекома». Заявка составляется по такому &lt;a href=&quot;http://fateyev.com/ru/_media/unix/2009/telecom_2.doc&quot; class=&quot;media mediafile mf_doc&quot; title=&quot;unix:2009:telecom_2.doc (26 KB)&quot;&gt;шаблону&lt;/a&gt;.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
В подавляющем большинстве случаев, вариант с L3 является предпочтительным. Используйте L2 в том случае, если точно знаете, зачем вам это нужно&lt;sup&gt;&lt;a href=&quot;#fn__1&quot; id=&quot;fnt__1&quot; class=&quot;fn_top&quot;&gt;1)&lt;/a&gt;&lt;/sup&gt;. Далее аспекты построения VPN-сетей на базе топологии L2 рассматриваться не будут.
&lt;/p&gt;

&lt;p&gt;
К адресному плану для VPN-сети особых условий не предъявляется &lt;sup&gt;&lt;a href=&quot;#fn__2&quot; id=&quot;fnt__2&quot; class=&quot;fn_top&quot;&gt;2)&lt;/a&gt;&lt;/sup&gt;, формально можно использовать любое адресное пространство, но на практике лучше выбрать рекомендованный диапазон, например &lt;em&gt;10.0.0.0/24&lt;/em&gt; или &lt;em&gt;172.16.0.0/24.&lt;/em&gt; Для каждой точки подключения (филиала) назначается блок из 4-х IP-адресов (подсети вида &lt;em&gt;10.0.0.0/30, 10.0.0.4/30, 10.0.0.8/30&lt;/em&gt; и т.п.) из выбранного вами общего диапазона. Также, если не планируете использовать &lt;a href=&quot;http://ru.wikipedia.org/wiki/NAT&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/NAT&quot;&gt;NAT&lt;/a&gt; или собственную VPN- инфраструктуру поверх «казахтелекомовского» канала, в заявке необходимо указать IP-адресацию, используемую в ваших сетях филиалов. В ином случае, в поле «Подсети клиента» указываете полный  диапазон IP-адресов вашей сети (вида &lt;em&gt;10.0.0.0/24&lt;/em&gt;). 
&lt;/p&gt;

&lt;p&gt;
Блок городских адресов, указанный в шаблоне, обычно не требуется – поскольку структура сети очевидна. Но лучше предварительно уточнить этот вопрос в службе поддержки.  
&lt;/p&gt;

&lt;p&gt;
В каждый филиал вашей компании, входящий в VPN-сеть, необходимо будет поставить маршрутизатор. Выбор платформы для маршрутизатора остается за вами; это может быть аппаратный роутер (&lt;a href=&quot;http://www.cisco.com&quot; class=&quot;urlextern&quot; title=&quot;http://www.cisco.com&quot;  rel=&quot;nofollow&quot;&gt;Cisco&lt;/a&gt;, &lt;a href=&quot;http://www.juniper.net&quot; class=&quot;urlextern&quot; title=&quot;http://www.juniper.net&quot;  rel=&quot;nofollow&quot;&gt;Juniper&lt;/a&gt;, &lt;a href=&quot;http://www.zyxel.com&quot; class=&quot;urlextern&quot; title=&quot;http://www.zyxel.com&quot;  rel=&quot;nofollow&quot;&gt;ZyXEL&lt;/a&gt;, &lt;a href=&quot;http://www.dlink.com&quot; class=&quot;urlextern&quot; title=&quot;http://www.dlink.com&quot;  rel=&quot;nofollow&quot;&gt;D-Link&lt;/a&gt; и т.д.) или программный – обычный PC с архитектурой х86 или ARM, с установленными ОС Linux или BSD&lt;sup&gt;&lt;a href=&quot;#fn__3&quot; id=&quot;fnt__3&quot; class=&quot;fn_top&quot;&gt;3)&lt;/a&gt;&lt;/sup&gt;. Он будет обеспечивать взаимодействие сети филиала с VPN-сетью, и посредством неё, с сетями других филиалов. В случае использования топологии L3, непосредственно на него назначаются IP-адреса, указанные в заявке&lt;sup&gt;&lt;a href=&quot;#fn__4&quot; id=&quot;fnt__4&quot; class=&quot;fn_top&quot;&gt;4)&lt;/a&gt;&lt;/sup&gt;. Получится примерно такая схема:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://fateyev.com/ru/_detail/unix/2009/pics/vpn_template1.png?id=unix%3A2009%3Adeploy_vpn_network_2&quot; class=&quot;media&quot; title=&quot;unix:2009:pics:vpn_template1.png&quot;&gt;&lt;img src=&quot;http://fateyev.com/ru/_media/unix/2009/pics/vpn_template1.png&quot; class=&quot;mediacenter&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;div class=&quot;table sectionedit2&quot;&gt;&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0&quot;&gt; № п/п &lt;/th&gt;&lt;th class=&quot;col1&quot;&gt; Адрес подключения &lt;/th&gt;&lt;th class=&quot;col2&quot;&gt; Телеф. &lt;/th&gt;&lt;th class=&quot;col3&quot;&gt; Пр.сп., Кбит/с &lt;/th&gt;&lt;th class=&quot;col4&quot;&gt; Техн. &lt;/th&gt;&lt;th class=&quot;col5&quot;&gt; P2P IP-адрес &lt;/th&gt;&lt;th class=&quot;col6&quot;&gt; Подсети клиента &lt;/th&gt;&lt;th class=&quot;col7&quot;&gt; Точка агрегации &lt;/th&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt; 1 &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; г. Костанай, ул.Тарана, 114 &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 540000 &lt;/td&gt;&lt;td class=&quot;col3&quot;&gt; 512 &lt;/td&gt;&lt;td class=&quot;col4&quot;&gt; SHDSL &lt;/td&gt;&lt;td class=&quot;col5&quot;&gt; 10.0.0.0/30 &lt;/td&gt;&lt;td class=&quot;col6&quot;&gt; 10.0.0.0/24 &lt;/td&gt;&lt;td class=&quot;col7&quot;&gt; 10.0.0.0/30 &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt; 2 &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; г. Костанай, ул. Сьянова, 69 &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 510000 &lt;/td&gt;&lt;td class=&quot;col3&quot;&gt; 256 &lt;/td&gt;&lt;td class=&quot;col4&quot;&gt; ADSL &lt;/td&gt;&lt;td class=&quot;col5&quot;&gt; 10.0.0.4/30 &lt;/td&gt;&lt;td class=&quot;col6&quot;&gt; 10.0.0.0/24 &lt;/td&gt;&lt;td class=&quot;col7&quot;&gt; 10.0.0.0/30 &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt; 3 &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; г. Рудный, ул. Ленина, 47 &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 43000 &lt;/td&gt;&lt;td class=&quot;col3&quot;&gt; 128 &lt;/td&gt;&lt;td class=&quot;col4&quot;&gt; ADSL &lt;/td&gt;&lt;td class=&quot;col5&quot;&gt; 10.0.0.8/30 &lt;/td&gt;&lt;td class=&quot;col6&quot;&gt; 10.0.0.0/24 &lt;/td&gt;&lt;td class=&quot;col7&quot;&gt; 10.0.0.0/30 &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row4&quot;&gt;
		&lt;td class=&quot;col0&quot;&gt; 4 &lt;/td&gt;&lt;td class=&quot;col1&quot;&gt; г. Лисаковск, &lt;br/&gt;
6 мкрн, 23 &lt;/td&gt;&lt;td class=&quot;col2&quot;&gt; 37000 &lt;/td&gt;&lt;td class=&quot;col3&quot;&gt; 128 &lt;/td&gt;&lt;td class=&quot;col4&quot;&gt; ADSL &lt;/td&gt;&lt;td class=&quot;col5&quot;&gt; 10.0.0.12/30 &lt;/td&gt;&lt;td class=&quot;col6&quot;&gt; 10.0.0.0/24 &lt;/td&gt;&lt;td class=&quot;col7&quot;&gt; 10.0.0.0/30 &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;!-- EDIT2 TABLE [6554-7202] --&gt;
&lt;p&gt;
&lt;br/&gt;

Если сеть областного масштаба, с заполненной заявкой идете в &lt;a href=&quot;http://www.kst.telecom.kz/&quot; class=&quot;urlextern&quot; title=&quot;http://www.kst.telecom.kz/&quot;  rel=&quot;nofollow&quot;&gt;ОДТ &amp;quot;Казахтелеком&amp;quot;&lt;/a&gt; (Областную дирекцию телекоммуникаций АО «Казахтелеком»), &lt;a href=&quot;http://www.kst.telecom.kz/kst/?r=4&amp;amp;p=15&quot; class=&quot;urlextern&quot; title=&quot;http://www.kst.telecom.kz/kst/?r=4&amp;amp;p=15&quot;  rel=&quot;nofollow&quot;&gt;здесь&lt;/a&gt; можете заранее ознакомиться с расценками на услуги областного IP VPN. В Костанае Центр продаж ОДТ находится по адресу: пр. Аль-Фараби, 71 (здание переговорного пункта, соседнее крыльцо). 
&lt;/p&gt;

&lt;p&gt;
В том случае, если ваша сеть выходит за пределы области или страны - вам придется работать с &lt;a href=&quot;http://online.kz&quot; class=&quot;urlextern&quot; title=&quot;http://online.kz&quot;  rel=&quot;nofollow&quot;&gt;ДКП &amp;quot;Казахтелеком&amp;quot;&lt;/a&gt; (Дирекция корпоративных продаж АО «Казахтелеком»). Центр расширенного сервиса ДКП в Костанае находится по адресу: ул. Тарана, 56 (здание дирекции «Казахтелеком»).
&lt;/p&gt;

&lt;p&gt;
Там, на месте, получаете типовой договор на предоставление услуг IP VPN; если условия и расценки устраивают – заключаете договор с менеджером ОДТ или ДКП, в зависимости от ваших условий.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_1&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_1&quot;&gt;Организация VPN-сети (часть первая)&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_3&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_3&quot;&gt;Организация VPN-сети (часть третья)&lt;/a&gt;
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/vpn?do=showtag&amp;amp;tag=vpn&quot; class=&quot;wikilink1&quot; title=&quot;tag:vpn&quot; rel=&quot;tag&quot;&gt;vpn&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/network?do=showtag&amp;amp;tag=network&quot; class=&quot;wikilink1&quot; title=&quot;tag:network&quot; rel=&quot;tag&quot;&gt;network&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;div class=&quot;footnotes&quot;&gt;
&lt;div class=&quot;fn&quot;&gt;&lt;sup&gt;&lt;a href=&quot;#fnt__1&quot; id=&quot;fn__1&quot; class=&quot;fn_bot&quot;&gt;1)&lt;/a&gt;&lt;/sup&gt; 
тем более, на территории Костанайской области существует ограничение по количеству хостов: не более 64 уникальных хостов в &lt;a href=&quot;http://ru.wikipedia.org/wiki/Сетевая_модель_OSI#.D0.9A.D0.B0.D0.BD.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B9_.D1.83.D1.80.D0.BE.D0.B2.D0.B5.D0.BD.D1.8C_.28.D0.B0.D0.BD.D0.B3.D0.BB._Data_Link_layer.29&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/Сетевая_модель_OSI#.D0.9A.D0.B0.D0.BD.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B9_.D1.83.D1.80.D0.BE.D0.B2.D0.B5.D0.BD.D1.8C_.28.D0.B0.D0.BD.D0.B3.D0.BB._Data_Link_layer.29&quot;&gt;L2&lt;/a&gt; VPN-сети; это связано с особенностями используемого оборудования Alcatel на &lt;a href=&quot;http://ru.wikipedia.org/wiki/DSLAM&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/DSLAM&quot;&gt;DSLAM&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;fn&quot;&gt;&lt;sup&gt;&lt;a href=&quot;#fnt__2&quot; id=&quot;fn__2&quot; class=&quot;fn_bot&quot;&gt;2)&lt;/a&gt;&lt;/sup&gt; 
есть информация, что &lt;a href=&quot;http://en.wikipedia.org/wiki/MPLS&quot; class=&quot;interwiki iw_wp&quot; title=&quot;http://en.wikipedia.org/wiki/MPLS&quot;&gt;MPLS&lt;/a&gt; ДКП Казахтелекома работает с использованием &lt;a href=&quot;http://en.wikipedia.org/wiki/VRRP&quot; class=&quot;interwiki iw_wp&quot; title=&quot;http://en.wikipedia.org/wiki/VRRP&quot;&gt;VRRP&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;fn&quot;&gt;&lt;sup&gt;&lt;a href=&quot;#fnt__3&quot; id=&quot;fn__3&quot; class=&quot;fn_bot&quot;&gt;3)&lt;/a&gt;&lt;/sup&gt; 
у меня стоят PC с ОС Linux, в основном, на базе &lt;a href=&quot;http://www.centos.org&quot; class=&quot;urlextern&quot; title=&quot;http://www.centos.org&quot;  rel=&quot;nofollow&quot;&gt;CentOS&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;fn&quot;&gt;&lt;sup&gt;&lt;a href=&quot;#fnt__4&quot; id=&quot;fn__4&quot; class=&quot;fn_bot&quot;&gt;4)&lt;/a&gt;&lt;/sup&gt; 
для топологии L2 IP-адресация точек подключения смысла не имеет&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_2#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>linux</category>
        <category>vpn</category>
        <category>network</category>
            <pubDate>Mon, 22 Nov 2010 08:11:00 +0000</pubDate>
        </item>
        <item>
            <title>Организация VPN-сети (часть третья)</title>
            <link>http://fateyev.com/ru/unix/2009/deploy_vpn_network_3</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;strong&gt;Готовим машину&lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Пока ваша заявка выполняется провайдером (по времени это займёт примерно неделю или две), можете заняться настройкой маршрутизаторов филиалов, чтобы в момент подключения у вас всё было готово.
&lt;/p&gt;

&lt;p&gt;
Я буду рассматривать настройку маршрутизаторов на базе ОС Linux &lt;a href=&quot;http://www.centos.org/&quot; class=&quot;urlextern&quot; title=&quot;http://www.centos.org/&quot;  rel=&quot;nofollow&quot;&gt;CentOS&lt;/a&gt;, не составит особого труда адаптировать эти рекомендации для любой ОС семейства Linux/BSD. Ну а если вы обладатель «железного» роутера – обратитесь к документации на ваше устройство, нижеприведенные рекомендации к вам не относятся.
&lt;/p&gt;

&lt;p&gt;
Требования к аппаратной части маршрутизаторов достаточно скромны: системного блока с процессором &lt;em&gt;Intel Celeron/Pentium II 450-500МГц&lt;/em&gt; и &lt;em&gt;160-192Мб ОЗУ&lt;/em&gt; будет вполне достаточно для поддержки 10-20 подключений. В крайнем случае, если у вас 5-10 подключений, можно обойтись &lt;em&gt;Intel Celeron 333&lt;/em&gt; со &lt;em&gt;128Мб&lt;/em&gt; оперативной памяти на борту. 
&lt;/p&gt;

&lt;p&gt;
На каждый маршрутизатор нужно будет поставить две сетевые карты – для соединения с WAN (с VPN-сетью) и &lt;abbr title=&quot;Local Area Network&quot;&gt;LAN&lt;/abbr&gt; (локальная сеть филиала). Поскольку зачастую заказывают VPN-канал не шире 1-2Мбит/с, то производительность сетевых карт не играет здесь особой роли. Подойдут и распространённые у нас &lt;em&gt;RealTek&lt;/em&gt; и &lt;em&gt;VIA&lt;/em&gt; всех видов, а также встроенные в материнскую плату карточки. Лучшим выбором, из доступного у нас, будет что-то вроде &lt;a href=&quot;http://www.intel.com/products/ethernet/index.htm?iid=embed_portal+hdprod_ethernet&quot; class=&quot;urlextern&quot; title=&quot;http://www.intel.com/products/ethernet/index.htm?iid=embed_portal+hdprod_ethernet&quot;  rel=&quot;nofollow&quot;&gt;Intel PRO/1000 PT/GT&lt;/a&gt;, худшим – продукция &lt;a href=&quot;http://www.tp-link.com/products/nic.asp&quot; class=&quot;urlextern&quot; title=&quot;http://www.tp-link.com/products/nic.asp&quot;  rel=&quot;nofollow&quot;&gt;TP-Link&lt;/a&gt;. Всё остальное лежит в широком диапазоне между этими двумя крайностями. Кстати, если будете использовать встроенные сетевые карточки &lt;em&gt;RealTek&lt;/em&gt;, загляните &lt;a href=&quot;http://fateyev.com/ru/blog/2009/luchshe_pozdno_chem_nikogda&quot; class=&quot;wikilink1&quot; title=&quot;blog:2009:luchshe_pozdno_chem_nikogda&quot;&gt;сюда&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
Скорее всего, на собранной вами машине не будет поддержки аппаратного &lt;a href=&quot;http://ru.wikipedia.org/wiki/RAID&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/RAID&quot;&gt;RAID&lt;/a&gt;. Максимум, что можно встретить на бюджетной машине среднего класса, это &lt;em&gt;«Fake-RAID»&lt;/em&gt;, реализуемый средствами BIOS и ненадёжный даже в сравнении с программными RAID-решениями. Поэтому, чтобы хоть как-то обезопаситься от сбоев, купите пару одинаковых жёстких дисков IDE или SATA, в зависимости от вашей материнской платы, и в процессе установки системы настройте «зеркалом» (&lt;a href=&quot;http://ru.wikipedia.org/wiki/RAID#RAID_1&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/RAID#RAID_1&quot;&gt;RAID1&lt;/a&gt;) разделы на дисках с помощью &lt;em&gt;«Linux Software RAID»&lt;/em&gt;. Официальная документация с картинками находится &lt;a href=&quot;http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/sysadmin-guide/ch-software-raid.html&quot; class=&quot;urlextern&quot; title=&quot;http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/sysadmin-guide/ch-software-raid.html&quot;  rel=&quot;nofollow&quot;&gt;здесь&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
Все остальные компоненты некритичны и могут быть любыми. Монитор и клавиатура нужны только на этапе установке ОС. После того, как маршрутизатор будет настроен, они более не понадобятся – им можно будет управлять удаленно. 
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;xDSL-оборудование&lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Согласно условиям контракта, «Казахтелеком» предоставляет своим клиентам ADSL/SHDSL-модемы, обычно, марки &lt;a href=&quot;http://www.billion.com/&quot; class=&quot;urlextern&quot; title=&quot;http://www.billion.com/&quot;  rel=&quot;nofollow&quot;&gt;Billion&lt;/a&gt;, в аренду на всё время пользования услугой IP VPN. Так что, дополнительно ничего покупать не требуется.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_2&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_2&quot;&gt;Организация VPN-сети (часть вторая)&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_4&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_4&quot;&gt;Организация VPN-сети (часть четвертая)&lt;/a&gt;
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/vpn?do=showtag&amp;amp;tag=vpn&quot; class=&quot;wikilink1&quot; title=&quot;tag:vpn&quot; rel=&quot;tag&quot;&gt;vpn&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/network?do=showtag&amp;amp;tag=network&quot; class=&quot;wikilink1&quot; title=&quot;tag:network&quot; rel=&quot;tag&quot;&gt;network&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_3#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>linux</category>
        <category>vpn</category>
        <category>network</category>
            <pubDate>Mon, 22 Nov 2010 08:40:00 +0000</pubDate>
        </item>
        <item>
            <title>Организация VPN-сети (часть четвертая)</title>
            <link>http://fateyev.com/ru/unix/2009/deploy_vpn_network_4</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
К этому времени, «Казахтелеком» или иной провайдер, предоставляющий вам услугу &lt;em&gt;IP VPN&lt;/em&gt;, должен завершить выполнение вашей заявки на подключение. Если у вас подключение по &lt;a href=&quot;http://ru.wikipedia.org/wiki/xDSL&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/xDSL&quot;&gt;xDSL&lt;/a&gt;, вам необходимо уточнить у техподдержки &lt;em&gt;параметры инкапсуляции&lt;/em&gt; и значения &lt;em&gt;VPI/VCI&lt;/em&gt;. В разных областях Казахстана они могут варьироваться по усмотрению местного оператора связи. В Костанае по области используется &lt;em&gt;0/34&lt;/em&gt;, а в Павлодаре – &lt;em&gt;0/35&lt;/em&gt;. 
&lt;/p&gt;

&lt;p&gt;
Процедура настройки модемов в филиалах абсолютно аналогична; максимум, могут отличаться лишь вышеуказанные параметры. Включите ваш модем и зайдите на него через веб-интерфейс (как это сделать, написано в документации к модему). Переключите модем в режим моста &lt;em&gt;(«bridge mode»)&lt;/em&gt;, смените пароль администратора и убедитесь, что прочие настройки соответствуют полученным от провайдера. Все прочие настройки (PPTP и IPSec VPN, NAT, сервера NTP и прочее) для нас несущественны, оставьте их как есть.
&lt;/p&gt;

&lt;p&gt;
На телефонную линию ставите &lt;a href=&quot;http://ru.wikipedia.org/wiki/Частотный_разделитель&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/Частотный_разделитель&quot;&gt;сплиттер&lt;/a&gt; (идёт в поставке с модемом), подключаете модем к соответствующему порту сплиттера. После перезагрузки на модеме должна загореться лампочка «DSL». Это означает, что сделанные настройки верны и линия исправна; модем подключился к &lt;a href=&quot;http://ru.wikipedia.org/wiki/DSLAM&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/DSLAM&quot;&gt;DSLAM&lt;/a&gt; провайдера.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_3&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_3&quot;&gt;Организация VPN-сети (часть третья)&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_5&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_5&quot;&gt;Организация VPN-сети (часть пятая)&lt;/a&gt;
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/vpn?do=showtag&amp;amp;tag=vpn&quot; class=&quot;wikilink1&quot; title=&quot;tag:vpn&quot; rel=&quot;tag&quot;&gt;vpn&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/network?do=showtag&amp;amp;tag=network&quot; class=&quot;wikilink1&quot; title=&quot;tag:network&quot; rel=&quot;tag&quot;&gt;network&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_4#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>linux</category>
        <category>vpn</category>
        <category>network</category>
            <pubDate>Mon, 22 Nov 2010 08:38:00 +0000</pubDate>
        </item>
        <item>
            <title>Организация VPN-сети (часть пятая)</title>
            <link>http://fateyev.com/ru/unix/2009/deploy_vpn_network_5</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Думаю, не стоит подробно останавливаться на вопросах установки ОС. Поставьте компоненты базовой системы и набор сетевых служб на ваш выбор (зависит от того, что вы планируете ставить на маршрутизатор в дальнейшем). Графические оболочки нам не понадобятся, поэтому смело убирайте галочки с соответствующих пунктов в списке компонентов для установки. Средства разработки ставьте, если планируете собирать RPM-пакеты и специфический софт из исходников.
&lt;/p&gt;

&lt;p&gt;
Конфигурация маршрутизатора в основном филиале (подсеть с точкой агрегации) и в дочерних различается незначительно, поэтому сначала рассмотрим моменты, общие для всех.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;strong&gt; Отключаем службы &lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Полагаю, что для маршрутизаторов вы взяли не самые быстрые машины, для повышения производительности (и уровня безопасности, заодним) желательно отключить неиспользуемые службы в свежеустановленной ОС.
&lt;/p&gt;

&lt;p&gt;
Чтобы не повторяться, краткое описание имеющихся служб в RHEL/Fedora можно найти &lt;a href=&quot;http://www.mjmwired.net/resources/mjm-services-f7.html&quot; class=&quot;urlextern&quot; title=&quot;http://www.mjmwired.net/resources/mjm-services-f7.html&quot;  rel=&quot;nofollow&quot;&gt;здесь&lt;/a&gt;. Руководство по управлению службами и уровнем запуска &lt;em&gt;(«runlevel»)&lt;/em&gt; доступно &lt;a href=&quot;http://www.mjmwired.net/resources/mjm-fedora-manage-services.html&quot; class=&quot;urlextern&quot; title=&quot;http://www.mjmwired.net/resources/mjm-fedora-manage-services.html&quot;  rel=&quot;nofollow&quot;&gt;здесь&lt;/a&gt;. Конфигурирование служб проще всего произвести через псевдографический интерфейс (утилита &lt;em&gt;«setup»&lt;/em&gt;).
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;strong&gt; Настраиваем сетевые параметры &lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
На нашем маршрутизаторе стоят две сетевые карты (см. &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_3&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_3&quot;&gt;ранее&lt;/a&gt;). Назначаем IP-адреса сетевым интерфейсам. Например, интерфейс &lt;em&gt;«eth0»&lt;/em&gt; может быть использован для соединения с сетью провайдера, а &lt;em&gt;«eth1»&lt;/em&gt; будет «смотреть» в локальную сеть филиала. 
&lt;/p&gt;

&lt;p&gt;
Снова смотрим на общую схему филиалов (приведена ранее во &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_2&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_2&quot;&gt;второй части&lt;/a&gt; данных заметок):
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://fateyev.com/ru/_detail/unix/2009/pics/vpn_template1.png?id=unix%3A2009%3Adeploy_vpn_network_5&quot; class=&quot;media&quot; title=&quot;unix:2009:pics:vpn_template1.png&quot;&gt;&lt;img src=&quot;http://fateyev.com/ru/_media/unix/2009/pics/vpn_template1.png&quot; class=&quot;mediacenter&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

Взглянем на отдельный сегмент VPN-сети, на примере головного филиала (WAN-сеть &lt;em&gt;10.0.0.0/30&lt;/em&gt;, локальная сеть &lt;em&gt;192.168.0.0/24&lt;/em&gt;):
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://fateyev.com/ru/_detail/unix/2009/pics/vpn_template2.png?id=unix%3A2009%3Adeploy_vpn_network_5&quot; class=&quot;media&quot; title=&quot;unix:2009:pics:vpn_template2.png&quot;&gt;&lt;img src=&quot;http://fateyev.com/ru/_media/unix/2009/pics/vpn_template2.png&quot; class=&quot;mediacenter&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
Конфигурация сетевых интерфейсов маршрутизатора будет такой:
&lt;/p&gt;

&lt;p&gt;
Файл &lt;em&gt;/etc/sysconfig/network:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code bash&quot;&gt;&lt;span class=&quot;re2&quot;&gt;NETWORKING&lt;/span&gt;=&lt;span class=&quot;kw2&quot;&gt;yes&lt;/span&gt;
&lt;span class=&quot;re2&quot;&gt;NETWORKING_IPV6&lt;/span&gt;=no
&lt;span class=&quot;re2&quot;&gt;HOSTNAME&lt;/span&gt;=gateway1.yourcompany.com
&lt;span class=&quot;re2&quot;&gt;GATEWAY&lt;/span&gt;=10.0.0.1&lt;/pre&gt;

&lt;p&gt;
Файл &lt;em&gt;/etc/sysconfig/network-scripts/ifcfg-eth0:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code bash&quot;&gt;&lt;span class=&quot;re2&quot;&gt;DEVICE&lt;/span&gt;=eth0
&lt;span class=&quot;re2&quot;&gt;BOOTPROTO&lt;/span&gt;=static
&lt;span class=&quot;re2&quot;&gt;BROADCAST&lt;/span&gt;=10.0.0.3
&lt;span class=&quot;re2&quot;&gt;HWADDR&lt;/span&gt;=00:XX:XX:XX:XX:XX
&lt;span class=&quot;re2&quot;&gt;IPADDR&lt;/span&gt;=10.0.0.2
&lt;span class=&quot;re2&quot;&gt;NETMASK&lt;/span&gt;=255.255.255.252
&lt;span class=&quot;re2&quot;&gt;NETWORK&lt;/span&gt;=10.0.0.0
&lt;span class=&quot;re2&quot;&gt;GATEWAY&lt;/span&gt;=10.0.0.1
&lt;span class=&quot;re2&quot;&gt;ONBOOT&lt;/span&gt;=&lt;span class=&quot;kw2&quot;&gt;yes&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;
Файл &lt;em&gt;/etc/sysconfig/network-scripts/ifcfg-eth1:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code bash&quot;&gt;&lt;span class=&quot;re2&quot;&gt;DEVICE&lt;/span&gt;=eth1
&lt;span class=&quot;re2&quot;&gt;BOOTPROTO&lt;/span&gt;=static
&lt;span class=&quot;re2&quot;&gt;BROADCAST&lt;/span&gt;=192.168.0.255
&lt;span class=&quot;re2&quot;&gt;HWADDR&lt;/span&gt;=00:XX:XX:XX:XX:XX
&lt;span class=&quot;re2&quot;&gt;IPADDR&lt;/span&gt;=192.168.0.1
&lt;span class=&quot;re2&quot;&gt;NETMASK&lt;/span&gt;=255.255.255.0
&lt;span class=&quot;re2&quot;&gt;NETWORK&lt;/span&gt;=192.168.0.0
&lt;span class=&quot;re2&quot;&gt;GATEWAY&lt;/span&gt;=192.168.0.1
&lt;span class=&quot;re2&quot;&gt;ONBOOT&lt;/span&gt;=&lt;span class=&quot;kw2&quot;&gt;yes&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;strong&gt; Настраиваем файервол &lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Задаем максимально ограничивающие правила файервола.
&lt;/p&gt;

&lt;p&gt;
Файл &lt;em&gt;/etc/sysconfig/iptables:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code cpp&quot;&gt;&lt;span class=&quot;co2&quot;&gt;# -- NAT table --&lt;/span&gt;
&lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;nat
&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;PREROUTING ACCEPT &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;POSTROUTING ACCEPT &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;OUTPUT ACCEPT &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
COMMIT
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# -- FILTER table --&lt;/span&gt;
&lt;span class=&quot;sy2&quot;&gt;*&lt;/span&gt;filter
&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;INPUT DROP &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;FORWARD DROP &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;OUTPUT ACCEPT &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;sy4&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;i lo &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j ACCEPT
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;p icmp &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;icmp&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;type echo&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;reply &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j ACCEPT
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;p icmp &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;icmp&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;type destination&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;unreachable &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j ACCEPT
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;p icmp &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;icmp&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;type echo&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;request &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j ACCEPT
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;p icmp &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;icmp&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;type time&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;exceeded &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j ACCEPT
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;p tcp &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;tcp&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;flags SYN,ACK SYN,ACK &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;m state &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;state NEW &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j REJECT &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;reject&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;with tcp&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;reset
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;p tcp &lt;span class=&quot;sy3&quot;&gt;!&lt;/span&gt; &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;syn &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;m state &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;state NEW &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j DROP
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;i eth1 &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;m state &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;state NEW &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;p udp &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;d 192.168.0.255 &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j DROP
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;m state &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;state NEW &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;p udp &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;d 255.255.255.255 &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j DROP
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;m state &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;state ESTABLISHED,RELATED &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j ACCEPT
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;m state &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;state NEW &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;m tcp &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;p tcp &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;dport &lt;span class=&quot;nu0&quot;&gt;22&lt;/span&gt; &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j ACCEPT
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j LOG &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;log&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;prefix &lt;span class=&quot;st0&quot;&gt;&amp;quot;IPTABLES-IN Default Drop: &amp;quot;&lt;/span&gt; &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;log&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;level &lt;span class=&quot;nu0&quot;&gt;7&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A FORWARD &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;m state &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;state ESTABLISHED,RELATED &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j ACCEPT
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A FORWARD &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j LOG &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;log&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;prefix &lt;span class=&quot;st0&quot;&gt;&amp;quot;IPTABLES-FWD Default Drop: &amp;quot;&lt;/span&gt; &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;log&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;level &lt;span class=&quot;nu0&quot;&gt;7&lt;/span&gt;
COMMIT&lt;/pre&gt;

&lt;p&gt;
Активируем новые правила:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 ~]# /etc/init.d/iptables restart&lt;/pre&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;strong&gt; Проверяем результат &lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Перезапускаем службу сети …
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 ~]# /etc/init.d/network restart&lt;/pre&gt;

&lt;p&gt;
… и включаем поддержку роутинга на маршрутизаторе:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 ~]# echo &amp;quot;1&amp;quot; &amp;gt; /proc/sys/net/ipv4/ip_forward&lt;/pre&gt;

&lt;p&gt;
(неплохо было бы добавить эту строчку в файл &lt;em&gt;/etc/rc.local&lt;/em&gt;, чтобы поддержка маршрутизации активировалась сразу при загрузке ОС).
&lt;/p&gt;

&lt;p&gt;
Подключаем WAN-порт маршрутизатора к Ethernet-порту модема и с консоли проверяем доступность ближайшего шлюза провайдера:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 ~]# ping 10.0.0.1
PING 10.0.0.1 (10.0.0.1) 56(84) bytes of data.
64 bytes from 10.0.0.1: icmp_seq=1 ttl=255 time=6.74 ms
64 bytes from 10.0.0.1: icmp_seq=2 ttl=255 time=4.85 ms
64 bytes from 10.0.0.1: icmp_seq=3 ttl=255 time=5.02 ms
64 bytes from 10.0.0.1: icmp_seq=4 ttl=255 time=3.72 ms

--- 10.0.0.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2998ms
rtt min/avg/max/mdev = 3.727/5.087/6.746/1.081 ms
[root@gateway1 ~]#&lt;/pre&gt;

&lt;p&gt;
Если &lt;em&gt;«ping»&lt;/em&gt; к шлюзу успешен, ваш маршрутизатор подключен к сети IP VPN. 
&lt;/p&gt;

&lt;p&gt;
Остальные маршрутизаторы настраиваются аналогично, согласно &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_2&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_2&quot;&gt;заявки&lt;/a&gt;, поданной провайдеру. По мере подключения  филиалов и установки в них оборудования, вы также можете проверять их доступность (т.е., любой маршрутизатор и шлюз удаленной сети должны &lt;em&gt;ping&lt;/em&gt;-оваться с любого маршрутизатора вашей VPN-сети).
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_4&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_4&quot;&gt;Организация VPN-сети (часть четвертая)&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_6&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_6&quot;&gt;Организация VPN-сети (часть шестая)&lt;/a&gt;
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/vpn?do=showtag&amp;amp;tag=vpn&quot; class=&quot;wikilink1&quot; title=&quot;tag:vpn&quot; rel=&quot;tag&quot;&gt;vpn&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/network?do=showtag&amp;amp;tag=network&quot; class=&quot;wikilink1&quot; title=&quot;tag:network&quot; rel=&quot;tag&quot;&gt;network&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_5#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>linux</category>
        <category>vpn</category>
        <category>network</category>
            <pubDate>Fri, 27 Aug 2010 08:42:00 +0000</pubDate>
        </item>
        <item>
            <title>Организация VPN-сети (часть шестая)</title>
            <link>http://fateyev.com/ru/unix/2009/deploy_vpn_network_6</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Теперь нам нужно обеспечить шифрование передаваемых данных и организовать контроль доступа к нашим ресурсам. Для этого разворачиваем собственную VPN-инфраструктуру поверх каналов Казахтелекома. Существует несколько реализаций технологии VPN, в нашем случае подойдет пакет &lt;a href=&quot;http://openvpn.net/index.php/open-source.html&quot; class=&quot;urlextern&quot; title=&quot;http://openvpn.net/index.php/open-source.html&quot;  rel=&quot;nofollow&quot;&gt;OpenVPN&lt;/a&gt;, в котором реализован весь нужный нам функционал. 
&lt;/p&gt;

&lt;p&gt;
Структура подобной сети достаточно простая – один из узлов сети объявляется VPN-сервером; другие узлы, выступающие VPN-клиентами, могут подключаться к сети после аутентификации на VPN-сервере, при этом данные между клиентами и сервером передаются в зашифрованном виде. Результатом наших действий будет виртуальная сеть, построенная по такой схеме:
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://fateyev.com/ru/_detail/unix/2009/pics/vpn_template3.png?id=unix%3A2009%3Adeploy_vpn_network_6&quot; class=&quot;media&quot; title=&quot;unix:2009:pics:vpn_template3.png&quot;&gt;&lt;img src=&quot;http://fateyev.com/ru/_media/unix/2009/pics/vpn_template3.png&quot; class=&quot;mediacenter&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;strong&gt; Устанавливаем VPN-сервер &lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
В качестве VPN-сервера настраиваем один из маршрутизаторов нашей сети (используйте маршрутизатор головного филиала или того филиала, который географически находится ближе к вам). Сначала проверьте, присутствует ли пакет &lt;em&gt;openvpn&lt;/em&gt; в репозиториях вашего дистрибутива:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 ~]# yum search openvpn lzo
Loading &amp;quot;fastestmirror&amp;quot; plugin
Loading mirror speeds from cached hostfile
 * base: mirror.corbina.net
 * updates: mirror.corbina.net
 * addons: mirror.corbina.net
 * extras: centosr3.centos.org
openvpn.i386 : OpenVPN is a robust and highly flexible VPN daemon by James Yonan.
lzo-devel.i386 : Header files, libraries and development documentation for lzo
lzo.i386 : Portable lossless data compression library
[root@gateway1 ~]#&lt;/pre&gt;

&lt;p&gt;
Если пакеты найдены, устанавливаем:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 ~]# yum install openvpn lzo&lt;/pre&gt;

&lt;p&gt;
в ином случае, готовые пакеты для RHEL5/CentOS можно скачать &lt;a href=&quot;http://fateyev.com/RPMS/RHEL5/&quot; class=&quot;urlextern&quot; title=&quot;http://fateyev.com/RPMS/RHEL5/&quot;  rel=&quot;nofollow&quot;&gt;отсюда&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
После установки конфигурируем службу в режиме сервера. Копируем пример конфигурационного файла &lt;em&gt; /usr/share/doc/openvpn-2.0.9/sample-config-files/server.conf&lt;/em&gt; в каталог &lt;em&gt; /etc/openvpn&lt;/em&gt; и редактируем в соответствии с нашими условиями.
&lt;/p&gt;

&lt;p&gt;
Файл &lt;em&gt; /etc/openvpn/server.conf:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code cpp&quot;&gt;&lt;span class=&quot;co2&quot;&gt;############################################################&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# OpenVPN 2.0 config file for multi-client server.         #&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;############################################################&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Which local IP address should OpenVPN&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# listen on? (optional)&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;local a.&lt;span class=&quot;me1&quot;&gt;b&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;c&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;d&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Which TCP/UDP port should OpenVPN listen on?&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# If you want to run multiple OpenVPN instances&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# on the same machine, use a different port&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# number for each one.  You will need to&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# open up this port on your firewall.&lt;/span&gt;
port &lt;span class=&quot;nu0&quot;&gt;1194&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# TCP or UDP server?&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;proto tcp
proto udp
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# &amp;quot;dev tun&amp;quot; will create a routed IP tunnel,&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# &amp;quot;dev tap&amp;quot; will create an ethernet tunnel.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Use &amp;quot;dev tap0&amp;quot; if you are ethernet bridging&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# and have precreated a tap0 virtual interface&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# and bridged it with your ethernet interface.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# If you want to control access policies&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# over the VPN, you must create firewall&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# rules for the the TUN/TAP interface.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# On non-Windows systems, you can give&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# an explicit unit number, such as tun0.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# On Windows, use &amp;quot;dev-node&amp;quot; for this.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# On most systems, the VPN will not function&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# unless you partially or fully disable&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the firewall for the TUN/TAP interface.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;dev tap
dev tun0
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Windows needs the TAP-Win32 adapter name&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# from the Network Connections panel if you&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# have more than one.  On XP SP2 or higher,&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# you may need to selectively disable the&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Windows firewall for the TAP adapter.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Non-Windows systems usually don't need this.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;dev&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;node MyTap
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# SSL/TLS root certificate (ca), certificate&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# (cert), and private key (key).  Each client&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# and the server must have their own cert and&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# key file.  The server and all clients will&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# use the same ca file.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# See the &amp;quot;easy-rsa&amp;quot; directory for a series&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# of scripts for generating RSA certificates&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# and private keys.  Remember to use&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# a unique Common Name for the server&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# and each of the client certificates.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Any X509 key management system can be used.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# OpenVPN can also use a PKCS #12 formatted key file&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# (see &amp;quot;pkcs12&amp;quot; directive in man page).&lt;/span&gt;
ca ca.&lt;span class=&quot;me1&quot;&gt;crt&lt;/span&gt;
cert server.&lt;span class=&quot;me1&quot;&gt;crt&lt;/span&gt;
key server.&lt;span class=&quot;me1&quot;&gt;key&lt;/span&gt;  &lt;span class=&quot;co2&quot;&gt;# This file should be kept secret&lt;/span&gt;
&amp;nbsp;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Diffie hellman parameters.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Generate your own with:&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#   openssl dhparam -out dh1024.pem 1024&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Substitute 2048 for 1024 if you are using&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# 2048 bit keys.&lt;/span&gt;
dh dh1024.&lt;span class=&quot;me1&quot;&gt;pem&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Configure server mode and supply a VPN subnet&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# for OpenVPN to draw client addresses from.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# The server will take 10.8.0.1 for itself,&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the rest will be made available to clients.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Each client will be able to reach the server&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# on 10.8.0.1. Comment this line out if you are&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# ethernet bridging. See the man page for more info.&lt;/span&gt;
server 10.10.0.0 255.255.255.0
&lt;span class=&quot;co2&quot;&gt;# -- server --: &lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# 10.10.0.0/30 (main-filial)&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#  host 10.10.0.1, gw 10.10.0.2, bcast 10.10.0.2&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# -- clients --:&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# 10.10.0.4/30 (filial2) &lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#  host 10.10.0.5, gw 10.10.0.6, bcast 10.10.0.7&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# 10.10.0.8/30 (filial3)&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#  host 10.10.0.9, gw 10.10.0.10, bcast 10.10.0.11&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# 10.10.0.12/30 (filial4)&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#  host 10.10.0.13, gw 10.10.0.14, bcast 10.10.0.15&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# .. etc..&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Maintain a record of client &amp;lt;-&amp;gt; virtual IP address&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# associations in this file.  If OpenVPN goes down or&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# is restarted, reconnecting clients can be assigned&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the same virtual IP address from the pool that was&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# previously assigned.&lt;/span&gt;
ifconfig&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;pool&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;persist ipp.&lt;span class=&quot;me1&quot;&gt;txt&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Configure server mode for ethernet bridging.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# You must first use your OS's bridging capability&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# to bridge the TAP interface with the ethernet&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# NIC interface.  Then you must manually set the&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# IP/netmask on the bridge interface, here we&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# assume 10.8.0.4/255.255.255.0.  Finally we&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# must set aside an IP range in this subnet&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# (start=10.8.0.50 end=10.8.0.100) to allocate&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# to connecting clients.  Leave this line commented&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# out unless you are ethernet bridging.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;server&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Push routes to the client to allow it&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# to reach other private subnets behind&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the server.  Remember that these&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# private subnets will also need&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# to know to route the OpenVPN client&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# address pool (10.8.0.0/255.255.255.0)&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# back to the OpenVPN server.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;push &lt;span class=&quot;st0&quot;&gt;&amp;quot;route 192.168.10.0 255.255.255.0&amp;quot;&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;push &lt;span class=&quot;st0&quot;&gt;&amp;quot;route 192.168.20.0 255.255.255.0&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# To assign specific IP addresses to specific&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# clients or if a connecting client has a private&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# subnet behind it that should also have VPN access,&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# use the subdirectory &amp;quot;ccd&amp;quot; for client-specific&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# configuration files (see man page for more info).&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# EXAMPLE: Suppose the client&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# having the certificate common name &amp;quot;Thelonious&amp;quot;&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# also has a small subnet behind his connecting&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# machine, such as 192.168.40.128/255.255.255.248.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# First, uncomment out these lines:&lt;/span&gt;
client&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;config&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;dir ccd
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;route 192.168.40.128 255.255.255.248
&lt;span class=&quot;co2&quot;&gt;# Then create a file ccd/Thelonious with this line:&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#   iroute 192.168.40.128 255.255.255.248&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# This will allow Thelonious' private subnet to&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# access the VPN.  This example will only work&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# if you are routing, not bridging, i.e. you are&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# using &amp;quot;dev tun&amp;quot; and &amp;quot;server&amp;quot; directives.&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# EXAMPLE: Suppose you want to give&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Thelonious a fixed VPN IP address of 10.9.0.1.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# First uncomment out these lines:&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;client&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;config&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;dir ccd
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;route 10.9.0.0 255.255.255.252
&lt;span class=&quot;co2&quot;&gt;# Then add this line to ccd/Thelonious:&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#   ifconfig-push 10.9.0.1 10.9.0.2&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Suppose that you want to enable different&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# firewall access policies for different groups&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# of clients.  There are two methods:&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# (1) Run multiple OpenVPN daemons, one for each&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#     group, and firewall the TUN/TAP interface&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#     for each group/daemon appropriately.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# (2) (Advanced) Create a script to dynamically&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#     modify the firewall in response to access&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#     from different clients.  See man&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#     page for more info on learn-address script.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;learn&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;address .&lt;span class=&quot;sy2&quot;&gt;/&lt;/span&gt;script
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# If enabled, this directive will configure&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# all clients to redirect their default&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# network gateway through the VPN, causing&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# all IP traffic such as web browsing and&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# and DNS lookups to go through the VPN&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# (The OpenVPN server machine may need to NAT&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the TUN/TAP interface to the internet in&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# order for this to work properly).&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# CAVEAT: May break client's network config if&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# client's local DHCP server packets get routed&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# through the tunnel.  Solution: make sure&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# client's local DHCP server is reachable via&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# a more specific route than the default route&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# of 0.0.0.0/0.0.0.0.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;push &lt;span class=&quot;st0&quot;&gt;&amp;quot;redirect-gateway local def1&amp;quot;&lt;/span&gt;
push &lt;span class=&quot;st0&quot;&gt;&amp;quot;redirect-gateway def1&amp;quot;&lt;/span&gt;
&amp;nbsp;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Certain Windows-specific network settings&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# can be pushed to clients, such as DNS&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# or WINS server addresses.  CAVEAT:&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# http://openvpn.net/faq.html#dhcpcaveats&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;push &lt;span class=&quot;st0&quot;&gt;&amp;quot;dhcp-option DNS 10.8.0.1&amp;quot;&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;push &lt;span class=&quot;st0&quot;&gt;&amp;quot;dhcp-option WINS 10.8.0.1&amp;quot;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Uncomment this directive to allow different&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# clients to be able to &amp;quot;see&amp;quot; each other.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# By default, clients will only see the server.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# To force clients to only see the server, you&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# will also need to appropriately firewall the&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# server's TUN/TAP interface.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;client&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;to&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;client
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Uncomment this directive if multiple clients&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# might connect with the same certificate/key&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# files or common names.  This is recommended&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# only for testing purposes.  For production use,&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# each client should have its own certificate/key&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# pair.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# IF YOU HAVE NOT GENERATED INDIVIDUAL&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# CERTIFICATE/KEY PAIRS FOR EACH CLIENT,&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# EACH HAVING ITS OWN UNIQUE &amp;quot;COMMON NAME&amp;quot;,&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# UNCOMMENT THIS LINE OUT.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;duplicate&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;cn
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# The keepalive directive causes ping-like&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# messages to be sent back and forth over&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the link so that each side knows when&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the other side has gone down.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Ping every 10 seconds, assume that remote&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# peer is down if no ping received during&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# a 120 second time period.&lt;/span&gt;
keepalive &lt;span class=&quot;nu0&quot;&gt;10&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;120&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# For extra security beyond that provided&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# by SSL/TLS, create an &amp;quot;HMAC firewall&amp;quot;&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# to help block DoS attacks and UDP port flooding.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Generate with:&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#   openvpn --genkey --secret ta.key&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# The server and each client must have&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# a copy of this key.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# The second parameter should be '0'&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# on the server and '1' on the clients.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;tls&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;auth ta.&lt;span class=&quot;me1&quot;&gt;key&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt; &lt;span class=&quot;co2&quot;&gt;# This file is secret&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Select a cryptographic cipher.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# This config item must be copied to&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the client config file as well.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;cipher BF&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;CBC        &lt;span class=&quot;co2&quot;&gt;# Blowfish (default)&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;cipher AES&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;128&lt;/span&gt;&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;CBC   &lt;span class=&quot;co2&quot;&gt;# AES&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;cipher DES&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;EDE3&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;CBC  &lt;span class=&quot;co2&quot;&gt;# Triple-DES&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Enable compression on the VPN link.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# If you enable it here, you must also&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# enable it in the client config file.&lt;/span&gt;
comp&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;lzo
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# The maximum number of concurrently connected&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# clients we want to allow.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;max&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;clients &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# It's a good idea to reduce the OpenVPN&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# daemon's privileges after initialization.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# You can uncomment this out on&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# non-Windows systems.&lt;/span&gt;
user nobody
group nobody
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# The persist options will try to avoid&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# accessing certain resources on restart&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# that may no longer be accessible because&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# of the privilege downgrade.&lt;/span&gt;
persist&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;key
persist&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;tun
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Output a short status file showing&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# current connections, truncated&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# and rewritten every minute.&lt;/span&gt;
status &lt;span class=&quot;sy2&quot;&gt;/&lt;/span&gt;var&lt;span class=&quot;sy2&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;log&lt;/span&gt;&lt;span class=&quot;sy2&quot;&gt;/&lt;/span&gt;openvpn&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;status.&lt;span class=&quot;kw3&quot;&gt;log&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# By default, log messages will go to the syslog (or&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# on Windows, if running as a service, they will go to&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the &amp;quot;\Program Files\OpenVPN\log&amp;quot; directory).&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Use log or log-append to override this default.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# &amp;quot;log&amp;quot; will truncate the log file on OpenVPN startup,&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# while &amp;quot;log-append&amp;quot; will append to it.  Use one&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# or the other (but not both).&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;log&lt;/span&gt;         openvpn.&lt;span class=&quot;kw3&quot;&gt;log&lt;/span&gt;
log&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;append  &lt;span class=&quot;sy2&quot;&gt;/&lt;/span&gt;var&lt;span class=&quot;sy2&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;log&lt;/span&gt;&lt;span class=&quot;sy2&quot;&gt;/&lt;/span&gt;openvpn.&lt;span class=&quot;kw3&quot;&gt;log&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Set the appropriate level of log&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# file verbosity.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# 0 is silent, except for fatal errors&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# 4 is reasonable for general usage&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# 5 and 6 can help to debug connection problems&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# 9 is extremely verbose&lt;/span&gt;
verb &lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Silence repeating messages.  At most 20&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# sequential messages of the same message&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# category will be output to the log.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;mute &lt;span class=&quot;nu0&quot;&gt;20&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;
Создаем &lt;a href=&quot;http://ru.wikipedia.org/wiki/PKI&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/PKI&quot;&gt;PKI&lt;/a&gt;-инфраструктуру на сервере. Копируем каталог &lt;em&gt; /usr/share/doc/openvpn-2.0.9/easy-rsa&lt;/em&gt; в &lt;em&gt; /etc/openvpn&lt;/em&gt;, редактируем файл настроек &lt;em&gt;vars&lt;/em&gt;. 
&lt;/p&gt;

&lt;p&gt;
Файл &lt;em&gt; /etc/openvpn/easy-rsa/vars:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code cpp&quot;&gt; &lt;span class=&quot;sy2&quot;&gt;--------&lt;/span&gt; &lt;span class=&quot;sy1&quot;&gt;&amp;lt;&lt;/span&gt; начало пропущено &lt;span class=&quot;sy1&quot;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&quot;sy2&quot;&gt;--------&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# These are the default values for fields&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# which will be placed in the certificate.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Don't leave any of these fields blank.&lt;/span&gt;
export KEY_COUNTRY&lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt;KZ
export KEY_PROVINCE&lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt;Kostanay
export KEY_CITY&lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt;Kostanay
export KEY_ORG&lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;YourCompany LLC&amp;quot;&lt;/span&gt;
export KEY_EMAIL&lt;span class=&quot;sy1&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&amp;quot;denis@fateyev.com&amp;quot;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;
Активизируем изменения (обратите внимание на пробел в &lt;em&gt;&amp;#039;. ./vars&amp;#039;&lt;/em&gt;):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 easy-rsa]# . ./vars
[root@gateway1 easy-rsa]# ./clean-all&lt;/pre&gt;

&lt;p&gt;
Создаем корневой сертификат:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 easy-rsa]# ./build-ca

Generating a 1024 bit RSA private key
………………………++++++
…………………….++++++
writing new private key to ‘ca.key’
—–
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.’, the field will be left blank.
—–
Country Name (2 letter code) [KZ]:
State or Province Name (full name) [Kostanay]:
Locality Name (eg, city) [Kostanay]:
Organization Name (eg, company) [YourCompany LLC]:
Organizational Unit Name (eg, section) []:Tech Staff
Common Name (eg, your name or your server’s hostname) []:vpn.yourcompany.com
Email Address [denis@fateyev.com]:&lt;/pre&gt;

&lt;p&gt;
Создаем сертификат сервера:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 easy-rsa]# ./build-key-server server

Generating a 1024 bit RSA private key
………………………………….++++++
…………………….++++++
writing new private key to ‘server.key’
—–
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.’, the field will be left blank.
—–
Country Name (2 letter code) [KZ]:
State or Province Name (full name) [Kostanay]:
Locality Name (eg, city) [Kostanay]:
Organization Name (eg, company) [YourCompany LLC]:
Organizational Unit Name (eg, section) []:Tech Staff
Common Name (eg, your name or your server’s hostname) []:vpn.yourcompany.com
Email Address [denis@fateyev.com]:

Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []:&amp;lt;enter your password here&amp;gt;
An optional company name []:
Using configuration from /etc/openvpn/easy-rsa/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject’s Distinguished Name is as follows
countryName :PRINTABLE:’KZ’
stateOrProvinceName :PRINTABLE:’Kostanay’
localityName :PRINTABLE:’Kostanay’
organizationName :PRINTABLE:’YourCompany LLC’
organizationalUnitName:PRINTABLE:’Tech Staff’
commonName :PRINTABLE:’vpn.yourcompany.com’
emailAddress :IA5STRING:’denis@fateyev.com’
Certificate is to be certified until Jun 02 11:52:31 2019 GMT (3650 days)
Sign the certificate? [y/n]:y

1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated&lt;/pre&gt;

&lt;p&gt;
С помощью алгоритма &lt;a href=&quot;http://ru.wikipedia.org/wiki/Diffie-Hellman&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/Diffie-Hellman&quot;&gt;Diffie-Hellman&lt;/a&gt; генерируем секретный ключ:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 easy-rsa]# ./build-dh
Generating DH parameters, 1024 bit long safe prime, generator 2
This is going to take a long time&lt;/pre&gt;

&lt;p&gt;
Копируем файлы &lt;em&gt;ca.crt, dh1024.pem, server.key, server.crt&lt;/em&gt; из папки &lt;em&gt; keys/ &lt;/em&gt; в &lt;em&gt; /etc/openvpn:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 easy-rsa]# cp keys/ca.crt keys/dh1024.pem \
  keys/server.key keys/server.crt /etc/openvpn/&lt;/pre&gt;

&lt;p&gt;
Разрешаем подключения к OpenVPN-серверу (добавляем запись в конфигурационный файл &lt;em&gt; /etc/sysconfig/iptables&lt;/em&gt; в секцию &lt;em&gt;*filter&lt;/em&gt;):
&lt;/p&gt;
&lt;pre class=&quot;code cpp&quot;&gt;&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;A INPUT &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;m state &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;state NEW &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;p udp &lt;span class=&quot;sy2&quot;&gt;--&lt;/span&gt;dport &lt;span class=&quot;nu0&quot;&gt;1194&lt;/span&gt; &lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;j ACCEPT&lt;/pre&gt;

&lt;p&gt;
Перезапускаем &lt;em&gt;iptables:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 ~]# /etc/init.d/iptables restart&lt;/pre&gt;

&lt;p&gt;
Создаем log-файлы для OpenVPN и назначаем права доступа:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 ~]# touch /var/log/openvpn.log &amp;amp;&amp;amp; \
  chown nobody:nobody /var/log/openvpn.log
[root@gateway1 ~]# touch /var/log/openvpn-status.log &amp;amp;&amp;amp; \
  chown nobody:nobody /var/log/openvpn-status.log&lt;/pre&gt;

&lt;p&gt;
Служба &lt;em&gt;openvpn&lt;/em&gt; должна запускаться при загрузке системы. Устанавливаем уровень запуска и перезапускаем службы:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 ~]# chkconfig openvpn on
[root@gateway1 ~]# /etc/init.d/network restart
[root@gateway1 ~]# /etc/init.d/openvpn restart&lt;/pre&gt;

&lt;p&gt;
Если при перезапуске &lt;em&gt;openvpn&lt;/em&gt; присутствуют ошибки, проверьте &lt;em&gt;log&lt;/em&gt;-файлы OpenVPN для получения дополнительной информации о неполадке. На этом настройка серверной части OpenVPN завершена.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_5&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_5&quot;&gt;Организация VPN-сети (часть пятая)&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_7&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_7&quot;&gt;Организация VPN-сети (часть седьмая)&lt;/a&gt;
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/vpn?do=showtag&amp;amp;tag=vpn&quot; class=&quot;wikilink1&quot; title=&quot;tag:vpn&quot; rel=&quot;tag&quot;&gt;vpn&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/network?do=showtag&amp;amp;tag=network&quot; class=&quot;wikilink1&quot; title=&quot;tag:network&quot; rel=&quot;tag&quot;&gt;network&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_6#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>linux</category>
        <category>vpn</category>
        <category>network</category>
            <pubDate>Fri, 27 Aug 2010 08:42:00 +0000</pubDate>
        </item>
        <item>
            <title>Организация VPN-сети (часть седьмая)</title>
            <link>http://fateyev.com/ru/unix/2009/deploy_vpn_network_7</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
&lt;strong&gt; Устанавливаем VPN-клиентов &lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Маршрутизаторы прочих филиалов будут выступать клиентами по отношению к VPN-серверу. Переходим к настройке клиентского роутера, устанавливаем пакеты &lt;em&gt;openvpn&lt;/em&gt;, &lt;em&gt;lzo&lt;/em&gt; аналогично тому, как описано &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_6&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_6&quot;&gt;ранее&lt;/a&gt; для сервера.
&lt;/p&gt;

&lt;p&gt;
После установки пакетов конфигурируем службу в режиме клиента. Для этого копируем пример конфигурационного файла  &lt;em&gt; /usr/share/doc/openvpn-2.0.9/sample-config-files/client.conf&lt;/em&gt; в каталог  &lt;em&gt; /etc/openvpn&lt;/em&gt; и редактируем в соответствии с нашими условиями. 
&lt;/p&gt;

&lt;p&gt;
Файл &lt;em&gt; /etc/openvpn/client.conf:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code cpp&quot;&gt;&lt;span class=&quot;co2&quot;&gt;##############################################&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Sample client-side OpenVPN 2.0 config file #&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# for connecting to multi-client server.     #&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;##############################################&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Specify that we are a client and that we&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# will be pulling certain config file directives&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# from the server.&lt;/span&gt;
client
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Use the same setting as you are using on&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the server.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# On most systems, the VPN will not function&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# unless you partially or fully disable&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# the firewall for the TUN/TAP interface.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;dev tap
dev tun0
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Windows needs the TAP-Win32 adapter name&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# from the Network Connections panel&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# if you have more than one.  On XP SP2,&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# you may need to disable the firewall&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# for the TAP adapter.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;dev&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;node MyTap
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Are we connecting to a TCP or&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# UDP server?  Use the same setting as&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# on the server.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;proto tcp
proto udp
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# The hostname/IP and port of the server.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# You can have multiple remote entries&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# to load balance between the servers.&lt;/span&gt;
remote 10.0.0.2 &lt;span class=&quot;nu0&quot;&gt;1194&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;remote my&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;server&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;2&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;1194&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Choose a random host from the remote&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# list for load-balancing.  Otherwise&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# try hosts in the order specified.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;remote&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;random
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Keep trying indefinitely to resolve the&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# host name of the OpenVPN server.  Very useful&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# on machines which are not permanently connected&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# to the internet such as laptops.&lt;/span&gt;
resolv&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;retry infinite
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Most clients don't need to bind to&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# a specific local port number.&lt;/span&gt;
nobind
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Downgrade privileges after initialization (non-Windows only)&lt;/span&gt;
user nobody
group nobody
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Try to preserve some state across restarts.&lt;/span&gt;
persist&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;key
persist&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;tun
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# If you are connecting through an&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# HTTP proxy to reach the actual OpenVPN&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# server, put the proxy server/IP and&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# port number here.  See the man page&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# if your proxy server requires&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# authentication.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;http&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;proxy&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;retry &lt;span class=&quot;co2&quot;&gt;# retry on connection failures&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;http&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;proxy &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;proxy server&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;proxy port &lt;span class=&quot;co2&quot;&gt;#]&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Wireless networks often produce a lot&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# of duplicate packets.  Set this flag&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# to silence duplicate packet warnings.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;mute&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;replay&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;warnings
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# SSL/TLS parms.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# See the server config file for more&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# description.  It's best to use&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# a separate .crt/.key file pair&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# for each client.  A single ca&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# file can be used for all clients.&lt;/span&gt;
ca ca.&lt;span class=&quot;me1&quot;&gt;crt&lt;/span&gt;
cert filial2.&lt;span class=&quot;me1&quot;&gt;crt&lt;/span&gt;
key filial2.&lt;span class=&quot;me1&quot;&gt;key&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Verify server certificate by checking&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# that the certicate has the nsCertType&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# field set to &amp;quot;server&amp;quot;.  This is an&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# important precaution to protect against&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# a potential attack discussed here:&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#  http://openvpn.net/howto.html#mitm&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;#&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# To use this feature, you will need to generate&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# your server certificates with the nsCertType&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# field set to &amp;quot;server&amp;quot;.  The build-key-server&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# script in the easy-rsa folder will do this.&lt;/span&gt;
ns&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;cert&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;type server
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# If a tls-auth key is used on the server&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# then every client must also have the key.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;tls&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;auth ta.&lt;span class=&quot;me1&quot;&gt;key&lt;/span&gt; &lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Select a cryptographic cipher.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# If the cipher option is used on the server&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# then you must also specify it here.&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;cipher x
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Enable compression on the VPN link.&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# Don't enable this unless it is also&lt;/span&gt;
&lt;span class=&quot;co2&quot;&gt;# enabled in the server config file.&lt;/span&gt;
comp&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;lzo
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Set log file verbosity.&lt;/span&gt;
verb &lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt;
log&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;append &lt;span class=&quot;sy2&quot;&gt;/&lt;/span&gt;var&lt;span class=&quot;sy2&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;kw3&quot;&gt;log&lt;/span&gt;&lt;span class=&quot;sy2&quot;&gt;/&lt;/span&gt;openvpn.&lt;span class=&quot;kw3&quot;&gt;log&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;co2&quot;&gt;# Silence repeating messages&lt;/span&gt;
&lt;span class=&quot;sy4&quot;&gt;;&lt;/span&gt;mute &lt;span class=&quot;nu0&quot;&gt;20&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;
Служба &lt;em&gt;openvpn&lt;/em&gt; должна запускаться при загрузке системы. Устанавливаем уровень запуска службы:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway2 ~]# chkconfig openvpn on&lt;/pre&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;em&gt;Возвращаемся на наш сервер OpenVPN&lt;/em&gt; (центральный маршрутизатор) и создаем ключ и сертификат для клиента-маршрутизатора филиала &lt;em&gt;filial2:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 ~]# cd /etc/openvpn/easy-rsa
[root@gateway1 easy-rsa]# . ./vars
[root@gateway1 easy-rsa]# ./build-key filial2&lt;/pre&gt;

&lt;p&gt;
Ответив на ряд типовых вопросов (аналогично созданию ключа и сертификата для сервера), ответьте утвердительно на запрос о подписи нового сертификата. В конечном итоге, в каталоге &lt;em&gt; /etc/openvpn/easy-rsa/keys&lt;/em&gt; добавятся два файла: &lt;em&gt;filial2.key&lt;/em&gt; и &lt;em&gt;filial2.crt&lt;/em&gt;. Работоспособность созданного сертификата можно проверить командой:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 keys]# openssl verify -CAfile ca.crt filial2.crt&lt;/pre&gt;

&lt;p&gt;
Устанавливаем параметры IP-протокола для клиента: переходим в подкаталог &lt;em&gt;ccd&lt;/em&gt; каталога &lt;em&gt; /etc/openvpn&lt;/em&gt; &lt;sup&gt;&lt;a href=&quot;#fn__1&quot; id=&quot;fnt__1&quot; class=&quot;fn_top&quot;&gt;1)&lt;/a&gt;&lt;/sup&gt;, внутри каталога создаем файл &lt;em&gt;filial2&lt;/em&gt; (имя, указанное как &lt;em&gt;«commonName»&lt;/em&gt; при создании клиентского сертификата). В нем прописываем клиентский IP-адрес и шлюз, которые будут назначены клиенту &lt;em&gt;filial2&lt;/em&gt; при подключении &lt;sup&gt;&lt;a href=&quot;#fn__2&quot; id=&quot;fnt__2&quot; class=&quot;fn_top&quot;&gt;2)&lt;/a&gt;&lt;/sup&gt;).
&lt;/p&gt;

&lt;p&gt;
Файл &lt;em&gt; /etc/openvpn/ccd/filial2:&lt;/em&gt;
&lt;/p&gt;
&lt;pre class=&quot;code cpp&quot;&gt;ifconfig&lt;span class=&quot;sy2&quot;&gt;-&lt;/span&gt;push 10.10.0.5 10.10.0.6&lt;/pre&gt;

&lt;p&gt;
В заключение, перезапускаем сервер &lt;em&gt;openvpn&lt;/em&gt; на основном маршрутизаторе:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway1 keys]# /etc/init.d/openvpn restart&lt;/pre&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;em&gt;Переходим снова к клиентскому маршрутизатору.&lt;/em&gt; Корневой сертификат сервера &lt;em&gt;(ca.crt)&lt;/em&gt; и пару ключ-сертификат клиента &lt;em&gt;(filial2.key, filial2.crt)&lt;/em&gt; нужно скопировать в папку &lt;em&gt; /etc/openvpn&lt;/em&gt; клиентского маршрутизатора. Перезапускаем службу &lt;em&gt;openvpn&lt;/em&gt; на клиентском маршрутизаторе:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@gateway2 ~]# /etc/init.d/openvpn restart&lt;/pre&gt;

&lt;p&gt;
После перезапуска должно установиться VPN-подключение между основным и клиентским роутером, связь можно проверить &lt;em&gt;«ping»&lt;/em&gt;-ами по IP-адресам VPN-сети. В случае проблем, смотрите логи &lt;em&gt;openvpn&lt;/em&gt; &lt;em&gt;(/var/log/openvpn.log)&lt;/em&gt;.
&lt;/p&gt;

&lt;p&gt;
Остальные маршрутизаторы-клиенты VPN-сети настраиваются аналогично.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_6&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_6&quot;&gt;Организация VPN-сети (часть шестая)&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://fateyev.com/ru/unix/2010/deploy_vpn_network_8&quot; class=&quot;wikilink1&quot; title=&quot;unix:2010:deploy_vpn_network_8&quot;&gt;Организация VPN-сети (часть восьмая)&lt;/a&gt;
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/vpn?do=showtag&amp;amp;tag=vpn&quot; class=&quot;wikilink1&quot; title=&quot;tag:vpn&quot; rel=&quot;tag&quot;&gt;vpn&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/network?do=showtag&amp;amp;tag=network&quot; class=&quot;wikilink1&quot; title=&quot;tag:network&quot; rel=&quot;tag&quot;&gt;network&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;div class=&quot;footnotes&quot;&gt;
&lt;div class=&quot;fn&quot;&gt;&lt;sup&gt;&lt;a href=&quot;#fnt__1&quot; id=&quot;fn__1&quot; class=&quot;fn_bot&quot;&gt;1)&lt;/a&gt;&lt;/sup&gt; 
Создаем этот каталог, если не существует&lt;/div&gt;
&lt;div class=&quot;fn&quot;&gt;&lt;sup&gt;&lt;a href=&quot;#fnt__2&quot; id=&quot;fn__2&quot; class=&quot;fn_bot&quot;&gt;2)&lt;/a&gt;&lt;/sup&gt; 
Если пропустить этот шаг, будет динамически назначаться адрес из диапазона &lt;em&gt;10.10.0.0/24&lt;/em&gt;. Чтобы не ошибиться в параметрах, руководствуйтесь схемой из &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_6&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:deploy_vpn_network_6&quot;&gt;предыдущего раздела&lt;/a&gt;. В комментариях конфигурационного файла &lt;em&gt;openvpn&lt;/em&gt; (см. &lt;em&gt;server.conf&lt;/em&gt; там же) содержится развернутое описание параметров адресации&lt;/div&gt;
&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/deploy_vpn_network_7#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>linux</category>
        <category>vpn</category>
        <category>network</category>
            <pubDate>Fri, 27 Aug 2010 08:42:00 +0000</pubDate>
        </item>
        <item>
            <title>Использование openssh-server-jail</title>
            <link>http://fateyev.com/ru/unix/2009/ispolzovanie_openssh-server-jail</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Основным отличием данной сборки от стандартного пакета &lt;em&gt;openssh&lt;/em&gt; является возможность «запирать» подключающихся по SSH/SFTP пользователей в определенной директории (причем, для каждого пользователя она может быть своя).
&lt;/p&gt;

&lt;p&gt;
Параметры &lt;em&gt;chroot&lt;/em&gt;-окружения пользователей задаются в отдельном конфигурационном файле &lt;em&gt;&amp;#039;/usr/openssh-jail/etc/sshjail.conf&amp;#039;&lt;/em&gt;. Во всем остальном настройка службы повторяет стандартный &lt;em&gt;openssh&lt;/em&gt; (производится через &lt;em&gt;&amp;#039;/usr/openssh-jail/etc/sshd_config&amp;#039;&lt;/em&gt;).
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;strong&gt; Практический пример использования: &lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
Если вы еще не установили пакет &lt;em&gt;openssh-server-jail&lt;/em&gt;, сейчас самое время это сделать. После завершения процедуры установки отредактируйте основной конфигурационный файл службы &lt;em&gt;&amp;#039;/usr/openssh-jail/etc/sshd_config&amp;#039;:&lt;/em&gt; задайте номер tcp-порта для службы и запретите неиспользуемые вами методы аутентификации.
&lt;/p&gt;

&lt;p&gt;
Допустим, системного пользователя &lt;em&gt;&amp;#039;user1&amp;#039;&lt;/em&gt; нужно ограничить его домашним каталогом &lt;em&gt;(&amp;#039;/home/user1&amp;#039;)&lt;/em&gt;. Используем скрипт &lt;em&gt;«makejail»&lt;/em&gt;, который идет в поставке с пакетом:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@ts ~]# /usr/openssh-jail/sbin/makejail user1 /home/user1&lt;/pre&gt;

&lt;p&gt;
Можно написать еще проще (если отсутствует второй параметр, скрипт использует каталог &lt;em&gt;&amp;#039;/home/USERNAME&amp;#039;&lt;/em&gt;):
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;[root@ts ~]# /usr/openssh-jail/sbin/makejail user1&lt;/pre&gt;

&lt;p&gt;
После создания окружения, добавляем в файл &lt;em&gt;&amp;#039;/usr/openssh-jail/etc/sshjail.conf&amp;#039;&lt;/em&gt; строки:
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;chroot=/home/user1
users=user1&lt;/pre&gt;

&lt;p&gt;
Последний шаг, перезапускаем службу &lt;em&gt;sshd-jail&lt;/em&gt;.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

&lt;strong&gt; Типичные вопросы, возникающие при работе с программой: &lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
1) &lt;em&gt;У пользователя в его окружении отсутствует программа XXX, как ее добавить?&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
Посмотрите, как это реализовано в скрипте &lt;em&gt;«makejail»:&lt;/em&gt; при помощи &lt;em&gt;«ldd»&lt;/em&gt; для каждой утилиты в списке выясняются зависимости (библиотеки), затем они копируются в пользовательское &lt;em&gt;chroot&lt;/em&gt;-окружение с таким расчетом, чтобы утилита могла их найти при запуске. Вы можете сэмулировать работу скрипта (запустить &lt;em&gt;«ldd»&lt;/em&gt; для Вашей утилиты и скопировать утилиту и ее зависимости в &lt;em&gt;jail&lt;/em&gt;-каталог), или же отредактировать скрипт &lt;em&gt;«makejail»&lt;/em&gt; (вручную добавить свою утилиту в список &lt;em&gt;«APPS»&lt;/em&gt; и пересоздать пользовательский &lt;em&gt;«jail»&lt;/em&gt;).
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

2) &lt;em&gt;Можно ли задавать ограничения не для одиночного пользователя, а для целой группы?&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
Да, &lt;em&gt;sshjail&lt;/em&gt; обладает подобным функционалом. Смотрите пример конфигурационного файла, идущего в поставке с программой. Но учтите, что вы не сможете использовать скрипт &lt;em&gt;«makejail»&lt;/em&gt; (он может создавать окружение для одиночного пользователя, но не для группы). 
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

3) &lt;em&gt;Обязательно ли располагать «клетку» (jail) в домашнем каталоге пользователя?&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
Необязательно, но желательно с точки зрения элементарного порядка. Я придерживаюсь концепции, что все персональные данные пользователя (к коим, несомненно, относится пользовательское окружение) должны находиться в его домашнем каталоге, а не быть разбросанными по системе.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

4) &lt;em&gt;Можно ли в последствии менять физическое расположение jail-а пользователя?&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
Конечно. Вы можете переместить ее в любое место, и это не повлияет на работоспособность программ внутри &lt;em&gt;chroot&lt;/em&gt;-окружения пользователя (см. предыдущий вопрос). Только не забудьте прописать новый путь к «клетке» в &lt;em&gt;/usr/openssh-jail/etc/sshjail.conf&lt;/em&gt;. 
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

5) &lt;em&gt;Мне нравится стандартная реализация chroot в openssh! Могу ли я использовать ее вместо sshjail?&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
Безусловно, да. Хотя я не вижу в этом смысла, ведь в этом случае теряются все преимущества &lt;em&gt;sshjail&lt;/em&gt;. Невозможно использовать два метода организации &lt;em&gt;«chroot»&lt;/em&gt; одновременно; при активации стандартных методов (&lt;em&gt;«ChrootDirectory»&lt;/em&gt; в &lt;em&gt;sshd_config&lt;/em&gt; и т.п.) закомментируйте все строки в файле &lt;em&gt;/usr/openssh-jail/etc/sshjail.conf&lt;/em&gt;, чтобы отключить функционал &lt;em&gt;sshjail&lt;/em&gt;. По вопросам использования стандартных методов &lt;em&gt;«chroot»&lt;/em&gt; обратитесь к &lt;a href=&quot;http://openssh.org/manual.html&quot; class=&quot;urlextern&quot; title=&quot;http://openssh.org/manual.html&quot;  rel=&quot;nofollow&quot;&gt;официальной документации&lt;/a&gt; OpenSSH.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

6) &lt;em&gt;Для каких дистрибутивов/архитектур можно использовать данный пакет?&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
Пакет собран и протестирован под &lt;em&gt;RHEL5&lt;/em&gt; и &lt;em&gt;CentOS&lt;/em&gt;, архитектуры &lt;em&gt;i386&lt;/em&gt; и &lt;em&gt;x86_64&lt;/em&gt;. Вы также можете собрать пакеты из &lt;em&gt;SRPM&lt;/em&gt; под свою архитектуру.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

7) &lt;em&gt;Могу ли я использовать данный пакет под Fedora 9/10/11 и т.д.?&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;
Теоретически, да; поскольку ничего специфичного в пакете нет. Перед сборкой для &lt;em&gt;Fedora&lt;/em&gt; я бы внес некоторые коррективы в &lt;abbr title=&quot;specification&quot;&gt;spec&lt;/abbr&gt;-файл, в первую очередь это касается секции зависимостей для сборки. Возможно также требуется обновить &lt;em&gt;pam (sshd-jail.pam)&lt;/em&gt; в соответствии с версией, используемой в Вашем дистрибутиве.
&lt;/p&gt;

&lt;p&gt;
&lt;br/&gt;

Для получения дополнительной информации, посетите &lt;a href=&quot;http://antitese.org/sshjail/&quot; class=&quot;urlextern&quot; title=&quot;http://antitese.org/sshjail/&quot;  rel=&quot;nofollow&quot;&gt;сайт&lt;/a&gt; автора &lt;em&gt;sshjail&lt;/em&gt;.
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/centos?do=showtag&amp;amp;tag=centos&quot; class=&quot;wikilink1&quot; title=&quot;tag:centos&quot; rel=&quot;tag&quot;&gt;centos&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/ispolzovanie_openssh-server-jail#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>linux</category>
        <category>centos</category>
            <pubDate>Fri, 27 Aug 2010 08:42:00 +0000</pubDate>
        </item>
        <item>
            <title>NTFS-3g для CentOS</title>
            <link>http://fateyev.com/ru/unix/2009/ntfs_3g_el5_rpms</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
На днях в зашел в гости приятель, принес с собой коллекцию фильмов на жестком диске. Как только мы собрались качать наши гигабайты, выявилась проблема: на винчестере была файловая система &lt;a href=&quot;http://ru.wikipedia.org/wiki/NTFS&quot; class=&quot;interwiki iw_wpru&quot; title=&quot;http://ru.wikipedia.org/wiki/NTFS&quot;&gt;NTFS&lt;/a&gt;. Основное хранилище файлов &lt;em&gt;(«файлопомойка»)&lt;/em&gt; у меня работает на CentOS, поэтому срочно требовалось подключить для него поддержку этого детища Редмонда.
&lt;/p&gt;

&lt;p&gt;
Готовых пакетов для &lt;a href=&quot;http://www.tuxera.com/community/ntfs-3g-download/&quot; class=&quot;urlextern&quot; title=&quot;http://www.tuxera.com/community/ntfs-3g-download/&quot;  rel=&quot;nofollow&quot;&gt;ntfs-3g&lt;/a&gt; я не нашел (видимо, плохо искал), поэтому пересобрал нужные пакеты из репозиториев &lt;a href=&quot;http://download.fedora.redhat.com/pub/fedora/linux/updates/10/SRPMS/&quot; class=&quot;urlextern&quot; title=&quot;http://download.fedora.redhat.com/pub/fedora/linux/updates/10/SRPMS/&quot;  rel=&quot;nofollow&quot;&gt;Fedora&lt;/a&gt;. 
&lt;/p&gt;

&lt;p&gt;
Программу можно установить, подключив мой &lt;a href=&quot;http://fateyev.com/ru/blog/2011/yum_repository_announce&quot; class=&quot;wikilink1&quot; title=&quot;blog:2011:yum_repository_announce&quot;&gt;yum-репозиторий&lt;/a&gt;, или вручную скачать и поставить собранный пакет &lt;a href=&quot;http://fateyev.com/RPMS/RHEL5/&quot; class=&quot;urlextern&quot; title=&quot;http://fateyev.com/RPMS/RHEL5/&quot;  rel=&quot;nofollow&quot;&gt;отсюда&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
После установки модулей перезагрузки не требуется, можно сразу проверять работоспособность установленных компонентов. Мы подключили жесткий диск с помощью переходника &lt;em&gt;Sata2USB&lt;/em&gt; и под-mount-или разделы, указав тип файловой системы &lt;em&gt;ntfs-3g&lt;/em&gt;.
&lt;/p&gt;

&lt;p&gt;
Содержимое диска отображается нормально, имена файлов и папок в правильной кодировке. Чтение и запись на разделы идет без проблем.
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/centos?do=showtag&amp;amp;tag=centos&quot; class=&quot;wikilink1&quot; title=&quot;tag:centos&quot; rel=&quot;tag&quot;&gt;centos&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/ntfs_3g_el5_rpms#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>linux</category>
        <category>centos</category>
            <pubDate>Wed, 10 Jul 2013 15:54:00 +0000</pubDate>
        </item>
        <item>
            <title>RPM-пакеты openssh-server-jail</title>
            <link>http://fateyev.com/ru/unix/2009/openssh-server-jail_el5_rpms</link>
            <description>
&lt;div class=&quot;level1&quot;&gt;

&lt;p&gt;
Чтобы узнать, для чего нужен этот пакет – смотрите &lt;a href=&quot;http://fateyev.com/ru/blog/2009/ogranichivaem_polzovatelja_v_openssh&quot; class=&quot;wikilink1&quot; title=&quot;blog:2009:ogranichivaem_polzovatelja_v_openssh&quot;&gt;запись&lt;/a&gt; в моем блоге. 
&lt;br/&gt;
Краткое руководство по его использованию находится &lt;a href=&quot;http://fateyev.com/ru/unix/2009/ispolzovanie_openssh-server-jail&quot; class=&quot;wikilink1&quot; title=&quot;unix:2009:ispolzovanie_openssh-server-jail&quot;&gt;здесь&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
Основные отличия данной сборки от официальной версии:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;em&gt;Оставлены лишь компоненты сервера и необходимые для него утилиты;&lt;/em&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
В связи с этим, имя пакета изменено на &lt;em&gt;openssh-server-jail&lt;/em&gt;. Клиентская часть пакета нам без надобности; примеры конфигурации, man-ы и документация &lt;em&gt;openssh-5.2&lt;/em&gt; также не включены в пакет.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;em&gt;Изменены пути к исполняемым и конфигурационным файлам пакета;&lt;/em&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Пакет устанавливается в отдельный каталог и не влияет на компоненты &lt;em&gt;openssh&lt;/em&gt;. Вкупе со сменой имени пакета, это позволяет «развести по углам» две версии программы и избежать коллизий с имеющими в системе пакетами на уровне RPM-менеджера. Вы можете одновременно использовать &lt;em&gt;openssh&lt;/em&gt; и &lt;em&gt;openssh-server-jail&lt;/em&gt; или только один из них, при этом изменение конфигурации или удаление одного из них не окажет влияния на другой.
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;em&gt;Не требуется вносить изменения в конфигурацию системы;&lt;/em&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Основная причина, почему я отказался от использования стандартных механизмов &lt;em&gt;chroot&lt;/em&gt;-a в &lt;em&gt;openssh&lt;/em&gt; – это необходимость правки пользовательских параметров в &lt;em&gt; /etc/passwd&lt;/em&gt; (добавлять последовательность &amp;#039;/./&amp;#039; в путь к домашнему каталогу пользователя; для &lt;em&gt;openssh&lt;/em&gt; это служит признаком того, что пользователя нужно «запереть» в каталоге). В дополнение к этому, владельцем домашнего каталога пользователя нужно делать пользователя &lt;em&gt;&amp;#039;root&amp;#039;&lt;/em&gt;. Все эти манипуляции вызывают проблемы с правами, если пользователь будет входить в систему локально; не говоря уж о том, что некоторые программы некорректно воспринимают путь вида &lt;em&gt;&amp;#039;/home/user/./&amp;#039;&lt;/em&gt;. В случае же использования патча &lt;a href=&quot;http://antitese.org/sshjail/&quot; class=&quot;urlextern&quot; title=&quot;http://antitese.org/sshjail/&quot;  rel=&quot;nofollow&quot;&gt;sshjail&lt;/a&gt;, параметры &lt;em&gt;chroot&lt;/em&gt; хранятся не в системе, а в отдельном конфигурационном файле (&lt;em&gt;sshjail.conf&lt;/em&gt;). 
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;em&gt;Изменен номер tcp-порта службы;&lt;/em&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Во избежание конфликтов с потенциально работающим &lt;em&gt;sshd&lt;/em&gt;, демон &lt;em&gt;sshd-jail&lt;/em&gt; из пакета &lt;em&gt;openssh-server-jail&lt;/em&gt; по умолчанию слушает tcp-порт 2200 (номер порта можно изменить в конфигурационном файле).
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; &lt;em&gt;Автоматизация создания chroot-окружения;&lt;/em&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
Найденный в Сети скрипт для организации пользовательского chroot-окружения был мной подкорректировал в соответствии с нашими нуждами, и включен в пакет (после установки пакета, доступен как &lt;em&gt;/usr/openssh-jail/sbin/makejail&lt;/em&gt;).
&lt;/p&gt;

&lt;p&gt;
Ко всему прочему, были еще сделаны некоторые мелкие изменения, в том числе в коде патча &lt;a href=&quot;http://antitese.org/sshjail/&quot; class=&quot;urlextern&quot; title=&quot;http://antitese.org/sshjail/&quot;  rel=&quot;nofollow&quot;&gt;sshjail&lt;/a&gt; и дефолтных параметрах конфигурационного файла.
&lt;/p&gt;

&lt;p&gt;
Как всегда, скачать пакеты можно &lt;a href=&quot;http://fateyev.com/RPMS/RHEL5/&quot; class=&quot;urlextern&quot; title=&quot;http://fateyev.com/RPMS/RHEL5/&quot;  rel=&quot;nofollow&quot;&gt;здесь&lt;/a&gt;.
&lt;/p&gt;
&lt;div class=&quot;tags&quot;&gt;&lt;span&gt;
	&lt;a href=&quot;http://fateyev.com/ru/tag/linux?do=showtag&amp;amp;tag=linux&quot; class=&quot;wikilink1&quot; title=&quot;tag:linux&quot; rel=&quot;tag&quot;&gt;linux&lt;/a&gt;,
	&lt;a href=&quot;http://fateyev.com/ru/tag/centos?do=showtag&amp;amp;tag=centos&quot; class=&quot;wikilink1&quot; title=&quot;tag:centos&quot; rel=&quot;tag&quot;&gt;centos&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;

&lt;/div&gt;
&lt;span class=&quot;plugin_feedmod_comments&quot;&gt;
  &lt;a href=&quot;http://fateyev.com/ru/unix/2009/openssh-server-jail_el5_rpms#discussion__section&quot; title=&quot;Read or add comments to this article&quot;&gt;Read or add comments to this article&lt;/a&gt;
&lt;/span&gt;
</description>
        <category>linux</category>
        <category>centos</category>
            <pubDate>Fri, 27 Aug 2010 08:42:00 +0000</pubDate>
        </item>
    </channel>
</rss>
