четверг, 29 декабря 2011 г.

Пример обработки XML в BASH

Понадобилось обработать xml.
Нашел вариант как это сделать на Bash :)

Рейтинг языков программирования

Стало интересно, какие языки программирования популярны на данный момент?

Приведу рейтинг  от Tiobe (TIOBE Software BV — голландская компания, известная своими ежемесячными рейтингами популярности языков программирования)

Рейтинг "традиционных" языков:
java, C, C++,  C#, Objective C,  Visual Basic, Job Trends graph

Рейтинг скриптовых языков программирования:
ruby, python, perl, rails, flex, PHP, ActionScript, JavaScript Job Trends graph


Индекс популярности в сообществах от Tiobe:

Каждый язык по своему хорошо и имеет своих поклонников и области применения... А данные рейтинги просто показывают их популярность.
Языки низкого уровня - типа ассемблера и специализированных - типа ada в рейтингах рассмотрены не были.

Ссылки:
tiobe
Indeed. jobtrends.

Рейтинг языков программирования на 2011 год

понедельник, 26 декабря 2011 г.

Python - полезные ссылки для начинающих

Приведу здесь серию полезных ссылок для изучения Python:

Изучение:
Русскоязычная документация по Python
Видеоуроки по Python от Khan Academy
Заметки об объектной системе языка Python ч.1
Основы работы с потоками в языке Python
Абстрактные классы и интерфейсы в Питоне
Материалы продвинутого уровня по Питону

Книга Gray Hat Python Глава  1. Настройка вашего рабочего окружения.
Книга Gray Hat Python. Глава 2. Отладчики и устройство отладчика

Инструментарий:
Ресурсы и сообщества Python:
http://python.su/
http://pyplanet.org/
http://pydev.ru/
http://world-python.org - Есть описания модулей + книги + еще некоторая полезная инфа.
http://docs.python.org/library/  (ENG)

P.S. Если у Вас есть ссылки на полезные материалы, просьба оставлять в комментариях.

пятница, 23 декабря 2011 г.

Восстановление openssh public key из private key

Случается, что теряется (удаляется или перезаписывается по ошибке) публичная часть ключа (та, которая обычно имеет суффикс ".pub"),
но если секретная часть жива ("id_rsa" или "id_dsa") то восстановить публичную очень просто:

Если ключ RSA
$ ssh-keygen -y -f id_rsa > id_rsa.pub

или если DSA
$ ssh-keygen -y -f id_dsa > id_dsa.pub
Ссылки:
Восстановление openssh public key из private key
Основы работы с OpenSSL

TrueCrypt + eToken

Что такое TrueCrypt я коротко описал в своей заметке "Шифрование данных - TrueCrypt"
Кратко опишу, как использовать TrueCrypt с аппаратным ключом eToken на Windows.

четверг, 22 декабря 2011 г.

eToken+Putty

Если у Вас уже есть устройство для аутентификации e Token, то имеет смысл использовать его везде, где нужно для обеспечения более высокого уровня безопасности.
Удаленный доступ к серверам имеет очень высокую степень риска (думаю со мной многие согласятся)
Т.к. даже запароленный приватный ключ в криптованном контейнере может быть скопирован при определенных обстоятельствах злоумышленником,а затем уже подобран пароль к нему.
Получить публичный ключ думаю еще легче :). Заполучив приватный ключ можно подобрать пароль даже брутфорсом, хотя это вопрос времени.. Получить ключ из eToken уже сложнее..
Ну да ладно я ушел в сторону...

OpenVpn client + eToken + Windows 7

Кратко опишу настройку OpenVPN client под Windows 7 (у меня x64, но роли это не играет) с использованием eToken Pro.

пятница, 16 декабря 2011 г.

Что такое Dropbox ?

Решил написать серию заметок по Dropbox, для облегчения пониманию и использования для новых пользователей.

Dropbox -  облачное хранилище данных, принадлежащее компании Dropbox Inc., позволяющее пользователям хранить свои данные на серверах в облаке и разделять их с другими пользователями в Интернете. Работа построена на синхронизации данных.


Преимущества и возможности:
  • Вы получаете хранилище для своих файлов, которое будет доступно для Вас абсолютно везде, где есть интернет.
  • Хранение в облаке - на данный момент самая надежная система хранения данных. Практически на 100% гарантируется сохранность данных и их доступность.
  • Для того чтоб использовать такое хранилище от Вас не требуются глубокие знания множества технологий, просто бери и пользуйся :) !
  • Есть бесплатная версия - для начала доступно 2G, затем можно расширять это пространство разными способами до 8G, которые будут описаны позже. Либо воспользоваться платным сервисом.
  • Есть кросс платформенный клиент для синхронизации с облачным хранилищем.   Рекомендуется использовать именно этот способ. Реализован фактически для  всех ОС (Windows, Linux, Mac), а также для мобильных платформ (Iphone, Ipad, Android, BlackBerry). Клиент автоматически синхронизируется с облаком!
  • Также вы можете получить доступ к Вашим данным просто из браузера по защищенному соединению (https)
  • Если Вы изменяете файлы на рабочем компьютере, на домашнем компьютере, в поездке на ноутбуке или коммуникаторе, автоматическая синхронизация обеспечит идентичность соответствующих файлов на всех Ваших устройствах, подключенных к сервису синхронизации;
  • Доступна синхронизация по локальной сети! Если у Вас есть возможность подключения Вашего ноутбука к той же сети, что и Ваш рабочий/домашний компьютер, то синхронизация будет выполняться по локальной сети, минуя доступ в Интернет, что в десятки раз уменьшит время синхронизации. Этот же режим позволит Вам в считанные минуты закачать все Ваши рабочие файлы на новый (например, подменный) компьютер.
  • Можно еще и делится той информацией с другими пользователями, которую вы сделали публичной. Дали другу ссылку — он просто скачал, по аналогии с radipshare или depositfiles, только без ограничений на время и скорость загрузки.
  • Совместная работа. Есть необходимость совместной работы над проектом, изменять или просматривать одни и те же документы? Папки совместного доступа позволят Вам и Вашим коллегам автоматически получать последние версии файлов. А система сохранения версий позволит не потерять сделанные изменения, так как Вы в любой момент можете вернуться к любой версии файла.

