Записи по установке и настройке шлюза. Элементарные вещи не указываю, которые по умолчанию, остановлюсь, только на тех вещах, которые нужно поменять или настроить.
Скачиваем, записываем, вставляем дистрибутив, дальше стандартная установка, много где описана с картинками, останавливаться не буду. На первом этапе выбираем кодировку (Russian KOI-8 R) и присваиваем имя шлюзу.
Так как у нас несколько филиалов, то присваиваю имя gw[name].<city>.local
где city — месторасположение, например город или город и улица и т.д. на ваше усмотрение.
Далее выбираем нужные компоненты, рекомендую кроме основных doc, ports, src.
Задаем пароль для root. Настраиваем сетевой интерфейс. В моем случае fxp0. Отказываемся от DHCP присваиваем статический адрес, например 192.168.141.254, маску 255.255.255.0 и шлюз 192.168.141.254. Пока для настройки, потом шлюз поменям поставим, которые уже будут нужны. Все элементарно меняется через файл /etc/rc.conf
IPv6 не настраиваем, отказываемся. Настраиваем DNS сервера.
Заводим пользователя user, назначаем ему группу wheel, для того, чтобы потом можно было зайти через ssh и через su заходить на сервер.
В принципе, пока все перезагружаемся и смотрим на свежеустановленную FreeBSD 11.0 :-)
Дальше обновляем порты:
# portsnap fetch extract # cd /usr/ports/ports-mgmt/portmaster && make install clean
Для того, чтобы сервер NTP запускался при загрузке, добавьте строку ntpd_enable="YES"
в файл /etc/rc.conf
.
#service ntpd start
через некоторое время
# sockstat | grep 123 root ntpd 2145 20 udp6 *:123 *:* root ntpd 2145 21 udp4 *:123 *:* root ntpd 2145 22 udp4 192.168.141.254:123 *:* root ntpd 2145 23 udp6 ::1:123 *:* root ntpd 2145 24 udp6 fe80::1%lo0:123 *:* root ntpd 2145 25 udp4 127.0.0.1:123 *:* # ntpdate -q 192.168.141.254 server 192.168.141.254, stratum 2, offset 0.000003, delay 0.02568 9 Nov 22:21:33 ntpdate[54330]: adjust time server 192.168.141.254 offset 0.000003 se
Все заработало!
portmaster /usr/ports/security/openvpn portmaster /usr/ports/net-mgmt/iftop portmaster /usr/ports/sysutils/webmin portmaster /usr/ports/www/squid ee /etc/sysctl.conf net.inet.ip.fw.one_pass=0 #posle obrabotki kanala paket povtorno vvoditsya po sl net.inet.ip.fw.verbose_limit=5 #vkluchet podrobnyie soobsheniya На всякий решил из портов поставить bind и dhcpd, передумал решил поюзать Unbound
# portmaster /usr/ports/dns/bind99 rndc-confgen -a
portmaster /usr/ports/net/isc-dhcp43-server/
Unbound Сайт проекта https://www.unbound.net/
Настройка Unbound http://muff.kiev.ua/content/unbound-nastroika-keshiruyushchego-dns-servera
Сюда /etc/rc.conf добавляем
:
local_unbound_enable="YES"
drill -S FreeBSD.org @192.168.141.254
Запускаем первый раз
service local_unbound onestart
Это будет заботиться о обновлении ,
/etc/resolv.conf
так что запросы для DNSSEC защищенных доменов теперь будут работать.
Например, выполните следующие действия для проверки достоверности FreeBSD.org DNSSEC доверия дерево:
%
drill -S FreeBSD.org
;; Number of trusted keys: 1 ;; Chasing: freebsd.org. A DNSSEC Trust tree: freebsd.org. (A) |---freebsd.org. (DNSKEY keytag: 36786 alg: 8 flags: 256) |---freebsd.org. (DNSKEY keytag: 32659 alg: 8 flags: 257) |---freebsd.org. (DS keytag: 32659 digest type: 2) |---org. (DNSKEY keytag: 49587 alg: 7 flags: 256) |---org. (DNSKEY keytag: 9795 alg: 7 flags: 257) |---org. (DNSKEY keytag: 21366 alg: 7 flags: 257) |---org. (DS keytag: 21366 digest type: 1) | |---. (DNSKEY keytag: 40926 alg: 8 flags: 256) | |---. (DNSKEY keytag: 19036 alg: 8 flags: 257) |---org. (DS keytag: 21366 digest type: 2) |---. (DNSKEY keytag: 40926 alg: 8 flags: 256) |---. (DNSKEY keytag: 19036 alg: 8 flags: 257) ;; Chase successful
28.7.2. DNS Server Configuration in FreeBSD 10.0 and Later
https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-dns.html
DNS сервер BIND, который шел по-умолчанию в FreeBSD c 10-й версии заменили на кеширующий DNS сервер Unbound.
Как правило, на сервере не нужно создавать свои зоны DNS и быстрого кэширующего сервера вполне достаточно, даже лучше (меньше и проще настройки).
Достоинства Unbound?
- Unbound распространяется под лицензией BSD, имеет модульную структуру и поддерживает работу резолвера в рекурсивном и кэширующем режиме.
- Во время работы сервера, кэш целиком располагается в памяти.
- Есть возможность проверки валидности DNSSEC-сигнатур, асинхронных запросов и библиотеки для интеграции кода резолвера.
- Прототип сервера был написан на Java, одна для увеличения производительности был переписан на Си.
- Отличие от BIND — маленький размер и большая скорость работы.
Настраиваем кеширующий DNS сервер Unbound на FreeBSD
Редактируем файл конфигурации unbound.conf
ee /var/unbound/unbound.conf server: # Уровень логирования - 0 (только ошибки) verbosity: 0 # Порт, на котором слушаем запросы port: 53 # Описываем интерфейсы, на которых будем слушать запросы interface: 127.0.0.1 # Указываем исходящий интерфейс outgoing-interface: X.X.X.X # Указываем сети, чьи запросы будем обрабатывать #access-control: 10.0.0.0/21 allow # разрешаем ip4 tcp/udp и запрещаем поддержку ipv6 do-ip4: yes do-ip6: no do-udp: yes do-tcp: yes # От чьего имени работает daemon unbound username: unbound # Указываем лог-файл и отключаем использование syslog logfile: "unbound.log" use-syslog: no # Указываем путь к pid-файлу pidfile: "/var/run/local_unbound.pid" # "Прячем" версию софта hide-version: yes |
Добавляем строки в rc.conf с указанием запускать Unbound и стартуем его первый раз в ручном режиме командой.
echo '# DNS server' >> /etc/rc.conf ; echo 'local_unbound_enable="YES"' >> /etc/rc.conf ; /etc/rc.d/local_unbound start |
Проверяем работоспособность DNS, кстати nslookup уже тоже нет по-умолчанию, вместо него привыкаем использовать drill
drill @127.0.0.1 google.com |
Если дрилл ответил нам без ошибок, все в порядке, DNS настроен и работает.
P.S. рестарт unbound
/etc/rc.d/local_unbound restart
или мягкий reload
ps интересные находки:
ARPWatch — следим за новыми устройствами в сети http://muff.kiev.ua/content/arpwatch-sledim-za-novymi-ustroistvami-v-seti
Arping — проверяем доступность хоста по MAC-адресам
Slurm — просмотр нагрузки на сетевых интерфейсах в режиме реального времени http://muff.kiev.ua/content/slurm-prosmotr-nagruzki-na-setevykh-interfeisakh-v-rezhime-realnogo-vremeni
3proxy — быстрый прокси за несколько минут http://muff.kiev.ua/content/3proxy-bystryi-proksi-za-neskolko-minut