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

Тюнинг mysql/postgresql on zfs/ext4

Ниже будет описан тюнинг самой mysql + OS-специфический. Тюнинг будет рассмотрен только для движка InnoDB.

mysql

Обязательно разнести базу и логи (innodb_log_group_home_dir) по разным датасетам (дискам). В идеале вынести на отдельный датасет и tmp_dir для mysql.

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

Фильтрация по MAC-адресу в различных файерволах

ipfw

add allow all from any to 192.168.2.0/24 via ${natd_interface} mac aa:bb:cc:dd:ee:ff any

pf

(только OpenBSD)

в консоли:

# ifconfig bridge0 rule pass in on fxp0 src 0:de:ad:be:ef:0 tag USER1

в pf.conf:

pass in on fxp0 tagged USER1

ipf

Нельзя сделать

iptables

/sbin/iptables -A INPUT -m mac --mac-source 00:0F:EA:91:04:08 -j DROP

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

Меняем RPATH

Что такое RPATH? Wikipedia:

rpath is a term in programming which refers to a run-time search path hard-coded in an executable file or library, used during dynamic linking to find the libraries the executable or library requires.

Иными словами это жёстко зашито в заголовке бинарника. Можно попробовать поменять в момент запуска:

LD_LIBRARY_PATH=/var/other myprog &

Но это не всегда возможно и не всегда работает. Для постоянного изменения существует специальные утилиты, которые правят сам бинарник.

Категорії
FreeBSD

FreeBSD in a chroot

Finch is FreeBSD running inside a chroot. Finch is best used as a way to extend the functionality of restricted USB-based FreeBSD distributions, usually FreeNAS and NAS4Free. For added convenience, Finch also includes the qjail jails management tool. Since FreeBSD jails are such a popular request.

Recommended system configuration:

# Restricted FreeBSD host <--> FreeBSD-in-a-chroot (a.k.a "Finch") <--> Qjail <--> jails

Официальный сайт http://dreamcat4.github.io/finch/

Категорії
FreeBSD

Создание “зеркала” на системном диске с GPT на FreeBSD 9 после установки

Дело в том, что на GPT не просто сделать RAID1, в отличии от MBR, где просто создаёшь рейд и добавляешь туда весь диск. Обычно, рекомендуется создавать “зеркало” на этапе установки, так как после того, как ОС насетаплена это сделать не так просто. Но мы это сделали ))

Тестовый стенд: FreeBSD 9.2 amb64 Release, 2xHDD 500Gb (ada0, ada1)

Суть нашего метода:

1) Создаём точную разбивку второго диска
2) Делаем gmirror отдельно для каждого из разделов ВТОРОГО диска
3) dump/restore разделов с первого диска на gmirror’ы второго
4) Правка fstab’a на первом диске на разделы с mirror и загрузка уже с mirror’a
5) Добавление оставшихся разделов с первого диска в gmirror’ы.

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

Правильная ротация логов java/tomcat’a

Всё бы хорошо, но tomcat не понимает сигналs HUPSIGUSR1 (при их получении он просто завершается). Как быть, если надо ротировать логи. Есть 2 варианта: через системный log-ротатор и через встроенные механизмы самого tomcat’a. Я рассмотрю первый вариант, так как в нём больше возможностей в плане ротации файлов. Но тут есть нюанс: ротировать будем с помощью метода copytruncate, то есть нужный нам лог сначала копируется, а потом урезается до нулевой длинны, тем самым не нарушая последующей записи в исходный лог.

Категорії
FreeBSD Security

Защита от небольшого DDoS’a

Что имеем: есть сервер (8Гб памяти, Intel(R) Xeon(R) CPU E31220 @ 3.10GHz) FreeBSD 8.4 Release amd64, сайт на php5.2, nginx+apache+mysql.

Перейти полностью на php-fpm не получилось, поэтому пришлось защищаться как есть. Это поможет отразить небольшую syn flood атаку.

Ниже будет приведены выполненные действия для отражения атак.

Категорії
FreeBSD

USB 3G модем и подвисание сервера при ребуте

После обновления FreeBSD 8.1 на 8.4 вылез неприятный момент: при ребуте сервер подвисает на сообщении:

usb0 disconnected

Всему виной оказался USB 3G модем Novatel U720, из-за которого и получали подвисание.

Категорії
FreeBSD Security

sshd rootkit на FreeBSD 7.3

Недавно, на один из старых серверов (там крутилась FreeBSD 7.3) пришла абуза от хостера, что на сервере замечен rootkit. Была информация, что при любом логине (а как позже оказалось, вообще при любой попытке, даже неудачной) на сервер он отправляет login/pass/ip на сервер злоумышленника в виде хитрого DNS запроса.

Недавно сообщалось, что такой руткит был найден на серверах с linux (там была протроянена либа libkeyutils.so). Гугление показало, что такого руткита для FreeBSD и в помине нет (а может плохо гуглил).

UPD: а вот похоже и оно

Категорії
FreeBSD Linux

Перенаправление вывода консоли FreeBSD в VirtualBox’e

Появилась задача протестировать одну штуку через VirtualBox. Но вот не задача: нужное мне сообщение пишет ядро после того как перегружаю виртуалку. Я, конечно не успеваю его прочитать. Вот если бы можно было куда-то перенаправить вывод консоли виртуалки и оттуда уже прочитать.

Можно конечно воспользоваться ПО, которое пишет видео с экрана, но и тут меня ждала неудача: слишком быстро промелькнуло сообщение и на видео оно не видно.

Решение подсказали в рассылке FreeBSD. Суть следующая: будем дублировать вывод так же на com-порт, а в качестве com-порта пропишем путь к сокету, который создадим на хост-машине (та, собственно где запущен VirtualBox).

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