Проверка хоста по DNSBL (DNSBL checker)

Для проверки своего IP по базам основных DNSBL серверов родился консольный скрипт.

Кому надо, забираем из SVN. Лицензия GPLv3.


Запуск:
/root/dnsbl-check/dnsbl-check.php <IP|domain> [[email protected]]

Принимается в качестве имени хоста или IP или FQDN.

EMail – не обязательный параметр, если указано, то результат работы будет отправлен на этот адрес.

Я использую раз в сутки по крону с отправкой на почту.

Идеи, предложения, пожелания оставляем в комментах.

 

Итоги года 2009 ++

Эстафету перенял у Hellveen.

Итак, впервые перенимаю эстафету по подведению итогов года, но думаю это будет полезно для моих читателей, которые хотят меня узнать получше.

  • Достижение года: достижение личных целей, личностного и карьерного роста.
  • Событие года: ICT-2009
  • Настроение года: давайте чего-нить замутим новое на работе
  • Встреча года: Тигра и Эмиль (два уникальных музыканта)
  • Геморрой года: IPTV-сервер
  • Страна года: Украина
  • Город года: Донецк (люблю я его)
  • Слово года: “In LAN”
  • Путешествие года: Крым
  • Веб-сервис года: Twitter
  • Цвет года: синий
  • Запах года: Givenchy pour Homme
  • Новость года: я стал совладельцем локальной сети “In LAN”
  • Ржач года: “The IT Crowd”
  • Книга года: Крис Андерсон “Длинный хвост”
  • Фильм года: “2012”
  • Группа года: ZETTA
  • Песня года: Между финишем и стартом
  • Ужас года: снегопад
  • Кафе года: Малиновка
  • Напиток года: “Губерния Эталон”
  • Еда года: Бифштекс с кровью
  • Любовь года: есть такая 😉
  • Транспорт года: такси
  • Бренд года: Google
  • Античеловек года: политик
  • Покупка года: пачка серверов
  • Мечта на следующий год: стать управляющим компанией и наконец найти помощника на целый день. Съездить куда-нибудь отдохнуть и посетить пару-тройку городов Украины.

Выводы по году:

Довольно успешный год вышел для меня. Знакомство (хоть и виртуальное) с известными блоггерами Украины, реальное знакомство с очень интересными людьми, развитие своего блога, личностный и карьерный рост… Все это весьма и весьма толкает меня на дальнейший рост. :)

Из плохого: я пока холост, хотя это и не самое плохое :). Не законченный ремонт дома, не совсем то, чего хочется иметь на работе, но это все же это решаемые проблемы.

В целом же, год был успешным и плодотворным, на чем и закончим.

 

Apache2 + nginx = кеширование +

В предыдущей статье я описывал как настроить Squid фронтэндом для ускорения отдачи страничек сайта. В тот же день я все таки добился кеширования страниц сервером nginx и перевел свой сервер на связку Apache2 + nginx + кеширование средствами nginx.

Получилось весьма не плохо, что подтверждают тесты сервисом Load Impactи программой siege.

Итак, приступим.

Squid в качестве reverse-proxy (frontend для сервера) ++

Задался тут целью распределить нагрузку на сервере, а то как-то уж больно часто он стал ложиться и не выдерживать нагрузки. Выбор пал на nginx, как на самый распространенный сервер для фронтэнда. Но почему-то у меня не вышло настроить кеширование на нем. А без кеширования он мне не очень удобен. После этого я решил настроить Squid, что довольно не плохо вышло.

Итак, приступим:

1. Ставим сам Squid:

$sudo apt-get install squid

2. Настраиваем в squid.conf следующие параметры:

Указываем порт работы и порт бекэнда:

http_port 80 vhost vport
cache_peer 127.0.0.1 parent 8080 0 originserver default

Устанавливаем правила доступа:

acl valid_dst dstdomain .example.com
http_access allow valid_dst

Обязательно до deny all!!!

Модифицировать код конфига, чтоб он парсил внешний файл со списком доменов – будет домашним заданием. :) Ну а себе задание на дом – кеширование в nginx. Как разберусь, так напишу подробный пост на эту тему. :)

