Как правильно использовать диапазон портов в –sport и –dport в iptables с использованием multiport

Ситуация: нужно закрыть UDP-порты в трёх диапазонах: 1…52, 54…122, 124…1024. При этом если стук в порт идёт из привилегированного порта (то есть с номером 0…1023), то соединение нужно просто сбрасывать, если же стук идёт с непривилегированного порта, то расценивать это как сканирование и выполнять какие-то действия.

Например, обращение к порту 137 по протоколу UPD может быть как атакой какого-нибудь червя, так и безобидным запросом от NetBIOS. И если запросы, исходящие от NetBIOS, вполне безобидны («рабочий» трафик), то сканирование портов обычно не так безобидно. Далее »

Автор: Wandering Soul, опубликовано в: Linux, комментариев: нет
31
Авг
2010

Борьба с ботами-взломщиками средствами rsyslogd

В предыдущих частях статей цикла «Скажи «Нет!» взломщику» со взломщиками мы боролись при помощи связки swatch + iptables: swatch проводил анализ системного журнала сообщений, iptables использовался для блокировки непрошеных гостей.

Тем не менее, используя swatch на нескольких серверах, я не могу сказать, что я полностью им доволен: слишком уж он хрупок. Завершение дочернего tail приводит к тихой гибели самого swatch, в системе могут оставаться зомби и т.п.

Одна из альтернатив — использование . Далее »

Автор: Vladimir, опубликовано в: Администрирование, Безопасность, комментариев: 5
21
Апр
2010

xCache 1.3.0 для PHP 5.2.x для Debian/Ubuntu Linux

Всем, кто хочет обновить xCache до последней версии, но не знает, как это сделать (либо не хочет собирать из исходников). Далее »

Автор: Vladimir, опубликовано в: Linux, PHP, Администрирование, комментариев: 7
26
Март
2010

Сбой OpenJDK при использовании Eclipse в Ubuntu Lucid Lynx

Симптом: молча погибает при редактировании файла, в /var/log/kern.log появляется подобное сообщение об ошибке:

[-]
View Code Text
Mar  9 09:11:44 sjinks kernel: [350411.627132] java[19570] trap int3 ip:7ff3fbd74302 sp:7ff42741b030 error:0

Ключевые слова: java trap int3. Если они есть в логе, с большой вероятностью вы читаете про ту самую ошибку :-) Далее »

Автор: Vladimir, опубликовано в: Linux, комментариев: 5
9
Март
2010

cpio: ./lib/udev/firmware.sh: не удаётся stat: Нет такого файла или каталога

Если вы — счастливый обладатель тестовой версии 10.04 (Lucid Lynx), и после обновления udev система выдаёт такую ошибку:

[-]
View Code Text
Обрабатываются триггеры для initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-2.6.32-12-server
cpio: ./lib/udev/firmware.sh: не удаётся stat: Нет такого файла или каталога
update-initramfs: failed for /boot/initrd.img-2.6.32-12-server              
dpkg: подпроцесс установлен сценарий post-installation возвратил код ошибки 1
E: Sub-process /usr/bin/dpkg returned an error code (2)                      
Не удалось установить пакет.  Попытка восстановить:                          
Настраивается пакет initramfs-tools (0.92bubuntu64) ...                      
update-initramfs: deferring update (trigger activated)                      

Обрабатываются триггеры для initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-2.6.32-12-server
cpio: ./lib/udev/firmware.sh: не удаётся stat: Нет такого файла или каталога
update-initramfs: failed for /boot/initrd.img-2.6.32-12-server              
dpkg: подпроцесс установлен сценарий post-installation возвратил код ошибки 1
E: dpkg был прерван, Вы должны вручную выполнить 'sudo dpkg --configure -a' чтобы исправить эту проблему.
E: Не удалось получить системную блокировку! (Возможно, запущен другой экземпляр apt или dpkg?)          
E: dpkg был прерван, Вы должны вручную выполнить 'sudo dpkg --configure -a' чтобы исправить эту проблему.

Выполнение sudo dpkg --configure -a ни к чему хорошему не приводит:

[-]
View Code Text
Настраивается пакет initramfs-tools (0.92bubuntu64) ...
update-initramfs: deferring update (trigger activated)

Обрабатываются триггеры для initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-2.6.32-12-server
cpio: ./lib/udev/firmware.sh: не удаётся stat: Нет такого файла или каталога
update-initramfs: failed for /boot/initrd.img-2.6.32-12-server
dpkg: подпроцесс установлен сценарий post-installation возвратил код ошибки 1

либо

[-]
View Code Text
Setting up initramfs-tools (0.92bubuntu64) ...
update-initramfs: deferring update (trigger activated)

Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-2.6.32-12-server
cpio: ./lib/udev/firmware.sh: Cannot stat: No such file or directory
update-initramfs: failed for /boot/initrd.img-2.6.32-12-server
dpkg: subprocess installed post-installation script returned error exit status 1

Если всё так, то вы попали по адресу. К счастью, проблема исправляется просто. Но до тех пор, пока её не исправить, обновить систему будет весьма и весьма проблематично.

Для решения проблемы нужно исправить файл /usr/share/initramfs-tools/hooks/udev:

[-]
View Code Bash
sudo nano /usr/share/initramfs-tools/hooks/udev

Нужно найти строку

[-]
View Code Text
copy_exec /lib/udev/firmware.sh /lib/udev

и исправить её на

[-]
View Code Text
copy_exec /lib/udev/firmware /lib/udev

После чего нужно сохранить файл и выполнить

[-]
View Code Bash
sudo dpkg --configure -a

Для любителей патчей: патч для /usr/share/initramfs-tools/hooks/udev:

[-]
Download udev.patch
--- /usr/share/initramfs-tools/hooks/udev.orig   2010-02-10 14:03:18.000000000 +0200
+++ /usr/share/initramfs-tools/hooks/udev        2010-02-10 18:25:18.000000000 +0200
@@ -41,7 +41,7 @@
 mkdir -p ${DESTDIR}/lib/udev
 # 50-udev-default.rules
 # 50-firmware.rules
-copy_exec /lib/udev/firmware.sh /lib/udev
+copy_exec /lib/udev/firmware /lib/udev
 # 60-persistent-storage.rules
 copy_exec /lib/udev/ata_id /lib/udev
 copy_exec /lib/udev/usb_id /lib/udev

PS — а дистростроителям, ленящимся протестировать обновление, прежде чем пихать его в репозиторий, оторвал бы все выступающие части тела :-)

UPDATE: ссылка на официальный баг в Launchpad. Возможно, там предложат лучшее решение, чем я.

Автор: Vladimir, опубликовано в: Linux, комментариев: 1
10
Фев
2010