Что любят хранить в Dropbox пользователи?

  • папки закладок для браузеров (можно сделать синхронизацию)
  • пароли в зашифрованном виде (например программой KeePassX, либо просто криптованый контейнер TrueCrypt)
  • любые документы (лично я предпочитаю их хранить в гугл.докс)
  • даже файлы торрентов можно хранить (например, на работе можно туда кидать торренты, а дома если компьютер работает и торрент программы настроена, они автоматически будут закачиваться. Хотя если это так критично можно настроить и удаленное управление торрентом через веб )
  • в общем сервис замечательный


Лично для меня данный сервис является альтернативой ношения с собой флешки.
Т.к. часто флешку забываешь дома в самый нужный момент... Если что-то действительно важное, то лучше использовать Truecrypt для создание шифрованного контейнера.
Также возможность использовать как альтернативу файлообменикам.

Методы увеличения бесплатного пространства:
После регистрации Вам дают 2гб места бесплатно.
Для начала этого хватает с головой. Больше места можно купить за деньги. 
Но есть методы по увеличению места бесплатно!
Ссылка для ввода купонов для получения дополнительного места
выдается обычно за участие в разных акциях

Присоединяйтесь к DropBox! (рефссылка! Дает +250Mb новому пользователю и мне +250Mb в качестве бонуса  :) )

UPDATE 16.02.2012

Ссылки:
Wiki Dropbox
Dropbox-моя палочка-выручалочка!
Dropbox (Дропбокс) – автоматическая синхронизация файлов и онлайновое хранилищеhttp://blog.dropbox.com/ - выкладываются различные новости (eng)
7 альтернатив DropBox
Уязвимость в клиенте DropBox

среда, 7 декабря 2011 г.

Монтирование HFS+ диска на gentoo (с описанием сборки модулей)

Попался диск с файловой системой HFS+
Кстати посмотреть, какая файловая система на разделе устройства можно следующим способом
# file -s /dev/sdb3
/dev/sdb3: Macintosh HFS Extended version 4 data last mounted by: 'HFSJ', created: Mon Aug 10 18:45:32 2009, last modified: Fri Dec  2 11:16:11 2011, last checked: Tue Aug 11 02:45:32 2009, block size: 4096, number of blocks: 488174326, free blocks: 8125096
При попытке монтирования выдало
mount: unknown filesystem type 'hfsplus'
Проверяем, есть ли вообще скомпилированные модули для поддержки файловой системы HFSPLUS
modprobe -l|grep hfs
У меня нет скомпилированного модуля.
Значит нужно его скомпилить :)
Заходим в каталог с сырцами ядра:
cd /usr/src/linux
Запускаем настройку конфига ядра
make menuconfig
Подгружаем старый конфиг ядра (внизу Load) Заходим и выставляем по меню:

File systems  --->
    Miscellaneous filesystems  --->
     Apple Extended HFS file system support
     Apple Macintosh file system support
    Partition types  --->
    [*] Advanced partition selection
    [*]   Macintosh partition map support
Сохраняем и выходим.
make modules&&make modules_install
По идее если все прошло без ошибок, у Вас должны были собраться модули hfs и hfsplus.
Теперь подгрузим нужный модуль
modprobe hfsplus
Если прошло без ошибок, то теперь Ваша система знает что за файловая система hfsplus.
Монтируем раздел. Пример:
mount -t hfsplus /dev/sdb2 /mnt/hdd1

Полезные ссылки:
http://en.gentoo-wiki.com/wiki/Hfsplus


четверг, 24 ноября 2011 г.

Синхронизация файлов с помощью rsync по ssh

Для копирования файлов по сети можно использовать множество инструментов.
Наиболее распространённым считается ftp, но многие используют и scp для небольших объемов.
С синхронизацией все немного сложнее.. В статье lftp - Синхронизация папок по ftp я описал, как можно выполнять синхронизацию по ftp, но это не очень удачная идея и применима, только когда нет альтернатив.

Для синхронизации данных можно использовать rsync по ssh.
Если у Вас есть доступ по ssh на сервер, то это наиболее простой и надёжный способ, который не требует никаких предварительных настроек. Кстати это и более безопасно.

Установка последнего FFmpeg на Gentoo

Понадобилось установить последнюю версию ffmpeg c поддержкой h264 для конвертирования видео.
В данной заметке расскажу, как поставить их из исходников

среда, 23 ноября 2011 г.

Сслыки для желающих освоить программирование на shell


Даже при условии огромного количества скриптовых языков, таких как perl и python . Не везде требуются их огромные возможности.
Поэтому для относительно небольших скриптов, замечательно подходят стандартные средства такие как bash, awk, sed.
Приведу несколько ссылок, которыми периодически пользуюсь сам...


BASH
Advanced Bash-Scripting GuideИскусство программирования на языке сценариев командной оболочки
BASH: общие приёмы работы 


AWK + SED
Эффективное программирование на языке AWK. Руководство пользователя для GNU Awk
sed и awk (учебное пособие) - CITforum
Язык обработки структурированных текстов AWK
Язык обработки данных AWK - codenet.ru


