Перейти к собственно контенту

AgR^ Live Blog

Общественные записки не поддающиеся вкуриванию…

Архив

Рубрика: FreeBSD

Решил подключиться к проекту narodmon.ru Пришлось повозиться, но результат был получен.
Из железа использую вот такой адаптер с датчиком DS18B20 — http://blog.amigas.ru/?p=1501
Адаптер подключен к серверу на FreeBSD. Скрипт, который предлагается на сайте narodmon.ru немного переписан мной и полностью рабочий. Комментарии кое где добавил и выделил красным цветом, для прояснения ситуации, что и где менять.

>cat narodmon.ru.sh
#!/bin/sh
# run every 10 min
#ifconfig | grep ether | awk '{FS=" "; if(NR==1) {print "#"$5}};' > /var/log/narodmon
#echo "#" > /var/log/narodmon

echo "#7171bdae364f#" > /var/log/narodmon # код - мак адрес сетевухи
sleep 7 # - ждём 7 секунд для того чтобы не попасть на одновременный опрос датчика из разных скриптов(если опрашивается только отсюда, то необязательно)
/usr/local/bin/digitemp_DS9097 -i -q -t 1 -s /dev/cuau0 -c /scripts/.digitemprc | /usr/bin/awk '{FS=" "; if($2==":") { mac[NR-1]=$1;}; if($4=="Sensor") { print "#"mac[$5]"#"$7;}}' >> /var/log/narodmon
echo "##" >> /var/log/narodmon
LC=`cat /var/log/narodmon | wc -l`
if [ $LC -gt 2 ]
then cat /var/log/narodmon | nc narodmon.ru 8283 > /var/log/narodmon.log
fi

и загоняем его в крон:
>echo "*/12 * * * * /scripts/narodmon.ru.sh > /dev/null 2>&1" >> /var/cron/tabs/root

После регистрации на сайте и добавления датчика, получаем вот такой результат:
http://narodmon.ru/?lat=54.737&lng=55.975&zoom=14&map=map
Заодно добавил скриншот с уличной камеры.
Вот. Ничего сложного. Удачи в повторении.

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5,00 out of 5)
Загрузка...
907 views

В общем вот, обновляемый список blacklist.txt для статистики AWStats. Список пополняется и обновляется раз в сутки.

Так что теперь пусть сосут хуй всякие спамеры, seo-шники, и прочий пидорский сброд продвигающий реф ссылками всякие говносайты.

http://amigas.ru/~vadim/awstats_blacklist.rar  — пароль на архив: awstats

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5,00 out of 5)
Загрузка...
719 views

Apache coredump

Сен 17

Решил записать как сделать чтобы сохранялись коредампы апача на FreeBSD. А то опять понадобилось, а знания проёбаны.

httpd.conf
CoreDumpDirectory /home/user/apache/
или
sysctl kern.corefile=/some/core/pattern

sysctl kern.coredumps=1
sysctl kern.sugid_coredump=1

limit coredumpsize unlimited
или
ulimit -c unlimited (на FreeBSD вроде не проходит эта команда)

Всё. Ждём падения апача и httpd.core в соответствующей директории.

И начинаем отладку:
gdb /usr/local/sbin/httpd /home/user/apache/httpd.core
bt full

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
875 views

К сожалению в интернете не нашёл ни одного толкового и рабочего описания процедуры линковки двух ирк серверов на базе unrealircd. Сам Unrel установлен из портов и настроен. Также подняты сервисы Anope. Второй сервер — просто установлен unrealirc (без сервисов).
Пол дня потратил, но методом проб и ошибок добился необходимого результата. И пока не забыл, решил записать 🙂


Server1:
me
{
name "amigas.ru";
info "Server1 BDTP";
numeric 1;
};

listen *:6683 { options { serversonly; }; };

link koms.amigas.ru
{
username *;
hostname *;
bind-ip *;
port 6683;
leaf *;
password-connect "LiNk";
password-receive "LiNk";
class servers;
};

Server2:
me
{
name "koms.amigas.ru";
info "Server2 BDTP - zaton";
numeric 33;
};

listen *:6683 { options { serversonly; }; };

link amigas.ru
{
username *;
hostname 81.30.222.114;
bind-ip *;
port 6683;
hub *;
password-connect "LiNk";
password-receive "LiNk";
class servers;
options
{
autoconnect;
};
};

Эти строчки как в конфиге первого сервера, и нужны для того, чтобы второй сервер слушался сервисы первого сервера:
ulines {
services.irc.local;
stats.irc.local;
};

В результате имеем два слинкованных IRC сервера.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
750 views

