Категорії
FreeBSD

Несколько виртуальных интерфейсов через netgraph

Допустим, вам необходимо создать несколько виртуальных интерфейсов, которые будут работать как обычные, не зависимые друг от друга. Это очень легко делается через netgraph. Приведу лишь скрипт, который создаст 3 виртуальных интерфейса, не трогая при этом физический:

Категорії
FreeBSD

Правильная пересборка ядра

Расскажу, как рекомендуется правильно пересобирать ядро, а именно включать, отключать опции и т.д.

1) Создание конфигурационного файла

Создаём пустой файл в /usr/src/sys/`uname -m`/conf , например, kern1 такого содержания:

include GENERIC
ident kern1

Этим мы определили, что использовать будем шаблон GENERIC, а имя нового ядра kern1.

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

Защита от fork бомб

Solaris

В Solaris есть удобный механизм для ограничения количества запускаемых процессов/потоков – это проэкт. Что бы пользователи не смогли положить сервер fork-бомбой, нужно им ограничить количество LWP. Создадим проект и поместим туда пользователя testuser:

#projadd -U testuser -K 'project.max-lwps=(privileged,2048,deny)' user.testuser

Теперь пользователь testuser не сможет запустить более 2048 потоков.

Для тестирования можно использовать такую бомбу:

#!/usr/bin/bash
:(){ :|:& };:

Больше for bomb на разных языках можно взять здесь

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

Меняем скорость и дуплекс сетевой карты

FreeBSD

Что бы узнать какие режимы поддерживаются данной карточкой, используем такую команду:

# ifconfig -m nfe0
nfe0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=8210b<RXCSUM,TXCSUM,VLAN_MTU,TSO4,WOL_MAGIC,LINKSTATE>
        capabilities=8210b<RXCSUM,TXCSUM,VLAN_MTU,TSO4,WOL_MAGIC,LINKSTATE>
        ether fa:d5:5e:f7:db:ff
        inet 192.168.1.40 netmask 0xffffff00 broadcast 192.168.1.255
        inet6 fe80::f8d5:5eff:fef7:dbff%nfe0 prefixlen 64 scopeid 0x4
        inet 192.168.0.11 netmask 0xffffff00 broadcast 192.168.0.255
        inet 10.11.11.2 netmask 0xffffff00 broadcast 10.11.11.255
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
        supported media:
                media autoselect mediaopt flowcontrol
                media autoselect
                media 100baseTX mediaopt full-duplex
                media 100baseTX
                media 10baseT/UTP mediaopt full-duplex
                media 10baseT/UTP
Категорії
FreeBSD Linux Solaris

Порядок запуска стартовых скриптов

FreeBSD

$rcorder /etc/rc.d/* /usr/local/etc/rc.d/*

Linux

$ls /etc/rc`runlevel | cut -d ' ' -f 2`.d | sort

Solaris

$svccfg list

Категорії
FreeBSD

Поддержка dtrace в приложениях

Здесь буду добавлять описание наиболее часто используемого ПО, в которое можно добавить поддержку Dtrace.

Тестовый стенд: FreeBSD 9.0 Release amd64, ядро собрано с поддержкой Dtrace

Категорії
FreeBSD Misc, staff, other

TIMEOUT – READ_DMA retrying

Как пишут в сети, избавиться от этой ошибки помогает принудительное отключение DMA:

echo 'hw.ata.ata_dma="0"' >> /boot/loader.conf

то есть перевод в режим PIO (установить 1 для обеспечения доступа DMA, 0 – для PIO; по умолчанию, DMA).

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

chattr, chflags и неудаляемые файлы

Как защитить файл от удаления из-под root’a? Ведь root может удалить любой файл? Или не любой? Оказывается, и здесь есть небольшая защита от дурака.

Создатели файловых систем позаботились о том, что бы добавить возможность выставить дополнительные флаги на файлы или папки, которые бы ввели дополнительную защиту:

– нельзя удалить файл (неважно под каким пользователем это делать)
– можно только дописывать/добавлять, но не изменять или удалять

а так же много других возможностей. Напомню, что это свойство файловой системы, а не ОС, поэтому, не для всех ОС эти свойства применимы

Категорії
FreeBSD

Рекомендации по настройке нового сервера FreeBSD

Данная статья поможет вам не забыть настроить основные моменты при поднятии нового сервера с нуля. Будут использоваться общие принципы при настройке сервера, не зависимо от назначения (а если есть специфические моменты – они будут оговорены отдельно)

Кстати, статья будет дополнятся, обновляться.

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

Измеряем скорость соединения

Если появилась задача измерять скорость работы между 2-мя хостами, то лучшего инструмента, чем iperf/ttcp не найти.

Оба этих инструмента нужно запускать с обеих концов проверяемой трассы.

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