Полезные решения:
Разбивка строки по разделителю в Bash (eng)




воскресенье, 23 октября 2011 г.

Установка OpenVPN GUI на Windows 7

Казалось бы что может быть проще поставить программу под винду?
С установкой OpenVPN GUI у меня возникли проблемы...
Противная семерка не захотела принимать неподписанные драйвера TAP, которые нужны для создания VPN.
Нашел объяснение разработчиков, смысл следующий: промежуточные версии драйверов, которые содержать небольшие улучшения и устранения небольших багов не отсылаются к мелкомягким на подписание. Подписываются только драйвера с серьёзными изменениями.


пятница, 7 октября 2011 г.

17 простых советов для повышения продуктивности

В очередной раз просматривая http://habrahabr.ru/ натолкнулся на список простых, но грамотно сформулированных советов по повышению продуктивности.
Собственно эта статья является ее копией, оригинал - 17 простых советов для повышения продуктивности
Итак...

пятница, 30 сентября 2011 г.

Кнопка как ссылка

Оригинал - Кнопка как ссылка .
Памятка для себя....
Пару вариантов в стиле “поизвращаться”.
1.

<a href=”#”><img src=”pic.jpeg” /></a>
2.

<script type=”text/javascript” language=”javascript”> <!– document.write(” <input type=\”button\” onClick=\”window.location.href = \’index.html\’\” value=\”Кнопка\”>”); //или <button> //–> </script>
<noscript><br /> <a href=”index.html”>Кнопка</a><br /> </noscript>
3.

<form action=”1.php”> <input type=”text” /><input type=”submit” />
</form> <input type=”text” /> <input type=”submit” />
4.

<input value=”Жми” onclick=”location.href=’URL тут’” type=”button” /> 
5.

<style> input.sur { background: url(\’bg.gif\’); } </style> <form> <input class=”sur” value=”Кassssssssssн” onclick=”alert(‘Ни фига!’)” type=”button” /> </form> 
6.

<button onclick=”location.href=’http:\\www.htmlbook.ru’”><img src=”asd.gif” /></button> 
7.

<a href=”ff.html” class=”button”>Название кнопки</a>
.button {
background: фон кнопки;
}
.button:hover { фон другой кнопки} 
8.

<form action=”1.php” id=”sender”></form>
<a href=”javascript:void(0);” onclick=”javascript:document.getElementById(’sender’).submit();”><input type=”button” value=”Go” /></a>  

Мониторинг системы под FreeBSD. Полезные команды.


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

среда, 28 сентября 2011 г.

Основы Linux от основателя Gentoo



Навигация по основам Linux от основателя Gentoo:

Часть I:
BASH, основы навигации
Управление файлами и директориями
Ссылки, а также удаление файлов и директорий
Glob-подстановки



Часть II:
Регулярные выражения
Назначения папок, поиск файлов
Управление процессами
Обработка текста и перенаправления
Модули ядра

Часть III
Документация
Модель прав доступа
Управление аккаунтами
Настройка окружения (итоги и ссылки)

Также можно посмотреть следующие ссылки:
Gentoo FAQ

Видеоинструкции по Linux для начинающих от linuxway

воскресенье, 25 сентября 2011 г.

Введение в Gentoo. Часть 1. Минимальная установка.

Для первого знакомства с Gentoo необходимо его установить :)
Собственно я и опишу кратко процесс установки.

четверг, 15 сентября 2011 г.

Сетевые Intel во FreeBSD

EM
Драйвер для гигабитных сетевых карточек
Можно увеличить размеры очередей в карточке (в данном случае до 4 Мб).

### EM net
hw.em.rxd=4096
hw.em.txd=4096
hw.em.max_interrupt_rate=32000

Примечание: желательно посмотреть, какой буфер в реальности имеет ваша сетевая карточка. При возникновении проблем можно уменьшить его в 2 или 4 раза.
Для нормальной работы сетевой особо больше ничего не нужно. Драйвер em в FreeBSD уже очень давно и большинство глюков уже отловлено.
Можно разве что, еще немного заняться тюннингом sysctl.

IGB
Это драйвер для более новых гигабитных сетевых карточек (чипы 82575, 82576, 82580).
Поведение данного драйвера при первоначальном внедрении не очень радовало многих(FreeBSD 7.x). Особенно проблемы возникали с новыми "фичами".
Можно вместо базовых драйверов:
Скачать последнюю версию драйвера igb с офф.сайта Intel
Либо использовать драйвера от Yandex
Драйвера от Yandex более грамотно раскладывают нагрузку по ядрам процессора.
Добавляем в /etc/rc.conf

ifconfig_igb0="-rxcsum -txcsum -lro -tso up"
Это отключает LRO TSO и checksum.
Работать с LRO на данный момент при большом потоке не реально.
Добавляем в /boot/loader.conf

hw.igb.rxd=4096
hw.igb.txd=4096
hw.igb.max_interrupt_rate=32000
hw.igb.lro=0

Можно также внести изменения в ядро.
Рекомендуемые:

## Убирать, т.к. выкладывает проц в полку без прироста в производительности
#options                FLOWTABLE  
#Для создания дополнительных буферов под копирование сокетов
options         ZERO_COPY_SOCKETS # man 9 zero_copy_sockets
## Несколько таблиц маршрутизации.
## Полезно при использовании jail
#options         ROUTETABLES=10
options         HZ=4000
options         PANIC_REBOOT_WAIT_TIME=16
device lagg
А также подтюнить sysctl(параметры подбираются индивидуально под задачу)

