Category: FreeBSD

Авг 08 2010

chroot ssh доступ. Настройка.

В OpenSSH, который входит в FreeBSD есть поддержка chroot. То есть можно сделать так, что бы пользователь подключившийся по ssh видел только свое домашнее окружение и не мог выйти в каталоги других пользователей. Остается chroot только настроить.
В первую очередь создадим группу, в которую будем добавлять пользователей которых нужно chrootить, группа пусть будет www-user:

echo 'www-user:*:8080:' >> /etc/group

Теперь внесем настройки в /etc/ssh/sshd_config, в конце файла добавим:

Match group www-user
        ChrootDirectory /home/%u

И перезапустим sshd:

/etc/rc.d/sshd restart

Read more »

Июл 12 2010

Разбиваем диск с помощью fdisk, bsdlabel, newfs

Случается такое, что приходится работать с новым диском в ситуации когда вызвать sysinstall нет возможности. Например при работе с LifeCD или при установке в различных датацентрах или при восстановлении информации тут же с загрузившись с полумервого диска, когда нет возможности забрать сервер с собой(тут часто административные вопросы мешают) и нет возможности воспользоваться CD или DVD диском.
Read more »

Май 31 2010

dd на удаленный сервер по ssh.

Применяя на некоторых своих серверах в USB Flash диски я столкнулся с проблемой бекапа. Первое решение — это применение rsync. Он минимален по используемым ресурсам и не требует много пространства. В принципе этого достаточно для бекапа серверов. Но хочется иметь готовый образ диска, который можно будет в любой момент влить на флешку и в случае выхода из строя обоих флеш дисков(они у меня собраны в RAID1 с помощью gmirror) быстро поменять диски или в случае аварии связанной с физическим разрушением сервера быстро установить flash диски в резервный сервер и с минимумом правок запустить маршрутизатор в работу.
Read more »

Май 02 2010

Настройка ng_netflow.

Не так давно я писал о том, как настраивал ipcad. ng_netflow — более экономное решение для решения этой задачи.
Стартовый скрипт у меня выглядит так:

kldload netgraph.ko
kldload ng_ether.ko
kldload ng_tee.ko
ngctl -f - << SEQ
    mkpeer em0: tee lower left
    name em0:lower tee
    connect tee: em0: right upper
 
    mkpeer tee: netflow left2right iface0
    name tee:left2right netflow
    connect tee: netflow: right2left iface1
 
    mkpeer netflow: ksocket export inet/dgram/udp
    name netflow:export ksocket
    msg ksocket: connect inet/89.252.34.107:3434
SEQ

Вместо em0 нужно вписать имя вашего интерфейса с которого вы хотите снимать данные. Интерфейс может быть и сетевой картой и vlanом. Вместо 89.252.34.107:3434 указывайте адрес и порт вашего коллектора netflow.

Апр 23 2010

FreeBSD. Маршрутизатор на флешке.

Жесткие диски — самое больное место современных серверов, не зря большинство аппаратных маршрутизаторов используют в качестве накопителей флешки. Флеш диск имеет меньше ресурсов перезаписи, но он не имеет движущихся частей, поэтому логичным является перенос роутера на флешку, запись нужной конфигурации и перевод диска в состояние read-only. Кроме всего прочего, я держу флешки в зеркале, с помощью gmirror и выход из строя одного диска, не приводит к прерыванию сервиса.
В принципе для установки достаточно флешки на 512 Мб, но большого смысла в такой экономии нет, можно конечно ставить CardRider и использовать SD карты, но у меня эта технология не прижилась. Использую обычные USB карты, монтирую их в сервере вместо дисков, используя внешние USB порты со старых системных блоков. Получается достаточно удобно, открываешь отсек меняешь флешку и все, продолжается работа.
Read more »

Апр 10 2010

Настройка bsnmp.

Во FreeBSD входит bsnmp, утилита с помощью которой вы сможете мониторить использование системы по протоколу SNMP, я работаю с ним по SNMPv1 и использую совместно с MRTG. Очень жаль, но утилиты подобной snmpwalk(она входит в net-snmp), я не нашел. Поэтому настройка усложняется. Но в целом, тут и настраивать то особо нечего.
Read more »

Мар 17 2010

Драйвер em от yandex.

Любой кто имеет дело с FreeBSD, знает, что лучшие сетевые карты — производства Intel. Системы с ними на борту лучше держат нагрузку благодаря тому, что чип карты выполняет массу операций сам, не привлекая к этому другие ресурсы. И так, же многие знают о существовании стороннего драйвера для гигабитных сетевых карт Intel, разработанного одним из работников Яндекс. Эти драйвера ориентированны на работу в много процессорных системах и более оптимально используют процессор. По моим наблюдениям, использование драйверов от Яндекс, позволит выиграть еще около 10 % производительности.
Read more »

Мар 10 2010

FreeBSD. Проблемы при загрузке с USB Flash.

Недавно делал роутер на флешке, естественно ставил FreeBSD 8.0 и тут обнаружил, что при загрузке не монтируется корень. Промучался я почти неделю. FreeBSD 7.2 работает, 8.0 не работает. Проблема в новой подсистеме USB. Решается проблема добавлением одной строчки в /usr/src/sys/kern/vfs_mount.c, решение нашел на хабре(http://habrahabr.ru/blogs/bsdelniki/77722/). Патч выглядит так:

Index: sys/kern/vfs_mount.c
===================================================================
RCS file: /usr/src/sys/kern/vfs_mount.c,v
retrieving revision 1.308
diff -u -r1.308 vfs_mount.c
--- sys/kern/vfs_mount.c 5 Jun 2009 14:55:22 -0000 1.308
+++ sys/kern/vfs_mount.c 29 Sep 2009 17:08:25 -0000
@@ -1645,6 +1645,9 @@
options = NULL;
+ /* NASTY HACK: wait for USB sticks to appear */
+ pause("usbhack", hz * 10);
+
root_mount_prepare();
mount_zone = uma_zcreate("Mountpoints", sizeof(struct mount),

Нужно просто в файле /usr/src/sys/kern/vfs_mount.c после строки

options = NULL;

и перед строками:

root_mount_prepare();
mount_zone = uma_zcreate("Mountpoints", sizeof(struct mount)

добавить строку

pause("usbhack", hz * 10);

и пересобрать ядро. Все заведется, проверенно.


Украинская Баннерная Сеть