Занялся вопросом поднятия собственного сервера Firefox Sync, тк надоели разрозненные закладки на работе, дома, и в portable версии браузера на флешке. Использовать предлагаемый в браузере сервер не хочу, тк как то не особо горю желанием отправлять данные закладок, паролей, истории, настроек, на «чужой сервер». Хоть данные и шифруюся….но! бережёного бог бережёт. Сразу оговорюсь, что имеется в распоряжении настроенный web-сервер + php + sqlite. Остаётся поднять только желаемый сервис. К чему и приступаем.
1. Скачиваем последнюю версию сервера синхронизации — https://codeload.github.com/balu-/FSyncMS/zip/master
закидывем к себе на сервер и там распаковываем: unzip FSyncMS-master.zip
или
можно скачать сразу к себе на сервер командой — wget —no-check-certificate https://codeload.github.com/balu-/FSyncMS/zip/master
и распаковать: unzip master
в итоге получаем папку — FSyncMS-master
2. Обязательно проверяем, что веб сервер имеет право на запись в эту папку!
В моём случае пришлось выставить пользователя и группу на эту папку:
>> chown -R www:www FSyncMS-master
3. Заходим по адресу: http://your.domain.ru/FSyncMS-master/index.php
и нажимаем «OK»
Setup FSyncMS
Creating sqlite weave storage: http://your.domain.ru/FSyncMS-master/weave_db
Now going to install the new database! Type is: sqlite
Database created
Creating cfg file: http://your.domain.ru/FSyncMS-master/settings.php Finished the setup, please delete setup.php and go on with the FFSync
Обязательно удаляем файл setup.php как просят.
4. Всё! Теперь собственный сервер синхронизации Firefox Sync, готов к работе.
От себя добавлю. В этой же папке создайте файлик .htaccess , и заполните следующим:

Files weave_db
order allow,deny
deny from all
/Files

Так секурней 🙂
5. Теперь можно настраивать Firefox Sync в браузере, указывя в качестве своего сервера синхронизации наш.
Внимание!!!! Адрес сервера должен выглядеть таким образом:
http://your.domain.ru/FSyncMS-master/index.php/
, т.е в конце адреса сервера обязательно должен стоять слеш «/» !!!
Ну и пара слов про управление:
6. Отключение новых регистраций на сервере: settings.php -> define(«ENABLE_REGISTER», false);
7. Для удаления пользователей и их данных, удалите weave_db и settings.php (для новой конфигурации переходим на пункт №3).
Про настройки в браузере писать не хочу. Там и так всё ясно до безобразия.
Про миграцию тоже не буду. И так логически всё понятно как это происходит.
Хотя если много пинать будете, то допишу 🙂

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
1 738 views

Это по моему самый быстрый способ редиректа (форвардинга) входящей почты, на другие адреса.
Создаём в директории пользователя файл — .forward, в котором построчно прописываем адреса e-mail получателей почты.
ex:
.forward
xxx@1xxx1.cdm
sdfg@dsgjkh.ri
итд.
В итоге вся входящая почта юзера, рассылается по указанным адресам в файле .forward

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
747 views

Полез обновлять хранилище на FreeNAS и обнаружил в интернете ещё три проекта такого же назначения — NAS4Free, Openfiler, OpenMediaVault. Последний проект, судя по скриншотам, очень похож на веб-админку покупного хранилища TheCus N8800Pro. К сожалению сравнительную характеристику всех хранилищ произвести не смогу. В данный момент использую только FreeNAS и N8800Pro(OpenMediaVault).

http://www.freenas.org/
http://www.nas4free.org/
http://www.openfiler.com/openfiler-homepage#
http://www.openmediavault.org/

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
858 views

Понадобилось подключить диски хранилища Thecus Nas8800Pro и FreeNas к серваку на FreeBSD. Задача оказалась очень лёгкой, тк у хранилища 8800pro оказались все подсказки, как это сделать!

Начнём.
Сперва ломимся в админку хранилища:


1. Заходим в Хранилище ->Папки.
2. Создаём необходимую нам папку.
3. Нажимаем кнопочку «NFS».

4. Нажимаем кнопку «Добавить».
5. И заполняем соответствующие поля своими данными и необходимыми настройками и получаем то что указано на рисунке.

6. Далее заходим в «Сетевая служба -> Настройка NFS»
7. И включаем сервис. Далее «Применить».
На этом настройка хранилища закончена.

Ниже привожу порядок настройки FreeNASа:
Также заходим в админку:


1. Идем в меню «Службы» -> «Управление службами»
2. Переводим слайдер в положение «ON»
3. Нажимаем на кнопку с гаечным ключом, для настройки. Если настройки такие же как и на рисунке, то жмём «ОК».

4. Идем далее в пункт «Совместное использование» -> «Unix (NFS) общие ресурсы»
5. Жмём «Добавить Unix (NFS)»
6. И заполняем таким вот образом данный пункт и потом «ОК».
Настройка на этом закончена. Осталось подключить данные сетевые ресурсы к серверу на FreeBSD.

Подклюаем так:
mount -t nfs 10.0.0.10:/raid0/data/_NAS_NFS_Exports_/nfs1 /home/obmen/public_html — NAS8800
mount -t nfs 10.0.0.11:/mnt/data/dvd /home/obmen/10.0.0.11 — FreeNAS