net.inet.ip.forwarding=1 #включаем форвардинг пакетов
net.inet.ip.fastforwarding=1 #эта опция действительно ускоряет форвардинг
net.inet.tcp.blackhole=2 #ядро убивает tcp пакеты, приходящие в систему на непрослушиваемые порты
net.inet.udp.blackhole=0 #как и выше, только не убивает ибо traceroute пакеты не покажут этот хоп
net.inet.icmp.drop_redirect=1 #не обращаем внимания на icmp redirect
net.inet.icmp.log_redirect=0 #и не логируем их
net.inet.ip.redirect=0 #не реагируем на icmp redirect
net.inet.ip.sourceroute=0 #отключение маршрутизации от источника
net.inet.ip.accept_sourceroute=0 #старый и бесполезный механизм
net.inet.icmp.bmcastecho=0 #защита от SMURF атак
net.inet.icmp.maskrepl=0 #не отдавать по icmp паску своей подсети
net.link.ether.inet.max_age=30 #переспрашиваем каждые 30 секунд mac адреса в своём arp пространстве
net.inet.ip.ttl=226 #почему бы не поставить ttl побольше ;)
net.inet.tcp.drop_synfin=1 #небольшая защита
net.inet.tcp.syncookies=1 #от доса
kern.ipc.somaxconn=32768 #увеличиваем размер очереди для сокетов
kern.maxfiles=204800 #увеличиваем число открытых файловых дескрипторов
kern.maxfilesperproc=200000 #кол-во ф.д. на каждоый процесс
kern.ipc.nmbclusters=524288 #увеличиваем число сетевых буферов
kern.ipc.maxsockbuf=2097152 #
kern.random.sys.harvest.ethernet=0 #не использовать трафик и прерывания
kern.random.sys.harvest.interrupt=0 #как источник энтропии для random'a
net.inet.ip.dummynet.io_fast=1 #заставляет dummynet работать побыстрее
net.inet.ip.dummynet.max_chain_len=2048 #
net.inet.ip.dummynet.hash_size=65535 #
net.inet.ip.dummynet.pipe_slot_limit=2048 #
net.inet.carp.preempt=1 #включаем carp
net.inet.carp.log=2 #пишем логи карпа
kern.ipc.shmmax=67108864 #макс. размер сегмента памяти
net.inet.ip.intr_queue_maxlen=8192 #размер очереди ip-пакетов
net.inet.ip.fw.one_pass=0 #пакеты, прошедшие пайпы не вылетают из фаервола, а дальше идут по нему
dev.igb.0.enable_lro=0 #отключение large receive offloading 
dev.igb.1.enable_lro=0
dev.igb.0.enable_aim=0 #так нет аномалий с работой сетевушек
dev.igb.1.enable_aim=0
dev.igb.0.rx_processing_limit=2048 #адаптивный polling, разрешаем прерывания с сетевухи при достижении значения
dev.igb.0.flow_control=0 #отключение контроля потока
dev.igb.1.rx_processing_limit=2048
dev.igb.1.flow_control=0

Ссылки:
Intel® Gigabit ET Dual Port Server Adapter (чип 82576) и FreeBSD
Немного об использовании igb во FreeBSD 8
Тюнинг FreeBSD 8.2. Часть 2. Производительность.
FreeBSD 8 igb баги 
Производительный роутер на FreeBSD 


четверг, 1 сентября 2011 г.

dump restore

Необходимость дампить систему рано или поздно появляется у Всех. Я не исключение...
Преимущестов утилит dump/restore в том, что они есть на любой юникс системе.
На основе этих утилит постоено достаточно много различных систем бекапирования, которые по сути являются просто надстройками над ними.
Я рассмотрю, как сделать дамп с какого либо раздела на FreeBSD.

snapshot UFS2 во FreeBSD

Начиная с FreeBSD 5.0 появилась возможность генерация мгновенных копий файловых систем.
Я приведу пару способов, как это можно сделать.
Рассмотрим их.

вторник, 23 августа 2011 г.

Установка Cacti (краткая заметка)

Cacti - система мониторинга, основным назначением является сбор данных по SNMP и отображение в графическом виде.
Приведу краткую заметку по установке cacti на freebsd.

воскресенье, 14 августа 2011 г.

Мелкие полезности в shell

Иногда нужно что-то сделать, находишь простое решение - однострочную команду
Лучше себе его записать....
Вот здесь и будут храниться вот такие вот мелочи

Получение номеров вланов и сортировка их по возрастанию (FreeBSD)
ifconfig | grep vlan: | awk '{print $2}' | sort -n

Просмотр лога апача, чтоб определить, кто-то пытается получить доступ, полезно для определения различных видов атак. Выводит количество конектов и соответствующий ip.
Аналогичным образом можно анализировать не только логи апача..
tail -5000 /var/log/apache2/access_log | awk '{print $1}' | sort | uniq -c | sort -r | head
206    71.126.170.114
198    85.228.153.247
196    78.168.184.111
...

понедельник, 1 августа 2011 г.

Использование sftp+chroot из openssh в качестве альтернативы ftp-серверу

Потребовалось создать безопасный файлообменник.
Требования:
1. Безопасность.
2. Простота использования
3. Возможность использовать на различных ОС

Всем этим критериям больше всего удовлетворяет sftp.