Обновление модуля карточек ABills

Сегодня выложил в SVN новую версию модуля карточек для биллинговой системы ABills.

Изменения:

[+] Добавлены картинки для генерации карт.
[+] Добавлена статистика по активированным картам.
[+] Добавлен номер карты на титульную сторону, для ее идентификации в учетных документах.
[*] Изменены шрифты в административном интерфейсе.
[*] Добавлены комментарии в код.

Живет он в том же SVN’е.

Модуль все так же бесплатен. Кто желает поучаствовать в разработке – милости прошу в джаббер или почту.

 

Второй тур голосования UAWebStar +

Вот и закончился первый тур голосования конкурса UAWebstar. Наш блог занял третье место в разделе “Тематический блог”.

Спасибо всем за поддержку. Но вчера началсявторой турголосования и вот тут нам как никогда нужна Ваша поддержка. По списку наш блог первый. Просим проголосовать за нас во втором туре.

Спасибо всем большое за выручку и доверие. :)

Убиваем “незаконные” DHCP сервера в сети ++

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

Итак, расскажу об установке под Ubuntu.

Первым делом ставим необходимое для сборки dhcdrop:

$ sudo apt-get install build-essential automake libtool libpcap-dev

Теперь скачиваем последние исходники из svn:

$ svn co https://svn.codenet.ru/netpatch/dhcdrop/trunk/ /tmp/dhcdrop

Запускаем сборку:

$ cd /tmp/dhcdrop
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install

Из официальной документации:

  • -h – показывает help-сообщение.
  • -D – просмотр списка имён и индексов сетевых интерфейсов. Актуально в ОС Windows – см. пример ниже.
  • -t – Режим теста. В этом режиме dhcdrop не выполняет подавление сервера. Производится лишь посылка DHCPDISCOVER, если на него приходит ответ нелегального сервера, то программа заверается возвращаяя код 200 и выводя на экран строку вида DHCP SRV: 10.7.7.1 (IP-hdr: 10.7.7.1) SRV ether: 00:02:44:75:77:E4, YIP: 10.7.7.205 содержащую минимум информации о создающем проблему DHCP сервере.
  • -y – подразумевается ответ “yes” на любой вопрос программы.
  • -r – отключает рандомизацию MAC адреса источника. Каждый последующий MAC адрес источника увеличивается на 1.
  • -b – указывает на необходимость использования флага BROADCAST в отправляемых DHCP пакетах.
  • -a – всегда ожидать ответа сервера на порт DHCP клиента по умолчанию (68), даже если задано значение номера порта клиента отличное от значения по умолчанию.
  • -A – всегда ожидать ответа с порта DHCP сервера по умолчанию (67), даже если задано значение номера порта сервера отличное от значения по умолчанию.
  • -f – режим флуда запросами DHCPDISCOVER. ПРИМЕНЯТЬ С ОСТОРОЖНОСТЬЮ. Удобен для стресс-тестирования сервера. В случае указания опции -r все отправляемые пакеты имеют одинаковый MAC адрес.
  • -R – отправляет сообщение DHCPRELEASE с MAC адресом источника указанном при запуске программы и IP адресом указанным при помощи опции -F к серверу указанному опцией -s.
  • -q – “тихий” режим работы. Выводится минимум информации.
  • -m count – максимальное число попыток получения ответа от сервера.
  • -c count – максимальное число адресов арендуемых у сервера.
  • -n hostname – значение DHCP опции HostName (по умолчанию – “DHCP-dropper”)
  • -N clientname – значение DHCP опции Vendor-Class (по умолчанию – “DHCP-dropper”)
  • -p port – порт используемый клиентом для отправки DHCP сообщений. По умолчанию – 68.
  • -P port – порт сервера, на который отправляются DHCP сообщения. По умолчанию – 67.
  • -w секунд – задаёт таймаут рестарта процесса получения IP адресов в случае использования агрессивного режима. По умолчанию – 60 секунд.
  • -T timeout – устанавливает таймаут ожидания ответа сервера (в секундах). По умолчанию – 3 секунды.
  • -M хостов-максимум – максимально допустимое количество сканируемых хостов в случае использования агрессивного режима.
  • -l MAC-address – Ethernet адрес сервера который необходимо игнориновать при выполненении поиска ложных DHCP серверов в сети. В этой опции следует указать адрес DHCP сервера ответственного за раздачу адресов в данном сегменте сети. Может быть указано несколько адресов – каждый должен предваряться ключом -l.
  • -L легальная-сеть – указывает легальную IP подсеть для выбранного интерфейса. Использование этой опции автоматически включает агрессивный режим получения IP адресов. Может быть указано несколько сетей – каждая должна предваряться ключом -L. Подробное описание смотрите ниже.
  • -S сеть/маска – ARP сканирование сети ‘сеть’ с использованием сетевой маски ‘маска’ в CIDR нотации. IP адрес источника задаётся опцией -F. Если IP адрес источника не задан – используется случайный адрес из диапазона указанной подсети. Пример использования смотрите ниже.
  • -F исходящий-IP-адрес – указывает IP адрес источника для сканирования сети (опция -S), либо IP адрес DHCP клиента для отправки сообщения DHCPRELEASE (опция -R).
  • -s IP-адрес-сервера – задаёт IP адрес DHCP сервера. Используется с опцией -R.
  • -C count – число порождаемых процессов-потомков. Совместим только с флагом -f. Используется для увеличения числа отправляемых пакетов за единицу времени. При значении этого параметра равном 30, 10000 пакетов генерировалось менее чем за 1,5 секунды.
  • -i interface – имя либо индекс сетевого интерфейса (см. ключ -D). Не может быть “any”! Единственный обязательный параметр программы.
  • initial MAC address – задаёт MAC адрес источника используемый при отправке первого DHCP сообщения, либо используемый постоянно, в случае использования опции ‘-f’ (flood) вместе с опцией ‘-r’. Если не указан, то используется случайный MAC адрес источника.

