Категорії
FreeBSD Linux OpenBSD Solaris Windows

Убиваем сетевые соединения

Что делать, если у вас уже есть сетевое соединение с типом ESTABLISHED и его нужно принудительно убить? Не всегда файервол сможет это сделать да и не всегда это удобно. Выход есть:

– tcpkill из набора dsniff (Linux only)
– Killcx (Linux only)
– tcpdrop (BSD/Solaris only)
– CurrPorts (Windows only)
– Cutter (Linux only)

Категорії
FreeBSD OpenBSD Security

Блокируем подбор паролей в pf стандартными средствами

PF – очень мощный инструмент и в его арсенале имеются штатные средства для блокировки паролей. И так нужна такая конструкция:

table <badhosts> persist
...
block drop in quick on $ext_if from to any label "ssh bruteforce"
block drop out quick on $ext_if from any to label "ssh bruteforce"
...
pass in quick on $ext_if proto tcp from any to ($ext_if) port 22 flags S/SA keep state (max-src-conn-rate 1/60, overloadflush global)

Категорії
OpenBSD

Динамические библиотеки

Если у ваш бинарник пишет, что не может найти библиотеку, а она физически есть – выход один, путь к библиотеке не прописан. И так: как быть и что делать?

1) Проверка

#ldd /usr/local/bin/exim:
        Start    End      Type Open Ref GrpRef Name
        1c000000 3c039000 exe  1    0   0      /usr/local/bin/exim
        0301f000 23028000 rlib 0    2   0      /usr/lib/libm.so.7.0
        0cbba000 2cbbf000 rlib 0    1   0      /usr/lib/libwrap.so.4.0
        02974000 22a53000 rlib 0    1   0      libiconv.so.6.0 => not found

как видим, для бинарника exim требуется библиотека libiconv.so.6.0, которую он не может найти.

Категорії
OpenBSD

abort trap

Если это сообщение появляется при запуске приложений, таких как ls, top, ps и других, то это значит, что кто-то заменил бинарники их исходниками. Проще говоря, при распаковке папки src.tar.bz2 она была распакована не в /usr/src, а в /usr.

Решение: с рабочей системы скопировать (можно по scp, она кстати будет работать) все бинарники в папку /bin, /usr/bin, /usr/sbin.

Категорії
FreeBSD Linux OpenBSD

Группируем интерфейсы в файерволах

Предположим, вам нужно будет создать одно правило для целой кучи интерфейсов вида int0, int1, …, intN, … Создавать на каждый интерфейс отдельное правило – слишком сложно, а если на каждый интерфейс не одно правило, а интерфейсов 20 или 100? на помощь приходят записи для группировки. И так, будет рассмотрены варианты для разных файерволов (для примера взяты интерфейсы tun0, tun1, …).

Категорії
OpenBSD

Добавляем новый диск в систему

Тестовый стенд: OpenBSD 5.0

Эта операция состоит из 3-ох частей:

– инициализация

#fdisk -i wd1

– создание/просмотр разделов

#disklabel -e wd1

Категорії
OpenBSD

wd4, wd5, … или заставляем видеть больше 4 дисков

Тестовый стенд: OpenBSD 5.0 i386

По умолчанию доступно максимум только 4 диска:

#fdisk wd4
fdisk: wd4: No sush file or directory

Но что делать, если нужно больше? Точнее, диски увидяться все, но доступны через файлы устройств (/dev/wdX) будут только первые 4. Выход из этой ситуации есть – нужно создать файлы устройств. Создадим wd4 и wd5:

#cd /dev && /dev/MAKEDEV wd4 && /dev/MAKEDEV wd5

Категорії
OpenBSD

NAT, redirect => nat-to, rdr-to

В OpenBSD начиная с версии 4.7 убраны привычные конструкции nat/rdr (при использовании старых конструкций генериться ошибка). Теперь вместо них используются такие:

– RDR

pass in on $ext_if proto tcp from any to $ext_if port 5555 rdr-to 192.168.1.100 port 3389

– NAT

pass out on $ext_if proto tcp from 192.168.0.0/24 to any nat-to $ext_if

В ранних реализациях можно было применять обе конструкции.

Вот ещё небольшие дополнения

  • nat-to, rdr-to, binat-to заменяют nat, rdr и binat
  • route-to, reply-to, dup-to и fastroute теперь включены в filteropts

Пример.

Было

pass in on $ext_if route-to (em1 192.168.1.1) from 10.1.1.1
pass in on $ext_if reply-to (em1 192.168.1.1) to 10.1.1.1

Стало

pass in on $ext_if from 10.1.1.1 route-to (em1 192.168.1.1)
pass in on $ext_if to 10.1.1.1 reply-to (em1 192.168.1.1)

Примечание.

Учитывая, что правила NAT’a теперь могут идти в перемешку с остальными правилами, могут возникнуть проблемы, когда адреса не будут NAT’ится, так как они сработали на другом правиле. Поэтому, либо писать правила NAT’a в самом вверху и с ключевым словом quick, либо в самом низу и без него. Так же, будьте внимательны при составлении правила NAT.

Категорії
FreeBSD Linux OpenBSD Solaris

Определяем системное железо: память, процессор, swap

Как быстро узнать что у вас установлено на сервере с помощью подручных средств?

Рассмотрим команды для следующих систем: Linux, FreeBSD/OpenBSD, Solaris

Категорії
FreeBSD OpenBSD Windows

[pf] Авторизация на базе authpf

Что же это такое? Это очень удобный механизм предоставления доступа после авторизации по ssh. Чем-то напоминает port knoking. Идея заключается в следующем: пользователь авторизируется через ssh (можно использовать пароль, но ключи удобнее) и после успешной авторизации запускаются соответствующие правила файервола pf. В них-то можно указать разрешения или нужные пробросы.

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP
Powered by Muff