SFTP расшифровывается как SSH File Transfer Protocol — SSH-протокол для передачи файлов. Он предназначен для копирования и выполнения других операций с файлами поверх надёжного и безопасного соединения. Как правило, в качестве базового протокола, обеспечивающего соединение, и используется протокол SSH2, но это не обязательно.
OpenSSH (открытый безопасный shell) — набор программ, предоставляющих шифрование сеансов связи по компьютерным сетям с использованием протокола SSH.
  Он был создан под руководством Teo de Raadt (Тэо де Раадт) как открытая альтернатива проприетарного ПО от SSH Communications Security. В набор программ OpenSSH входит и sftp-сервер. Также была добавлена возможность помещать отдельных пользователей в изолированное окружение(chroot).

среда, 27 июля 2011 г.

Бекап блога

   Периодически на своем блоге делаю различные изменения.
В очередной раз задумался о полном бекапе своего блога.
Google конечно мощная компания, но лишний бекап не помешает, т.к. это может спасти информацию, которой вы наполняли свой блог в течение многих часов.
    Есть разные методы сохранения блога (или Backup): например экспорт блога в настройках блоггера (нужно зайти в "Панель инструментов" далее Настройки/Основные сведения/Экспорт блога). Но при данном типе копирования не сохраняются фото и комментарии. Комментарии очень важны их нельзя лишаться ни в коем случае.
 Поэтому мне понадобился другой вариант.   В ходе непродолжительных поисков была найдена специальная утилита blogger backup.

Подсветка синтаксиса в Blogger.com

Озадачился сделать нормальную подсветку синтаксиса скриптов, конфигов и т.д.
В ходе поисков наткнулся на хорошую статью   Подсветка синтаксиса на Blogger.com на блоге http://rootger.blogspot.com. Спасибо автору!

Эта заметка является дубляжем с небольшими изменениями (заметка для себя).

вторник, 26 июля 2011 г.

fail2ban - базовая настройка

fail2ban - утилита, которая парсит логи и выполняет определенные действия на некоторые повторяющиеся события в течении какого-то времени..
Например за несколько неудачных попыток авторизоваться по ssh за некоторое время забанить источник.
Очень полезна для предотвращения перебора паролей и различных зловредных действий.
Методов блокировки также несколько: ipfw, iptables, hosts.deny .
Есть уже много готовых примеров для ssh, exim, postfix,cyrus-imap, apache, lighttpd, named и тд (!!!). Можно их составлять и самим, для этого Вам понадобится некоторое знание регулярных выраженией в python. Сама настройка очень проста и логична.
Рассмотрю базовую установку на FreeBSD и настройку блокировки брутфорса ssh.

четверг, 9 июня 2011 г.

Apache - Failed to enable the 'httpready' Accept Filter

Стандартная ошибка при попытке первый раp стартануть apache на FreeBSD

# apachectl start
[Thu Jun 09 15:45:08 2011] [warn] (2)No such file or directory: Failed to enable the 'httpready' Accept Filter
# kldload accf_http
Решается очень просто...
Если Вы не планируете использовать фильтр, то можно добавить в httpd.conf строчки:

 AcceptFilter http none 
 AcceptFilter https none
Если он Вам нужен, то добавляем в /boot/loader.conf:

accf_http_load="YES"
Это сработает после только перезагрузки сервера. Чтоб подгрузить модуль без перезагруки, нужно выполнить клманду:

kldload accf_http
Все :), теперь можно запускать apache

пятница, 3 июня 2011 г.

SSH авторизация по ключам.

Одним из самых надежных способов аторизации и одновременно удобных является авторизация по ключам.
Естественно при условии безопасного хранения приватных ключей (а для этого можно использовать например программу Truecrypt, вот заметка по использованию..)
Такой способ авторизации часто используется в скриптах, например с такими программами как sftp, scp и др.

пятница, 27 мая 2011 г.

nice Badly formed number

При использовании утилиты nice в csh выдавалась ошибка. Это же сообщение и выдавалось и на пример из man

# nice -n 5 date
nice: Badly formed number.
Выяснилось, что данный вариант действует в sh, а для оболчек csh,tcsh актуален следующий вариант:

# nice +5 date
# nice -5 date

вторник, 17 мая 2011 г.

Cannot dump. Device not defined or unavailable.

Сегодня при возникновении Kernel panic обнаружил что не используется swap.

Cannot dump. Device not defined or unavailable.
Как оказалось по-умолчанию в FreeBSD 8.x отключено создание дампов. Для решения этой проблемы нужно было добавить всего лишь одну строку в /etc/rc.conf:

dumpdev="AUTO"
P.S. для применения параметра требуется перезагрузка.

воскресенье, 8 мая 2011 г.

Видео курсы информационных технологий и не только.

Яндекс провели курсы информационных технологий, видео и презентационные материалы они выложили по этой ссылке.(Есть возможность смотреть с сайта)

Первая часть курса состояла из восьми лекций, на которых мы рассказали про :
   - операционные системы;
   - архитектуру ЭВМ;
   - устройство GNU/Linux;
   - системы хранения данных;
   - файловые системы;
   - сети и протоколы;
   - виртуализацию;
   - безопасность.

lektorium.tv
Лекции ведущих лекторов России в свободном доступе по разным направлениям!
Там опубликован весь архив Computer Science клуба.
Кроме того, была организована запись всех лекций на хорошие камеры и микрофоны.
(Есть возможность смотреть с сайта)


hasbrains.ru
Скринкасты по различнвм направлениям в ИТ.
На данный момент (12.06.2012), доступны скринкасты по Ruby, Autocad, Android.
Ресурс новый но весьма перспективный.
Надеюсь в ближайшем будущем появится больше полезных скринкастов.



P.S. Рекомендую посмотреть...

Ссылки:
 Лекции yandex
 lektorium.tм - Лекции ведущих лекторов России в свободном доступе (не только ИТ)

понедельник, 18 апреля 2011 г.