Простейший запуск:

$ sudo dhcdrop -i eth0

Найдет все DHCP-сервера и по порядку спросит чего с ними делать. Остальное можно прочитать на официальном сайте. Тем более, что он русский. :)

Звук в Ubuntu 9.10 Karmic Koala

После обновления домашней машины до 9.10 столкнулся с проблемой отсутствия звука в Ubuntu Karmic. Долго искал причины, но поборол только недавно. Вот и решил поделиться рецепом.

1. Бекапим и удаляем старые файлы конфигураций:

$ mkdir ~/pulse-backup && cp -r ~/.pulse ~/.asound* /etc/asound.conf /etc/pulse -t ~/pulse-backup/
$ rm -r ~/.pulse ~/.asound*
$ sudo rm /etc/asound.conf

2. Ставим необходимые пакеты:

$ sudo apt-get install libasound2-plugins padevchooser libsdl1.2debian-pulseaudio

3. Убиваем “libflashsupport”:
$ sudo apt-get remove --purge libflashsupport flashplugin-nonfree-extrasound
4. Запускаем микшер и уставливаем все “по умолчанию”:

$ pulseaudio & pavucontrol

5. Перегружаемся

Вот и все. После этого у меня звук заработал как надо.

Постовые: горящие туры египет, бойлеры, ноутбук недорого

Linux: Установка и запуск OpenVZ на Debian Lenny ++

Гостевой пост отhttps://sysadminpages.com