В итоге получили следующее:
Filesystem Size Used Avail Capacity Mounted on
/dev/ad2s1a 2.1G 210M 1.7G 11%
/ devfs 1.0k 1.0k 0B 100%
/dev /dev/ad2s1h 61G 1.5G 54G 3%
/data /dev/ad2s1g 104G 37G 57G 39%
/home /dev/ad2s1d 1.0G 112k 954M 0%
/tmp /dev/ad2s1e 62G 4.1G 53G 7%
/usr /dev/ad2s1f 10G 1.2G 8.4G 12%
/var linprocfs 4.1k 4.1k 0B 100%
/usr/compat/linux/proc
10.0.0.10:/raid0/data/_NAS_NFS_Exports_/nfs1 10T 2.9T 7.8T 27% /home/obmen/public_html
10.0.0.11:/mnt/data/dvd 78G 66G 11G 85% /home/obmen/10.0.0.11

Ну вот и всё. Абсолютно ничего сложного.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
1 196 views

Хоть это для меня и не особо критично, но всё же ради эксперимента решил защитить сервер от попыток перебора пароля. Самый простой способ — смена порта. Но мне захотелось оставить на стандартном. Ставить связку с фаерволом, тоже как-то не хотелось. И после очередного обновления портов, попалась на глаза, утилита написанная на перле, делающая то что мне нужно и без всяких «вагонов с тележками» в комплекте…
#cd /usr/ports/security/sshblock
#make install clean
#echo sshblock_enable="YES" >> /etc/rc.conf
#/usr/local/etc/rc.d/sshblock start
Опций минимум:
Usage: sshblock [ -b ] [ -l ] [ -t ]

Trigger list is a list of seconds:attempts threshold pairs for determining
whether a host should be blocked (Пара - время в секундах:количество попыток входа)

Default blockfile: /etc/hosts.allow
Default logfile: /var/log/auth.log
Всё остаётся по умолчанию, в том числе и тайминги, которые я подсмотрел в теле программы:
%SSHBlock::thresholds = (
# 5 attempts in 15 seconds
15 => 5,
# 10 attempts in 60 seconds
60 => 10,
# 20 attempts in one hour
3600 => 20,
# 30 attempts in one day
86400 => 30

Этого нам вполне хватит.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
813 views

После установки FreeBSD v9.0 , как всегда понадобилось русифицировать консоль. На удивление, с версии 9 немного изменился способ русификации. Вернее он просто упростился.
Здесь я опишу как это было до 9-ой ветки и как стало теперь.
Начнём:
1. Проверим для начала наличие таких строчек в файле /etc/login.conf
#
# Russian Users Accounts. Setup proper environment variables.
#
russian|Russian Users Accounts:\
:charset=KOI8-R:\
:lang=ru_RU.KOI8-R:\
:tc=default:
Если нету, то добавляем и потом выполняем следующую команду:
cap_mkdb /etc/login.conf
2. Отредактируем файл /etc/rc.conf , добавив следующие строчки:
font8x14="cp866-8x14"
font8x16="cp866-8x16"
font8x8="cp866-8x8"
scrnmap="koi8-r2cp866"
keymap="ru.koi8-r"
3. Отредактируем файл /etc/ttys изменив следующим образом:
было так:
ttyv0 "/usr/libexec/getty Pc" cons25 on secure
# Virtual terminals
ttyv1 "/usr/libexec/getty Pc" cons25 on secure
ttyv2 "/usr/libexec/getty Pc" cons25 on secure
ttyv3 "/usr/libexec/getty Pc" cons25 on secure
ttyv4 "/usr/libexec/getty Pc" cons25 on secure
ttyv5 "/usr/libexec/getty Pc" cons25 on secure
ttyv6 "/usr/libexec/getty Pc" cons25 on secure
ttyv7 "/usr/libexec/getty Pc" cons25 on secure
стало так:
ttyv0 "/usr/libexec/getty Pc" cons25r on secure
# Virtual terminals
ttyv1 "/usr/libexec/getty Pc" cons25r on secure
ttyv2 "/usr/libexec/getty Pc" cons25r on secure
ttyv3 "/usr/libexec/getty Pc" cons25r on secure
ttyv4 "/usr/libexec/getty Pc" cons25r on secure
ttyv5 "/usr/libexec/getty Pc" cons25r on secure
ttyv6 "/usr/libexec/getty Pc" cons25r on secure
ttyv7 "/usr/libexec/getty Pc" cons25r on secure
4. Даём юзерам возможность использовать русскую локаль:
pw usermod user -L russian
5. Перезагружаемся.

Этот способ для версий FreeBSD ниже 9.0
Начиная с 9-ой ветки, теперь нет необходимости вносить изменения в файл /etc/ttys !!!

Начиная с 11-ой ветки:
для русификации терминала при создании пользователя указывайте class russian:
pw useradd user_name -L russian

Или можете изменить класс существующего пользователя командой:
pw user mod user_name -L russian

После всего перезайти в сессию или перезапустить шелл.

P.S. Для поддержки кириллицы в консоли добавьте строку в /boot/loader.conf:
hw.vga.textmode=0
и перезагружаем комп.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
2 148 views