Установка PostgreSQL на FreeBSD


PostgreSql - очень мощная свободная объектно-реляционная система управления базами данных (СУБД).
Существует в реализациях для следующих платформ: Linux, Solaris/OpenSolaris, Win32, Mac OS X, FreeBSD, QNX 4.25, QNX 6
PostgreSQL базируется на языке SQL и поддерживает многие из возможностей стандарта SQL:2003
Сильными сторонами PostgreSQL считаются:
 - поддержка БД практически неограниченного размера;
 - мощные и надёжные механизмы транзакций и репликации;
 - расширяемая система встроенных языков программирования: в стандартной поставке поддерживаются PL/pgSQL, PL/Perl, PL/Python и PL/Tcl; дополнительно можно использовать PL/Java, PL/PHP, PL/Py, PL/R, PL/Ruby, PL/Scheme и PL/sh, а также имеется поддержка загрузки C-совместимых модулей[5];
 - наследование;
 - легкая расширяемость.

В общем это очень достоя СУБД для корпоративных приложений.
Рассмотрим установку на FreeBSD

пятница, 8 апреля 2011 г.

Wake-on-LAN

Wake-on-LAN (WOL; в переводе с англ. — «пробуждение по [сигналу из] локальной сети») — технология, позволяющая удалённо «пробудить» (включить) компьютер посредством отправки через локальную сеть специальным образом сформированного пакета данных (так называемого «magic packet» — «„волшебного“ пакета», см. ниже)
Принцип работы
Управляемый компьютер находится в дежурном режиме (англ. stand-by) и выдаёт питание на сетевой адаптер. Сетевой адаптер находится в режиме пониженного энергопотребления, просматривая все пакеты, приходящие на его MAC-адрес, и ничего не отвечая на них. Если одним из пакетов окажется magic packet, сетевой адаптер выдаст сигнал на включение питания компьютера. На встроенных сетевых эту опцию нужно включать в BIOS.
Поднять хост возможно только в одном бродкаст сегменте.

четверг, 7 апреля 2011 г.

Установка FreeBSD с корнем на ZFS, используя GPT

В версии FreeBSD 8.0 и выше ZFS уже является стабильным, поэтому уже можно смело переходить на нее. В данном случае установка идет на один жесткий диск, поэтому дополнительные возможности и преимущества ZFS рассмотрены не будут.

Вообще говоря для ZFS рекомендуется более 8Гб оперативной памяти, чтобы она смогла себя раскрыть.
Приходится настраивать ZFS на машинах с маленьким объемом оперативной памяти например с 1Гб и даже меньше.
Минимальный объем который необходим для работы ZFS это 512Мб.
В статье приведены параметры для слабых машин. В противном случае система может уходить в kernel panic.

Причины перехода серверов на ZFS(для меня):

  • Скорость работы выше в ZFS . по сравнению с UFS (посмотреть можно здесь)
  • Нет необходимости делать fsck -y в Single User mode (честно говоря уже достало), да и время поднятия сервера зачастую очень критично.
  • Контрольная сумма блоков + использование принципа транзакций - как результат большая надежность данных.
  • Возможность быстрого клонирования на другой диск системы.
  • При данной интсаляции, все равно в какой SATA разъем Вы втыкнули свой HDD. Также без разницы в каком из режимов работает SATA (AHCI/IDE) 

Встала задача перенести роутер на новое железо, решил в качестве файловой системы выбрать ZFS. За основу взял руководство.
Установка выполняется FreeBSD 8.2 RELEASE на HDD.

Поехали...

понедельник, 4 апреля 2011 г.

Обновление прошивки на свитчах Foxgate

Опишу вкратце обновление прошивки свитча Foxgate s6224-s4.

вторник, 29 марта 2011 г.

PPPoE client FreeBSD

Задача простая - настроить соединение с вышестоящим провайдером по PPPoE.
Адрес получается по DHCP (динамически).
Пример настройки стандартными средствами FreeBSD

пятница, 25 марта 2011 г.

Error: Vulnerability check disabled, database not found

ОС FreeBSD 8.1 amd64.
Столкнулся неожиданно для себя с такой вот ошибкой

Vulnerability check disabled, database not found

Ошибка возникала при попытке установить порты.
Погуглив немного, нашел решение нужно поставить portaudit.
Из порта ставиться не захотела, вылетала с этой же ошибкой, пришлось поставить пакетом
# pkg_add -r portaudit

После чего, скачиваем базу уязвимостей с серверов FreeBSD
# portaudit -Fd
auditfile.tbz                                 100% of   67 kB   64 kBps
New database installed.
Database created: Fri Mar 25 17:00:01 EET 2011
Вот фактически и все решение проблемы :)

 Можно также посмотреть, какие есть уязвимости, что нужно обновить в системе.
# portaudit -a
0 problem(s) in your installed packages found.

среда, 23 марта 2011 г.

NTPD

Настройка сервера для синхронизации времени в сети, не особенно сложна.
Настраивать будем на FreeBSD. Также опишу пару команд по проверке сервера.

понедельник, 28 февраля 2011 г.

Создание vlan’ов

В данной заметке будет описано, как настроить vlan'ы на разных системах.

пятница, 25 февраля 2011 г.

SNMPv3