Имеем сервер с установленным Debian Lenny. Задача: настроить на серверe несколько VPS-ов.

  1. Устанавливаем ядро с поддержкой OpenVZ
    aptitude install linux-image-openvz-amd64
  2. Для нормальной работы OpenVZ-контейнеров необходимо чтобы /etc/sysctl.conf содержал следующие строки:
    net.ipv4.conf.all.rp_filter=1
    net.ipv4.icmp_echo_ignore_broadcasts=1
    net.ipv4.conf.default.forwarding=1
    net.ipv4.conf.default.proxy_arp = 0
    net.ipv4.ip_forward=1
    kernel.sysrq = 1
    net.ipv4.conf.default.send_redirects = 1
    net.ipv4.conf.all.send_redirects = 0
    net.ipv4.conf.eth0.proxy_arp=1
  3. Перезагружаем сервер
  4. Проверяем, что сервер загрузился с новым ядром
    uname -r
    если система выдаст 2.6.26-2-openvz-amd64, то всё установилось корректно
  5. Ядро, которое было установлено по-умолчанию мне не нужно и я его удаляю (если хотите оставить предыдущее ядро – шаг пропускаем)
    apt-get remove purge linux-image-2.6.26-2-amd64
  6. Для контейнеров OpenVZ у меня выделен отдельный раздел подмонтированный в /vz. По-умолчанию OpenVZ в Debian всё складывает в /var/lib/vz. Переношу всё с /var/lib/vz в /vz и созаздю симлинк
    /etc/init.d/vz stop ; mv /var/lib/vz/* /vz/ ; rmdir /var/lib/vz ; ln -s /vz /var/lib/vz ; /etc/init.d/vz start
  7. В контейнере у меня будет работать Debian Lenny х86. Загружаем шаблон контейнера с сайта OpenVZ
    cd /var/lib/vz/template/cache
    wget -c https://download.openvz.org/template/precreated/debian-5.0-x86.tar.gz
  8. Создаём контейнер
    vzctl create 101 ostemplate debian-5.0-x86 config vps.basic
    (101 – это уникальный идентификатор контейнера)
  9. Указываем чтобы контейнер запускался в вместе с OpenVZ
    vzctl set 101 onboot yes save
  10. Конфигурируем имя хоста, IP и dns-сервер для контейнера
    vzctl set 101 hostname vps1.local save
    vzctl set 101
    ipadd 10.1.1.101 save
    vzctl set 101
    nameserver 10.1.1.2 save
  11. Запускаем контейнер  и устанавливаем пароль для root-a
    vzctl start 101
    vzctl exec 101 passwd
  12. Переключаемся в контейнер
    vzctl enter 101
    Для выхода из контейнера необходимо дать команду exit. Зайти можно и по ssh.
  13. Устанавливаем необходимое ПО в контейнере.
  14. Успешно эксплуатируем.

P.S. Несколько необходимых команд для работы с контейнерами:

vzlist -a – список запущеных контейнеров и их состояние
vzctl stop <UID> – остановить контейнер
vzctl restart <UID> – перезагрузить контейнер
vzctl destroy <UID> – удалить контейнер

где <UID> – уникальный идентификатор OpenVZ-контейнера.

 

Вышел кандидат в релизы Ubuntu 9.10 ++

Вышел кандидат в релизы Ubuntu 9.10 (“Karmic Koala), доступный в редакциях для десктопов, серверов, cloud-окружений (Server for UEC and EC2) и нетбуков (Netbook Remix). Одновременно выпущены и кандидаты в релизы смежных проектов: Kubuntu, Xubuntu, Edubuntu, Ubuntu Studio и Mythbuntu, а также предварительный тестовый выпуск новой сборки – Kubuntu Netbook. Финальный выпуск Ubuntu 9.10 намечен на 29 октября.

Детальный список новшеств был опубликован ранее. Некоторые улучшения, подчеркнутые в анонсе кандидата в релизы:

Десктоп редакция: заметно уменьшено время загрузки и оформление, в дистрибутив интегрировано десктоп-окружение GNOME 2.28 (для Kubuntu – KDE 4.3, для Xubuntu – Xfce 4.6 ), вместо Pidgin для мгновенного обмена сообщениями теперь по умолчанию устанавливается Empathy, реализована единая система управления пакетами и обновлениями – Ubuntu Software Center;
Серверная редакция: значительно расширена поддержка AppArmor и облачных вычислений, созданы специальные установочные образы для окружений Ubuntu Enterprise Cloud (UEC) и Amazon’s EC2;
Ubuntu Netbook Remix: проведена дополнительная оптимизация для субноутбуков на базе CPU Intel Atom, изменен внешний вид интерфейса пользователя, увеличена скорость загрузки, расширены возможности индивидуальной переработки OEM-производителями.

Источник: OpenNet

 

Я пришел к тебе с дискетой - рассказать, что сеть упала
beget