Инструменты пользователя

Инструменты сайта


freebsd:network:ipsec_racoon

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
freebsd:network:ipsec_racoon [2020/06/13 21:30] andreifreebsd:network:ipsec_racoon [2020/11/08 22:37] (текущий) – [Запуск] andrei
Строка 5: Строка 5:
 ===== Введение ===== ===== Введение =====
  
-Есть три сервера c FreeBSD 12.1. Необходимо объединить приватные сети, которые расположены за этими сервера, следующим образом:+Есть три сервера c FreeBSD 12.1. Необходимо объединить приватные сети, которые расположены за этими серверами, следующим образом:
  
   - сервер **A** ( берлога админа): должен иметь доступ везде;   - сервер **A** ( берлога админа): должен иметь доступ везде;
Строка 13: Строка 13:
 Выглядит это будет примерно вот так: Выглядит это будет примерно вот так:
  
-{{ :freebsd:network:racon_shema.png |}}+{{ :freebsd:network:racoon_shema.png |}}
  
-Поскольку никаких сложный маршрутов у нас не будет, поэтому хочется обойтись без использования дополнительных интерфейсов. Как роутить траффик между локалками пропишем при помощи политик ipsec и racoon-а.+Поскольку никакой динамической маршрутизации у нас не будет, поэтому хочется обойтись без использования дополнительных интерфейсов. Как роутить трафик между сетями пропишем при помощи политик ipsec и racoon-а.
  
 ---- ----
Строка 37: Строка 37:
 racoon_flags="-l /var/log/racoon.log" racoon_flags="-l /var/log/racoon.log"
 </code> </code>
 +
 +==== ipsec ====
  
 Далее будем производить настройку сервера **A**. Два других сервера настраиваются по образу и подобию. ;-) Далее будем производить настройку сервера **A**. Два других сервера настраиваются по образу и подобию. ;-)
Строка 56: Строка 58:
 </code> </code>
  
-Далее настраиваем Racoon. Объясняем ему какой траффик надо шифровать.+==== racoon ==== 
 + 
 +Теперь надо настроить шифрование трафика.
 Файл /usr/local/etc/racoon/racoon.conf: Файл /usr/local/etc/racoon/racoon.conf:
 <code> <code>
Строка 152: Строка 156:
 C.C.C.C serverC_password C.C.C.C serverC_password
 </code> </code>
 +
 +==== firewall ====
  
 Последним шагом настройки будет редактирование firewall-а. Необходимо открыть на вход UDP port 500, и разрешить проход трафика по протоколу esp и ipencap от серверов **B** и **C**. Я использую **pf** поэтому в /etc/pf.conf я добавил следующее: Последним шагом настройки будет редактирование firewall-а. Необходимо открыть на вход UDP port 500, и разрешить проход трафика по протоколу esp и ipencap от серверов **B** и **C**. Я использую **pf** поэтому в /etc/pf.conf я добавил следующее:
Строка 164: Строка 170:
 pass out on $ext_if proto esp from A.A.A.A to <ipsec> keep state pass out on $ext_if proto esp from A.A.A.A to <ipsec> keep state
 pass out on $ext_if proto ipencap from A.A.A.A to <ipsec> keep state pass out on $ext_if proto ipencap from A.A.A.A to <ipsec> keep state
 +</code>
 +
 +Осталось только прописать правила прохождения трафика между приватными сетями. Вот небольшой пример конфига pf на сервере **B**:
 +<code>
 +# те кому можно ходить на сервер с 1C
 +table <1C> persist { 10.0.2.2, 10.0.2.3 }
 +
 +# разрешить админу ходить везде
 +pass from 10.0.1.2 to 10.0.2.0/24 keep state
 +# запретить всем ходить в другие приватные сети
 +block from 10.0.2.0/24 to { 10.0.1.0/24, 10.0.3.0/24 }
 +# доступ к удаленному серверу по RDP
 +pass inet proto tcp from <1C> to 10.0.3.2 port 3389 flags S/SA modulate state
 </code> </code>
  
 ===== Запуск ===== ===== Запуск =====
  
-После того как мы настроили все три сервера можно приступать к проверке как все это работает.+После того как мы настроили все три сервера можно приступать к проверке того, как все это работает.
  
 Запускаем racoon и ipsec: Запускаем racoon и ipsec:
Строка 182: Строка 201:
 # setkey -DP # setkey -DP
 # setkey -D # setkey -D
-</code> 
- 
-===== Последний штрих ===== 
- 
-Нам осталось только прописать в firewall правила хождения траффика между приватными сетями. Вот небольшой пример конфига pf на сервере **B**: 
-<code> 
-# те кому можно ходить на сервер с 1C 
-table <1C> persist { 10.0.2.2, 10.0.2.3 } 
- 
-# разрешить админу ходить везде 
-pass from 10.0.1.2 to 10.0.2.0/24 keep state 
-# запретить всем ходить в другие приватные сети 
-block from 10.0.2.0/24 to { 10.0.1.0/24, 10.0.3.0/24 } 
-# доступ к удаленному серверу по RDP 
-pass inet proto tcp from <1C> to 10.0.3.2 port 3389 flags S/SA modulate state 
 </code> </code>
  
freebsd/network/ipsec_racoon.1592083815.txt.gz · Последнее изменение: andrei