Про SNMPv3
SNMP – протокол прикладного уровня. Он предназначен для обмена информацией между сетевыми устройствами. При помощи этого протокола, сетевой администратор может производить анализ сетевого оборудования, находить и решать множество сетевых проблем. В Декабре 1997 года с выходом SNMPv3, пользователям стали доступны новые службы, такие как: ограничение доступа, защита данных и аутентификация пользователя<* см. стандарты RFC 2271-2275>. Кроме этого, стоит отметить, что SNMPv3 перенял модульную архитектуру от своих предшественников. Это обеспечивает поддержку предыдущих версий SNMPи, не смотря на то, что SNMPv1 и SNMPv2 не поддерживают аутентификацию и шифрование, у Вас будет возможность управления устройствами, которые поддерживают эти версии.
      Для каждого сетевого устройства пароль преобразуется в некоторый уникальный ключ. Это обеспечивает дополнительную безопасность т.к. даже в том случае, если ключ будет перехвачен, злоумышленник получит доступ только к одному сетевому устройству. Для шифрования пароля используется алгоритм MD5, но разработчики видимо решили, что это не обеспечит достаточной сохранности пароля и поэтому блок данных (PDU) дважды хэшируется при помощи двух разных ключей, которые в свою очередь генерируются из закрытого ключа. Позже, первые 12 октетов используются как код аутентификации сообщения, который добавляется к сообщению. Такой же процесс приходится производить на другой стороне, но только в обратном порядке. Несмотря на всю сложность и энергоемкость процесса передачи данных между сущностями SNMP, по мнению разработчиков, алгоритм шифрования (DES) на самом деле не обеспечивает достаточной защиты информации, поэтому в дальнейшем предполагается использовать другие алгоритмы. Например, алгоритм Диффи-Хиллмана (Diffie-Hillman)

           Разработчиками предусмотрено 3 уровня безопасности:
- noAuthNoPriv – пароли передаются в открытом виде, конфиденциальность данных отсутствует.
- authNoPriv – аутентификация без конфиденциальности. Большинство пользователейиспользует именно этот уровень т.к уровень защищенности в нем уже достаточно высок, а сетевые устройства не перегружаются шифрованием данных.
- authPriv – аутентификация и шифрование. Максимальный уровень защищенности. Для начала нужно поставить net-snmp.

Дальше я опишу, как настроить SNMP3 на разных системах и умных свитчах.

четверг, 24 февраля 2011 г.

Сброс пароля PostgreSQL

1. Ищем конфигурационный файл pg_hba.conf и правим его (оставляем только одну строчку, остальное коментим):
Примечание: CetnOS - в /var/lib/pgsql/data
local all postgres trust
2. Перезапускаем сервер .
На CentOS -

service postgresql restart

3. Меняем пароль:
# psql -U postgres template1
Меняем пароль

alter user postgres with password 'newpassword';
4. Меняем строчку в конфигурации обратно 5. Рестартуем сервер и подключаемся 24.02.2011

понедельник, 7 февраля 2011 г.

Тюннинг PostgreSQL 8.x

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

вторник, 1 февраля 2011 г.

Чтение BSD разделов из-под Windows

    Иногда возникает необходимость порабоать с BSD разделами из под Windows.
По умолчанию Windows не умеет рабоать с этими разделами, впрочем как и с друкиги файловыми системами *nix.
Есть хороший проект "FFS File System Driver for Windows" http://ffsdrv.sourceforge.net/  который позволяет примонтировать UFS раздел под Windows (спаcибо его авторам, выручил в тяжелый момент...)
Описание.
      Это программка для Win систем состоящая из драйвера и графической оболочки, через которую и осуществляется монтирование/размонтирование разделов. Поддерживаются FFSv1 и FFSv2.
    Сразу должен огорчить: драйвер подключает раздел в режиме read-only, так что для обмена фалами между ОС по прежнему придется пользоваться FAT разделами.
    Разделы именно монтируются, т.е. подключается новый локальный диск (в терминологии Win). В графическом интерфейсе не так много настроек: выбор устройства (FFS Disk, нумерация с 0); выбор раздела (FFS Partition, нумерация с 1); далее выбирается label (Disklabel, нумерация с 0); точка монтирования (буква диска). Есть опция автоматически монтировать раздел при загрузке ОС.
    Так выглядит интерфейс:

воскресенье, 30 января 2011 г.

UTF8 FreeBSD в консоли

Почему utf8:
- это удобно
- это кроссплатформенно (я, например, работаю на многих разных системах: freebsd, linux, windows и хочу везде иметь возможность беспроблемного доступа к своим файлам)
- utf8 это родная кодировка во многих системах (linux), а также в файловых системах.
- в базах данных давно самая беспроблемная кодировка - utf8 (особенно когда есть необходимость работы с несколькими языками)
- я думаю рано или поздно во freebsd все равно будет utf8 по умолчанию.

Изменения не затрагивают системную консоль!

MySQL, часто используемые команды (базовые)

Для сисадмина иногда необходимо "поковырять" базы данных.
У меня эта необходимость возникаетне так часто, поэтому часто забываю синтаксис запросов и некоторые команды, а это маленькая памятка..

понедельник, 24 января 2011 г.

Запись образа memstick на flash под Windows

CD и DVD постепенно умирают и как-то надоело тратить деньги в очередной раз для покупки "болванки". Флешка всегда при мне, поэтому опишу вкратце, записать образ memstick FreeBSD на нее. Есть полезная утилита dd под *nix, ее также написали и под Windows. Собственно она нам и потребуется dd for windows
и например 8.0-RELEASE-i386-memstick.img

суббота, 15 января 2011 г.

Сайты с электронными книгами

Библиотека Либрусек Удобная. Простая, достаточно ёмкая. Лучшая из бесплатных и не требующих регистрации библиотек на сегодняшний день.

Библиотека Максима Мошкова Есть ещё люди, которые о ней не знают?

Библиотека FictionBook

Natahaus

Мир книг
 
Фонд книг (можно качать без регистрации)

