Quagga - превращение сервера в полнофункциональный маршрутизатор

Немного общей информации для начала... Quagga — пакет программного обеспечения, позволяющий превратить обычный компьютер в маршрутизатор TCP/IP с поддержкой разнообразных протоколов маршрутизации. Поддерживаются следующие протоколы маршрутизации:

На данный момент возникла необходимость в статической маршрутизации. Соответственно опишем установку и начальную настройку демона zebra.

Устанавливаем quagga  из портов:

Cacti - снимаем статистику устройств по SNMP

Cacti
 
Необходимо снимать статистику с разных девайсов и представлять ее в наглядном виде? Тогда однозначно необходимо познакомиться с таким инструментом, как cacti. Позволяет с помощью протокола SNMP снимать статистику с устройств и потом, используя RRD-tool делать наглядные графики, будь то использование дискового пространства на файл-сервере, или загрузка интерфейсов комутатора.

cacti можно найти в портах. Что ж, это радует... Раньше cacti располагался в /usr/ports/net, но потом проект был перемещен в  /usr/ports/net-mgmt.

Sshit - защищаем сервер от перебора паролей

 Просматривая логи, опять обнаружил как кто-то битый час подбирал пароль доступа по ssh.

# tail -f /var/log/auth.log

Bind 9 - настройка DNS-сервера

По умолчанию во FreeBSD используется одна из версий программы BIND (Berkeley Internet Name Domain), являющейся самой распространенной реализацией протокола DNS.

FreeBSD в настоящее время поставляется с сервером DNS BIND9, предоставляющим расширенные настройки безопасности, новую схему расположения файлов конфигурации и автоматические настройки для chroot. chroot-каталогом является /var/named, соответственно в конфигурационных файлах все пути будут относительно этого каталога. Исходя из вышесказаного:

Gmirror - програмный RAID 1

Иногда нужно повысить надежность хранения данных. В этом случае возможно воспользоваться RAID1, то есть полным зеркалирование информации на другой жесткий диск. Рассказывать о типах RAID не вижу смысла, скорее всего вы уже владеете необходимой информацией. Если нет, то ознакомиться с типами RAID можно, например, здесь.

Итак решено. Будем строить програмный RAID1 с помощью gmirror. Разоряться на дорогие рейд-контроллеры не будем, а потратим немножко аппаратных ресурсов сервера для повышения отказоустойчивости ;)

Есть сервер с двумя хардами, которые определились как ad4 и ad6.

Ntp - точно идут системные часики? Еще одна причина спать спокойней...

Если вы думаете, что точность системных часов ни на что не влияет, то вы ошибаетесь. Неоднократно сталкивался, когда программы отказывались корректно работать, если часики на сервере немножко спешили или отставали. Поэтому взял за привычку в каждой сети настраивать сервер времени, а остальные машины настраивать на синхронизацию с ним.
Довольно хорошо протокол NTP описан здесь, поэтому отвлекаться на описание протокола не будем, а приступим сразу к настройке NTP-сервера.
В поставке FreeBSD уже идет ntp-демон, поэтому из портов ничего устанавливать не нужно, необходимо только сконфигурировать демон ntpd на синхронизацию с серверами точного времени.
Создадим конфигурационный файл демона ntpd - ntp.conf:
 

OpenVPN - построение тунеля

OpenVPN

Для начала немного общей информации.

OpenVPN – надежное и гибкое решение для VPN, позволяющее большинству платформам семейства Unix/Linux, Windows 2000/XP, и Mac OSX безопасно устанавливать зашифрованные каналы связи между собой.
OpenVPN — свободная реализация технологии Виртуальной Частной Сети (VPN) с открытым исходным кодом для создания зашифрованных каналов типа точка-точка или сервер-клиенты между компьютерами. Она позволяет устанавливать соединения между компьютерами находящимися за NAT-firewall без необходимости изменения его настроек. OpenVPN была создана Джеймсом Йонан (James Yonan) и распространяется под лицензией GNU GPL.

CMS Drupal - настройка системы управления сайтом

Drupal

Есть много известных CMS. Drupal среди них занимает не последнее место. Собственно говоря, этот блог тоже работает на движке Drupal...

Итак, будем отталкиваться от того, что Apache, PHP, MySQL уже установлены и корректно работают.

Для начала создадим БД и пользователя MySQL для Drupal. Сделать это можно как из панели phpMyAdmin, так и из командной строки MySQL. Воспользуемся вторым методом ;)

PhpMyAdmin - управлять MySQL-сервером стало проще

phpMyAdmin

Для тех, кто не очень дружен с командной строкой MySQL, обязательно нужно познакомиться с phpMyAdmin. Так как phpMyAdmin позволяет во многих случаях обойтись без непосредственного ввода команд SQL, то работа с базами данных становится вполне посильной задачей даже для человека, весьма поверхностно знакомого с MySQL.
Приступаем к установке:

MySQL - установка и базовая настройка

MySQL

Пора заняться установкой MySQL-сервера, поскольку много чего будем хранить именно в этой базе данных.

Список необходимых опций сборки добавим в /etc/make.conf:

# Путь к коллекции портов
PORTSDIR?= /usr/ports
# Версия MySQL сервера
DEFAULT_MYSQL_VER=55

# Oпции для сборки клиента
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql55-client

# Кодировка клиента по умолчанию.
WITH_CHARSET=cp1251

# Коллэйшн или сравнение.
WITH_COLLATION=cp1251_bin

RSS-материал

Вставай, Україно!

Литература