Май 12 2010

BGP. Просмотр принятых и переданных анонсов.

Когда строишь bgp сессию с кем либо, сам собой возникает вопрос, что мы анонсируем. Проверить можно командой:

show ip bgp neighbors 89.252.34.107 advertised-routes

В результате появятся все префиксы которые мы анонсируем нейджбору 89.252.34.107

Ну а соответственно посмотреть, что за префиксы мы приняли от 89.252.34.107 можно с помощью команды:

show ip bgp neighbors 89.252.34.107 received-routes
Май 07 2010

Backup с записью на ftp.

Хостинговые компании предлагают выделенные сервера, на которых бы владельцы серверов стоящих в датацентре могли бы хранить резервные копии(backupы) своих данных. Доступ к таким серверам возможен только по протоколу ftp.
Брать за основу практику, когда человек вручную выливает информацию на ftp не стоит. Даже рассматривать не стоит. Поэтому нужно писать скрипт. В качестве ftp клиента я использую lftp(/usr/ports/ftp/lftp/). А сам скрипт выглядит так:

#!/bin/sh
TO="/var/backup"
DATE=`/bin/date  +%d%m%y`
FTPU='hilik'
FTPP='hilik-123'
FTPS='backup.com'
/usr/bin/tar -jcf $TO/var-www-$DATE.tar.bz2 /var/www
/usr/local/bin/lftp -u $FTPU,$FTPP $FTPS -e "mput $TO/var-www-$DATE.tar.bz2;quit"
/bin/rm $TO/var-www-$DATE.tar.bz2

Скрипт простой, у меня работает нормально.

Май 02 2010

Настройка ng_netflow.

Не так давно я писал о том, как настраивал ipcad. ng_netflow — более экономное решение для решения этой задачи.
Стартовый скрипт у меня выглядит так:

kldload netgraph.ko
kldload ng_ether.ko
kldload ng_tee.ko
ngctl -f - << SEQ
    mkpeer em0: tee lower left
    name em0:lower tee
    connect tee: em0: right upper
 
    mkpeer tee: netflow left2right iface0
    name tee:left2right netflow
    connect tee: netflow: right2left iface1
 
    mkpeer netflow: ksocket export inet/dgram/udp
    name netflow:export ksocket
    msg ksocket: connect inet/89.252.34.107:3434
SEQ

Вместо em0 нужно вписать имя вашего интерфейса с которого вы хотите снимать данные. Интерфейс может быть и сетевой картой и vlanом. Вместо 89.252.34.107:3434 указывайте адрес и порт вашего коллектора netflow.

Апр 30 2010

webmin. Установка из портов.

Webmin — веб панель управления сервером. Webmin позволяет решать большую часть задачь по управлению сервером через панель управления. Большим достоинством, по сравнению с другими панелями, является то, что webmin, в своей работе старается следовать идеологии дистрибутива, а не навязывать свою систему расположения файлов и стартовых скриптов. Впрочем, в то же время это в некоторой степени ограничивает функционал вебмин. Следующее достоинство, webmin абсолютно бесплатен, ставится легко и не требует больших знаний системы, как для установки, так и для дальнейшего обслуживания.
На сегодня я не слышал о проблемах с безопасностью при работе с webmin, хотя ранее подобные инцеденты случались.
Ставим webmin из портов:

cd /usr/ports/sysutils/webmin
make install clean

Читать далее »

Апр 26 2010

MRTG. График Nginx.

У nginx есть модуль, который генерирует статистику соендинений. Сколько в данный момент ожидает, сколько находится в активном сотоянии(передает ответы или принимает запросы).
Настройки nginx для этого модуля выглядят так:

        location /nginx_status {
                stub_status on;
                access_log   off;
                allow   89.252.34.107;
                deny    all;
 
                }

В опцию allow внесите адрес сервера на котором стоит MRTG.
Теперь о том, как будем собирать данные. Достаточно удобно собирать с помощью команды GET. Эта команда входит в порт /usr/ports/www/p5-libwww/, если он у вас не стоит, поставте его и тогда данные собираются таким скриптом:

#!/usr/bin/perl
$OUT=`/usr/local/bin/GET http://hilik.org.ua/nginx_status|/usr/bin/grep Reading`;
@PARSE=split(" ",$OUT);
$Active=$PARSE[1]+$PARSE[3];
print "$Active\n";
print "$PARSE[5]\n";
print "0\n";
print "0\n";

Вместо http://www.hilik.org.ua/nginx_status — укажите адрес своего сервера.
Читать далее »

Апр 23 2010

FreeBSD. Маршрутизатор на флешке.

Жесткие диски — самое больное место современных серверов, не зря большинство аппаратных маршрутизаторов используют в качестве накопителей флешки. Флеш диск имеет меньше ресурсов перезаписи, но он не имеет движущихся частей, поэтому логичным является перенос роутера на флешку, запись нужной конфигурации и перевод диска в состояние read-only. Кроме всего прочего, я держу флешки в зеркале, с помощью gmirror и выход из строя одного диска, не приводит к прерыванию сервиса.
В принципе для установки достаточно флешки на 512 Мб, но большого смысла в такой экономии нет, можно конечно ставить CardRider и использовать SD карты, но у меня эта технология не прижилась. Использую обычные USB карты, монтирую их в сервере вместо дисков, используя внешние USB порты со старых системных блоков. Получается достаточно удобно, открываешь отсек меняешь флешку и все, продолжается работа.
Читать далее »

Апр 21 2010

MRTG. Мониторим очередь postfix.

Помимо параметров предоставляемых по SNMP существует еще масса параметров, которые нужно наблюдать в динамике. Первый из них — это мониторинг почтовой очереди.
Сделать это можно с помощью скриптов, вызываемых напрямую из MRTG.
Скрипт для мониторинга очереди Postfix из MRTG выглядят так:

#!/bin/sh
DATA=`/usr/bin/mailq  | /usr/bin/grep Request| /usr/bin/awk '{ print $5 }'`
echo $DATA
echo 0
echo 0
echo 0

В самом конфиге MRTG выглядит так:

Title[mailq]: Mail Queue (MB)
PageTop[mailq]: <H1>Mail Queue</H1>
Options[mailq]: nobanner,gauge,noinfo,nopercent,growright
Target[mailq]: `/root/bin/mailq.sh`
kMG[mailq]:
MaxBytes[mailq]: 10
AbsMax[mailq]: 2048
YLegend[mailq]: Mails in queue
Unscaled[mailq]: ymwd
LegendI[mailq]:
LegendO[mailq]:
Suppress[mailq]: y
Апр 20 2010

Первичная настройка OpenBGPd.

В портах FreeBSD есть openbgp — продукт из проекта OpenBSD для поддержки протокола динамической маршрутизации BGP. Проэкт OpenBSD славится отсутствием проблем с безопасностью и одним из методов достижения этого является реализация всего необходимого по возможности своими силами. То есть они стараются минимизировать наличие продуктов от сторонних разработчиков в своей системе.
Ну а как по мне, то просто интересно посмотреть на продукт отличный от Quagga. Для этого я сделал небольшую тестовую лабораторию из двух хостов. На одном будет стоять Quagga, на втором хосте поставим OpenBGPd. Задача обменяться анонсами.
Конфиг Quagga выглядит так:
Читать далее »


Украинская Баннерная Сеть