Либрус. Гора знаний

All-Ebooks

Тоже какая-то библиотека

Кнужек нет - так видимо оно называется

Онлайн библиотека

http://www.e-reading.org.ua/ - Онлайн чтение

Библиотека Альдебаран - последнее время не пополняется, новинки можно только купить

Библиотека армянской литературы

Небольшая спортивная библиотека

Электронная полнотекстовая Библиотека Ихтика

Книги, учебники и самоучители по иностранным языкам. Европейские, восточные, азиатские, стран СНГ, и др.

Библиотека Куб Книги по психологии, религии, о саморазвитии, психотерапии, здоровью и т.п.

Библиотека по боевым искусствам

_www.engenegr.ru_ - ссылкой не помечаю, ибо там при входе выскакивает порноокошко. Но если уж деваться некуда…

_http:c-books.info/_ - тоже что-то порнографическое * _http:goldbook.ws/_ - и здесь они тоже

Технические библиотеки

Техническая Библиотека

Электронная библиотека связи: книги и наиболее важные стандарты

Компьютерный и инженерный анализ. Литература

http://www.free-books.com.ua/  - Книги по ИТ

RFC-Editor - не то чтобы библиотека, но для знающих людей просто кладезь информации

Электролабораторя - нормативно-техническая литература по электрооборудованию.

Библиотека технической литературы - ТАМ есть ГОСТы!

Буквари для инженеров

PC-Book. Компьютерная литература

Статьи по электронике

Ресурс, где можно скачать ЕСКД, ЕСТД, СПКП, ЕСПД и прочее прочее - Много ГОСТов, но часть из них в неудобных форматах, например - tif… ;) Но на безрыбье!…

Сопряжение компьютера с внешними устройствами. Библиотека

Для изучающих английский

Книги на английском - я, например нашёл там Хэммингуэя в подлинике

Книги и учебники

Free eBooks - Project Gutenberg. Книг очень много. Есть и на русском! Работает поиск, есть разбивка по авторам и по языкам. Книги в основном художественные. Форматы книг - самые разные. От простого текста до TeX и PDF.

Зарубежные
Computer-books.us - Free computer books Подборки ссылок на библиотек

http://del.icio.us/CYPU/library?setcount=100

Каталог ссылок на технические библиотеки.

Поисковики по книгам

http://www.ebdb.ru


Добавлено себе в качестве закладки, взято здесь

UPDATE 22.05.2011 

четверг, 6 января 2011 г.

Шифрование данных - TrueCrypt

Часто возникает необходимость зашифровать свои данные, причем надежным способом.
В некоторых продуктах программисты специально оставляют возможность расшифровать данные альтернативным способом за вознаграждение или на случай если клиент забыл пароль, а там очень важные данные...
Данные продукты изначально не очень пригодны для хранения действительно важных данных.
Большинство продуктов являются платными, что тоже не очень интересно...
Достаточно давно нашел программу - TrueCrypt, которая удовлетворит наверное любым требованиям, предъявляемым к такому ПО, причем она бесплатная.


Чем мне понравился TrueCrypt:
- бесплатный
- Мультиплатформенный (Windows, Linux, Mac)
- Есть разные версии 32/64 bit, GUI/Console
- поддерживает различные виды шифрование, в том числе и несколькими алгоритмами
- может шифровать разделы жесткого, создавать шифрованные контейнеры
- Умеет делать скрытые тома (внутри уже существующего тома создается второй том, доступ к нему можно получить введя пароль для скрытого тома)
- Есть нормальная портативная версия
- Отказоустойчивость - при резком вырубании света с примонтированным томом информация остается в целости и сохранности (происходило и не раз)
- Есть возможность зашифровать системный диск
- Разные виды доступа - пароль/ключ. Можно также использовать и токены. Я описал эту возможность в статье TrueCrypt + eToken (правда описание для Windows)
- Есть файлы локализации и справка на русском (нужно скачивать отдельно)
- Проект активно развивается.

вторник, 4 января 2011 г.

Регулярные выражения grep

Иногда необходимо использовать регулярные выражения в различных скриптах.
Приведу некоторые полезные регулярки, которые используются в том числе и с обычным grep
Пара ключей для grep
-E, --extended-regexp PATTERN - интерпретировать PATTERN как расширенное регулярное выражение
-o, --only-matching - выводит только то, что соответствует регулярному выражению
Выбираем IP адреса

grep -E -o '[0-9]{1,3}(\.[0-9]{1,3}){3}'
Выбираем MAC адреса

grep -E -o '[0-9,aAbBcCdDeEfF]{1,2}(\:[0-9,aAbBcCdDeEfF;]{1,3}){5}'
Секреты регулярных выражений (regular expressions): Часть 1. Диалекты и возможности. Составление регулярных выражений
Небольшой пример использования регулярных выражений grep

понедельник, 3 января 2011 г.

Удаление старых ядер из системы (Debian)

При периодическом обновлении системы, начинают скапливаться старые версии ядер, которые висят в загрузке Grub и занимают место на Вашем HDD.

Настройка NFS

Сетевая файловая система (Network File System – NFS) служит для обеспечения доступа компьютерам сети к общим каталогам на сервере.

воскресенье, 2 января 2011 г.

Выбор лучшего репозитория для Debian

Я пакеты обновляю часто и как-то надоело ждать, пока они скачаются (благо с инетом проблем нет)
Захотел найти более быстрый источник пакетов, нашел простое решение - утилита apt-spy.
Для обладателей скоростного доступа в инет это особенно актуально!
Замечу, что тестирование отнимает некоторое время и кушает некоторый трафик - имейте это в виду.