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

Wake-On-Lan


Включаем поддержку WoL в BIOS на ведомом компьютере. Это может быть одноименный пункт наподобие Wake On Lan Enable, либо Power On By PCIE и т.д., может также быть, что этот режим в BIOS не меняется, а материнская плата поддерживает его по умолчанию.
Чтобы определить, поддерживает ли сетевая карта WoL, - загружаем ведомый компьютер набираем в консоли
ethtool eth0
Получаем результат:
Settings for eth0:
Supported ports: [ MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: MII
PHYAD: 1
Transceiver: external
Auto-negotiation: on
Supports Wake-on: g
Wake-on: d
Link detected: yes
Нас интересуют строчка Supports Wake-on и Wake-on. Первая показывает доступные режимы сетевого адаптера на пробуждение (g - как раз пробуждение по Magic Pocket), а вторая - текущий режим (d означает выключенный WoL).

Для того, чтобы перевести сетевую карту в режим WoL, используется команда
ethtool -s eth0 wol g
Для выключения режима WoL
ethtool -s eth0 wol d
Сетевой адаптер может поддерживать сохранение состояния, в которое его перевели, но может и сбрасывать (чаще всего на d), поэтому при каждой загрузке необходимо будет устанавливать нужный режим WoL. Добавляем в /etc/conf.d/net следующие строки - они будут включать режим WoL на всех сетевых адаптерах, которые его поддерживают:
preup() {
if ethtool $1 | grep "Supports Wake-on:" | grep g >/dev/null;
then
ethtool -s $1 wol g
fi
}

Для пробужения компьютера используем утилиту wakeonlan на ведущем компьютере
wakeonlan MAC-адрес

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

воскресенье, 19 декабря 2010 г.

Postfix, IMAP, antispam

Скопипастил отсюда

POSTFIX

Установим нужные для работы почтового сервера пакеты.
apt-get install postfix libsasl2 libsasl2-modules sasl2-bin cyrus-imapd-2.2 cyrus-pop3d-2.2 cyrus-admin-2.2
Во время первоначальной настройки postfix укажите конфигурацию для Интернет-сайта (Internet Site). На вопрос об имени почтового сервера-оставьте вариант по-умолчанию или укажите свой. В нашем случае это было mailserver.test.ru

Настроим сервер авторизации saslauthd на использование базы данных паролей sasldb2. Для этого отредактируем файл /etc/default/saslauthd:

mcedit /etc/default/saslauthd:
START=yes
MECHANISMS="sasldb"

Запустим сервис командой:
/etc/init.d/saslauthd start
Сейчас проверим правильно ли он работает, но для начала необходимо добавить хотя бы одного пользователя.
mailserver:~# saslpasswd2 test
Password:
Again (for verification):
mailserver:~# sasldblistusers2
test@mailserver: userPassword
mailserver:~# testsaslauthd -u test -p test
Если в результате этих манипуляций вы получили сообщение "0: OK "Success.", значит все в порядке и можно продолжать. Если же авторизация не прошла - смотрите файл /var/log/auth.log и повторяйте, повторяйте и ещё раз повторяйте все шаги, пока не получится нужный результат.

У почтового сервера postfix есть одна особенность - после запуска он работает в chroot окружении, которое находится в папке /var/spool/postfix/.
Это сделано из соображений безопасности, однако несколько усложняет сам процесс настройки. Так как postfix общается с остальными приложениями в большинстве случаев посредством socket'ов, и выше своего chroot окружения выбраться не может, то эти сокеты приходится переносить в доступную postfix-папку.

Учитывая то, что для авторизации пользователей postfix будет использоваться демон saslauthd, нам нужно перенести его socket в рабочую директорию нашего сервера /var/spool/postfix/. Самый простой способ сделать это заключается в монтировании в нужную папку директории с уже созданным сокетом демона saslauthd.

Делается это редактированием файла /etc/fstab.
mcedit /etc/fstab:
/var/run/saslauthd /var/spool/postfix/var/run/saslauthd none rw,bind 0 0
Не забудьте поставить [Enter] после последней строки. Также нужно не забыть создать папку, куда мы смонтируем сокет демона авторизации.
mkdir -p /var/spool/postfix/var/run/saslauthdmount /var/run/saslauthd
Сейчас сконфигурируем postfix для использования sasl авторизации.
mcedit /etc/postfix/main.cf:

smtpd_sasl_local_domain =
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_authenticated_header = yes
smtpd_sasl_application_name = smtpd
Существует и упрощенный вариант редактирования этого файла командой postconf –e "smtpd_sasl_auth_enable = yes" и т.д.Сейчас мы запретим отсылать почту через наш SMTP шлюз без авторизации. Для этого создадим файл /etc/postfix/sasl/smtpd.conf со следующим содержимым.
pwcheck_method: saslauthd
mech_list: PLAIN LOGIN
Перезапустим наш postfix сервер и внимательно просмотрим следующие файлы на предмет ошибок:

* /var/log/mail.err
* /var/log/mail.info
* /var/log/mail.warn
* /var/log/mail.log.
Если все чисто, сухо и гладко - обратимся к утитиле telnet, для того, чтобы подключиться к нашему серверу.
mailserver:~# telnet localhost 25

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 mailserver.test.ru ESMTP Postfix (Debian/GNU)

EHLO http://www.x-drivers.ru/

250-mailserver.test.ru
250-PIPELINING
250-SIZE 10240000
250-VRFY250-ETRN
250-STARTTLS
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME250 DSNQUIT
Connection closed by foreign host.
Если у вас нечто похожее - продолжаем, если же подключение не удалось - проверяем где вы вставили лишний пробел или нечаянно удалили символ.

Для того, чтобы "подружить" saslauthd и postfix необходимо выполнить следующее:
adduser postfix sasl

CYRUS

В нашем случае cyrus будет заниматься получением почты от postfix, раскладыванием ее по папкам и предоставлению к ней доступа пользователям. Отредактируем файл /etc/imapd.conf.
mcedit /etc/imapd.conf :

admins: cyrus
allowplaintext: yes
sasl_mech_list: PLAIN
sasl_pwcheck_method: saslauthd auxprop
sasl_auxprop_plugin: sasldb
Обратите внимание, что cyrus так же, как и saslauthd, придется взаимодействовать с postfix, поэтому их нужно сделать доступными друг другу. Воспользуемся уже известным механизмом:
mcedit /etc/fstab :

/var/run/cyrus /var/spool/postfix/var/run/cyrus none rw,bind 0 0
Не забываем создать папки для cyrus.
mkdir -p /var/spool/postfix/var/run/saslauthd
mkdir -p /var/spool/postfix/var/run/cyrus
mount /var/spool/postfix/var/run/saslauthd
mount /var/spool/postfix/var/run/cyrus
mount /var/run/cyrus
Сейчас предоставим возможность cyrus забирать почту у postfix. Отредактируем файл /etc/postfix/main.cf:
mailbox_transport = lmtp:unix:/var/run/cyrus/socket/lmtp
Добавим почтовый сервер в группу lmtp:
addgroup lmtp
adduser postfix lmtp
И выполним следующее:

dpkg-statoverride --remove /var/run/cyrus/socket
dpkg-statoverride --force --update --add cyrus lmtp 750 /var/run/cyrus/socket
Добавим еще одну опцию:
local_recipient_maps =
В случае с pam-авторизацией по логинам и паролям системных пользователей все бы работало без проблем. Но когда имена и пароли хранятся в формате, отличном от системного, необходимо указать данную опцию. Она означает "принимать письма для любого адресата". Это, конечно, не лучший выход, однако лучшего пока найти не удалось.Добавим пользователя cyrus в нашу базу учетных записей:
saslpasswd2 -c cyrus
Введите пароль, когда вас об этом попросят, и перезапустим наши демоны:

/etc/init.d/postfix start
/etc/init.d/cyrus2.2 restart
/etc/init.d/saslauthd restart
Если вы без ошибок сделаете все, что было описано выше, то теоретически к этому моменту уже можете принимать и отправлять письма, создавать и удалять папки на IMAP-сервере, устанавливать квоты и права доступа на папки средствами утилиты cyradm.К примеру, можно создать скрипт, который будет создавать пользователю папки Sent, Trash, Drafts, Spam средствами утилиты cyradm.Так как все дальнейшие действия по настройке в целях тестирования потребуют отсылать и принимать почту, приведем краткую инструкцию по созданию почтовых аккаунтов:

saslpasswd2 –c <имя пользователя>

cyradm –user cyrus localhost

localhost>cm user.<имя пользователя>
localhost>cm user.<имя пользователя>.INBOX
localhost>cm user.<имя пользователя>.Sent
localhost>cm user.<имя пользователя>.Draft
localhost>cm user.<имя пользователя>.Trash
При желании, можно задать квоты на количество места в папках и другие параметры, с которыми можно познакомиться набрав "?" или "help" в утилите cyradm.
Если вы собираетесь использовать почтовый сервер только внутри организации и в Интернет он смотреть не будет, то на этом настройку можно и оставить.

Amavisd-new, SpamAssassin и ClamAV

Приступим к установке Amavisd-new, SpamAssassin и ClamAV.
apt-get install amavisd-new spamassassin clamav clamav-daemon zoo unzip unarj bzip2
Внесем некоторые изменения в конфигурационные файлы amavisd:

mcedit /etc/amavis/conf.d/50-user

$forward_method = 'smtp:127.0.0.1:10025'; # where to forward checked mail
$notify_method = $forward_method; # where to submit notifications
$virus_quarantine_to = 'undef';
$sa_local_tests_only = 0;@inet_acl = qw( 127.0.0.1 );

mcedit /etc/amavis/conf.d/20-debian_defaults

$final_virus_destiny = D_REJECT; # (defaults to D_BOUNCE)
$final_banned_destiny = D_REJECT; # (defaults to D_BOUNCE)
$final_spam_destiny = D_PASS; # (defaults to D_REJECT)
$final_bad_header_destiny = D_PASS; # (defaults to D_PASS), D_BOUNCE suggested

$viruses_that_fake_sender_re = new_RE(
qr'nimda|hybris|klez|bugbear|yaha|braid|sobig|fizzer|palyh|peido|holar'i,
qr'tanatos|lentin|bridex|mimail|trojan.dropper|dumaru|parite|spaces'i,
qr'dloader|galil|gibe|swen|netwatch|bics|sbrowse|sober|rox|val(hal)?la'i,
qr'frethem|sircam|be?agle|tanx|mydoom|novarg|shimg|netsky|somefool|moodown'i,
qr'@mm|@MM', # mass mailing viruses as labeled by f-prot and uvscan
qr'Worm'i, # worms as labeled by ClamAV, Kaspersky, etc
[qr'^(EICAR|Joke.|Junk.)'i => 0],
[qr'^(WM97|OF97|W95/CIH-|JS/Fort)'i => 0],
[qr/.*/ => 1], # true by default (remove or comment-out if undesired)
);

#$QUARANTINEDIR = "$MYHOME/virusmails";

$QUARANTINEDIR = undef;

$sa_tag_level_deflt = -999; # add spam info headers if at, or above that level
$sa_tag2_level_deflt = 6.3; # add 'spam detected' headers at that level
$sa_kill_level_deflt = 999; # triggers spam evasive actions
Добавим пользователя clamav в группу amavis:
adduser clamav amavis
Сейчас заставим postfix отдавать почту для проверки антивирусом. Отредактируйте файл /etc/postfix/master.cf:

mcedit /etc/postfix/master.cf :

smtp-amavis unix - - n - 2 smtp

-o smtp_data_done_timeout=1200
-o smtp_send_xforward_command=yes
-o disable_dns_lookups=yes

127.0.0.1:10025 inet n - n - - smtpd

-o content_filter=
-o local_recipient_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_client_restrictions=
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks=127.0.0.0/8
-o strict_rfc821_envelopes=yes
-o smtpd_error_sleep_time=0
-o smtpd_soft_error_limit=1001
-o smtpd_hard_error_limit=1000
Так же добавьте в конец /etc/postfix/main.cf:

content_filter=smtp-amavis:[127.0.0.1]:10024
receive_override_options = no_address_mappings
Перестартуйте его и посмотрите нет ли ошибок в лог-файле:

/etc/postfix/restart
tail /var/log/mail.log
ставим пакет dcc-client. Т.к. я его не нашёл в репозитариях Dibian, будем ставить его же от Ubuntu. Для этого находим его на сайте поиска пакетов для Ubuntu http://packages.ubuntu.com. пакет dcc-client, зависит от пакета dcc-common. Так что его тоже нужно закачать и установить. Находим его на том же сайте
Устанавливаем их:

dpkg -i dcc-client_1.2.74-2_i386.deb dcc-common_1.2.74-2_i386.deb
Установим ещё несколько инструментов и настроим spamassassin:

apt-get install razor pyzor
Отредактируем файл /etc/spamassassin/local.cf:

mcedit /etc/spamassassin/local.cf :
# rewrite_header Subject *****SPAM*****
# report_safe 1
# trusted_networks 212.17.35.
# lock_method flock

# dcc
use_dcc 1
dcc_path /usr/bin/dccproc
dcc_add_header 1
dcc_dccifd_path /usr/sbin/dccifd

#pyzor
use_pyzor 1
pyzor_path /usr/bin/pyzor
pyzor_add_header 1

#razor
use_razor2 1
razor_config /etc/razor/razor-agent.conf

#bayes
use_bayes 1
use_bayes_rules 1
bayes_auto_learn 1
Сейчас нужно разрешить spamassassin запускаться:

mcedit /etc/default/spamassassin :

ENABLED=1
И перезапустить нужные приложения:

/etc/init.d/postfix restart
/etc/init.d/amavis restart
/etc/init.d/clamav-daemon restart
/etc/init.d/spamassassin restart
Попробуйте создать пользователей и попробовать обменяться письмами. В том числе и письмами с прикрепленными exe-файлами. Если вы все правильно настроили – фильтр должен задержать такие файлы и прислать вам соответствующие уведомления.




вторник, 14 декабря 2010 г.

Работа с шарами самбы из под убунты

Сервер на Debian раб.станция на Ubuntu
для нормальной работы с шарой, в конфиг сабы прописываем
create mask = 666
force create mode = 666
directory mask = 777
force directory mode = 777

в fstab

//server/share /mnt/L cifs credentials=/root/.smbclient,iocharset,=utf8,filemode=0600,dir_mode=0700,_netdev 0 0

/root/.smbclient - тут инфа с логином паролем, такого вида
username=
password=

воскресенье, 12 декабря 2010 г.

Проблемы с русской кодировкой в рар-архивах (debian)

при открытии раровского архива, с русскими именами файлов и директорий, созданного в винде, вместо нормальных названий показываются зюки, а результате чего файлы могут не открываться. Лечится просто.
удаляем rar и unrar
скачиваем с официального сайта инсталяцию http://www.rarlab.com/download.htm
make install
все работает.

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

Автостарт VirtualBox

Делалось на LXDE.
виртуальную машину назвал virtualka
в /home/user/.config/autostart/ создаем файлик подобный другим. (имя virtualka.desktop)


[Desktop Entry]
Name=Virtualka
Comment=Virtual Machine
Exec=/usr/lib/virtualbox/VBoxManage startvm virtualka
OnlyShowIn=Gnome;LXDE;
Terminal=false
Type=Application
X-GNOME-Autostart-Phase=Applications
X-GNOME-AutoReastart=true



Сетевые на VirtualBox

ставим VirtualVox :)
понадобится пакет bridge-utils

в /etc/network/interfaces
auto br0
iface br0 inet static
bridge_ports eth1
address 172.16.0.1
netmask 255.255.255.0

в сетевых устройствах настроек виртуалки выбираем "Сетевой мост" и интерфейс br0, ну и соответственно назначаем ИП - 172,16,0,2

пятница, 26 ноября 2010 г.

Замена sethc.exe на cmd.exe

Если заменить sethc.exe на cmd.exe, то получим - пятью нажатиями Shift можно вызывать командную строку, а из неё iexplore.exe и так далее. Более того, эта комбинация работает и в окне входа в систему, при этом cmd запускается от SYSTEM (так как ни один пользователь не вошёл) и позволяет делать что угодно, в том числе создать нового пользователя и наделить его администраторскими правами — эдакий экспресс-взлом. Подменить изнутри файл, конечно, не удастся, но на то есть LiveCD. Такая вот уязвимость со многими применениями, работающая на всей линейке Windows, и прекрасная демонстрация случаев, в которых знание DOS может очень сильно пригодиться.





Microsoft Security Essentials + proxy

Для всех несчастных подобно мне похороненных под proxy. Для нормального обновления этого антивируса от Microsoft нужно:
1. Настроить прокси в IE
2. Открыть cmd.exe в режиме администратора (runas /user:administrator cmd.exe)
3. Выполнить команду:
* для windows vista / 7: netsh winhttp import proxy ie
* для windows xp: proxycfg –u

Все. Обновления работают.

среда, 24 ноября 2010 г.

Конвертация Word, PDF, SWF, HTML, PPT документов в Debian / Ubuntu

Украл тут

Unoconv - скрипт, написанный на python, позволяющий конвертировать документы различных форматов. Скрипт зависит от офисного пакета OpenOffice. Соответственно, форматы файлов поддерживаются только те, которые OpenOffice может импортировать / экспортировать.

Unoconv при старте пытается запустить экземпляр ooffice на локальной машине, если такового не было обнаружено. Кроме этого, возможно выполнять конвертацию на удаленной машине, для чего необходим экземпляр OpenOffice, запущенный на удаленной машине, и принимающий соединения из вне.

Скрипт присутствует в стандартных репозиториях. Для начала необходимо установить пакеты, обеспечивающие работу OpenOffice без оконной системы:

$ sudo aptitude install openoffice.org-headless \
openoffice.org-writer \
openoffice.org-impress

Далее, ставим сам скрипт конвертации:

$ sudo aptitude install unoconv

OpenOffice работает в клиент-серверном окружении. То есть, для конвертации необходимо:

* клиент, посылающий запросы на конвертацию документов серверу
* сервер, который будет обрабатывать запросы на конвертацию документов и отсылающий результат конвертации обратно клиенту

Примеры взаимодействия OpenOffice севрера/клиента

Запуск сервера и клиента на одной машине выполняется следующим образом:
# запуск в фоне сервер OpenOffice
$ unoconv --listener &
[1] 5867

# проверка наличия процесса
$ ps -ao args | grep soffice
soffice.bin -nologo -nodefault -accept=socket,host=localhost,port=2002;urp;StarOffice.ComponentContext

# конвертация презентации OpenOffice в презентацию MS Office
$ unoconv -f ppt convert-odp-2-swf.odp

Пример удаленной работы будет такой:
# запуск сервера OpenOffice на удаленной машине
admin@remote-host:~$ unoconv --listener --server 10.0.0.1 --port 777

# запрос на конвертацию для удаленной машины
dw@debianworld.ru:~$ unoconv --server 10.0.0.1 --port 777 -f swf convert-odp-2-swf.odp

Примеры конвертации презентаций (PPT, SWF, PDF, HTML)

Примеры конвертации форматов файлов презентаций:

# конвертация презентации OpenOffice в презентацию MS Office
$ unoconv -v -f ppt convert-odp-2-swf.odp
Input file: convert-odp-2-swf.odp
Selected output format: Microsoft PowerPoint 97/2000/XP [.ppt]
Selected ooffice filter: MS PowerPoint 97
Used doctype: presentation
Output file: convert-odp-2-swf.ppt

# конвертация презентации MS Office в flash ролик
$ unoconv -v -f swf convert-odp-2-swf.ppt
Input file: convert-odp-2-swf.ppt
Selected output format: Macromedia Flash (SWF) [.swf]
Selected ooffice filter: impress_flash_Export
Used doctype: presentation
Output file: convert-odp-2-swf.swf

# конвертация презентации MS Office в HTML
$ unoconv -v -f html convert-odp-2-swf.ppt
Input file: convert-odp-2-swf.ppt
Selected output format: HTML Document (OpenOffice.org Impress) [.html]
Selected ooffice filter: impress_html_Export
Used doctype: presentation
Output file: convert-odp-2-swf.html

# конвертация презентации MS Office в PDF
$ unoconv -v -f pdf convert-odp-2-swf.ppt
Input file: convert-odp-2-swf.ppt
Selected output format: Portable Document Format [.pdf]
Selected ooffice filter: impress_pdf_Export
Used doctype: presentation
Output file: convert-odp-2-swf.pdf


Примеры конвертации документов (Word, PDF, RTF, HTML, Text)
# конвертация документа OpenOffice в PDF
$ unoconv -v -f pdf convert-doc.odt
Input file: convert-doc.odt
Selected output format: Portable Document Format [.pdf]
Selected ooffice filter: writer_pdf_Export
Used doctype: document
Output file: convert-doc.pdf

# конвертация документа OpenOffice в RTF
$ unoconv -v -f rtf convert-doc.odt
Input file: convert-doc.odt
Selected output format: Rich Text Format [.rtf]
Selected ooffice filter: Rich Text Format
Used doctype: document
Output file: convert-doc.rtf

# конвертация документа OpenOffice в HTML
$ unoconv -v -f html convert-doc.odt
Input file: convert-doc.odt
Selected output format: HTML Document (OpenOffice.org Writer) [.html]
Selected ooffice filter: HTML (StarWriter)
Used doctype: document
Output file: convert-doc.html

# конвертация документа OpenOffice в текст
$ unoconv -v -f txt convert-doc.odt
Input file: convert-doc.odt
Selected output format: Plain Text [.txt]
Selected ooffice filter: Text
Used doctype: document
Output file: convert-doc.txt

Весь приведенный код конвертации для большей читабельности использует ключ "-v" для вывода отладочной информации. Естественно, что при отсутствии необходимости диагностических сообщений этот ключ можно опустить.

P.S. запускать сервер OpenOffice в фоновом процессе нужно под пользователем под которым работаем.

вторник, 23 ноября 2010 г.

Борьба с вирем СМС

Взято с ithappens.ru :)

Что видим? Нечто скверное: окошко с предложением отправить SMS на некий номер для разблокировки винды. Перезагрузка даже в безопасном режиме заканчивается этим же окошком. Ctrl + Alt + Del, Alt + Tab и прочие шоткаты, которые должны свернуть/закрыть/переключить на другую программу — естественно, блокируются.

Я совсем было отчаялся, но вспомнил про надоедливую хреновину, которая раздражала меня, когда я играл в Counter Strike. По умолчанию менеджер спецвозможностей настроен так, что если зажать Shift на 8 секунд, появится окошко для включения полного набора этих самых спецвозможностей. Зажимаем. Ждем. Есть!

1. Рядом с "крестиком" в заголовке окна есть кнопка со знаком вопроса. Жмем, включается контекстная помощь, кликаем еще раз на одну из кнопок окна настроек и видим тултип с подсказкой.

2. Правый клик на тултипе неожиданно даёт контекстное меню! Копировать не нужно, но если нажать «печать раздела»...

3. ...то откроется «настройка печати»! Жмем на кнопку «настройки» и получаем «настройки принтера» с кучей вкладок.

4. Снова справка! Стандартные виндовые виджеты: Файл, Правка и так далее.

5. Далее Файл, Открыть и вот он — какой-никакой, но Проводник!

Стандартным Проводником я без проблем нашел браузер, нагуглил решение проблемы (найти и удалить blocker.exe и blocker.bin), удалил что положено тем же проводником, перезагрузился — и нормально зашел в винду.

понедельник, 11 октября 2010 г.

Добавляем почту в обход прокси (типа mal.ru etc)

 #!/bin/bash

IPTABLES='/sbin/iptables'
IPNET='192.168.1.0/24'

$IPTABLES -A FORWARD -p tcp -s $IPNET -d smtp.mail.ru --dport 25 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -s smtp.mail.ru -d $IPNET --sport 25 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -s $IPNET -d pop.mail.ru --dport 110 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -s pop.mail.ru -d $IPNET --sport 110 -j ACCEPT
$IPTABLES -t nat -A POSTROUTING -p tcp -s $IPNET --dport 25 -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -p tcp -s $IPNET --dport 110 -j MASQUERADE

sysctl net.ipv4.ip_forward=1

воскресенье, 5 сентября 2010 г.

интересные сборки

Univention Corporate Server (UCS) - есть инструмент для управления виртуальными окружениями — Univention Virtual Machine Manager (UVMM). Этот программный продукт предоставляет возможность легкого, интуитивно понятного управления виртуальными машинами на базе Xen и KVM. Взаимодействие с пользователем осуществляется через web-интерфейс, интегрированный в общую web-консоль управления сервером, предоставляемую UCS.

Zentyal - Дистрибутив построен на пакетной базе Ubuntu и ориентирован на создание серверов для обслуживания локальной сети предприятий среднего и малого бизнеса. Управление всеми аспектами работы дистрибутива производится через web-интерфейс. Поддерживается быстрая организация работы шлюза, межсетевого экрана, почтового сервера, VoIP (Asterisk), VPN-сервера, прокси (squid), файлового сервера, системы для организации взаимодействия сотрудников, системы мониторинга, сервера для резервного копирования и т.п.

Proxmox Virtual Environment - дистрибутив на базе Debian/GNU Linux, нацеленного на развертывание виртуальных серверов на базе OpenVZ и KVM. Сразу после установки пользователь получает полностью готовую систему виртуальных серверов промышленного уровня с управлением через web-интерфейс, работающий поверх libvirt. Дистрибутив имеет встроенные инструменты для организации резервного копирования виртуальных окружений и доступную из коробки поддержку кластеризации, включая возможность миграции виртуальных окружений с одного узла на другой без остановки работы.

Искра 10.4 - операционная система характеризуется тесной интеграцией с русскоязычными интернет-ресурсами и информационными сервисами, реализованным в трех вариантах интерфейсом рабочего стола, широкими мультимедийными возможностями и богатым набором предустановленных игр.



VortexBox 1.1 - предназначенного для быстрого создания серверов для организации музыкального вещания в сети, сетевых хранилищ музыки или для превращения любого компьютера со звуковой картой в интернет-радио

Spacewalk - релиз свободной платформы для управления инфраструктурой Linux-серверов

DEFT - предназначен для проведения анализа последствий взломов, определения скрытых или потерянных данных в системе, а также для сбора доказательств в расследованиях компьютерных преступлений. Дистрибутив построен на базе Lubuntu 10.10 и снабжен удобным графическим интерфейсом, использующим компоненты десктоп-окружения LXDE и оптимизированным для упрощения выполнения типовых операций, выполняемых при проведении расследования.

SystemRescueCd
- дистрибутив Linux, основанный на Gentoo. Распространяется в виде загрузочного LiveCD-образа. Предназначен для обслуживания и выполнения административных задач. Содержит инструменты для работы с жестким диском: разбивка на разделы, диагностика, сохранение и восстановление разделов. Умеет монтировать разделы Windows Ntfs для чтения и записи. Содержит также средства для настройки сети, сетевых сервисов, средства поиска руткитов и антивирус. Может быть загружен с компакт-диска, USB-накопителя, или по сети по протоколу PXE

DoudouLinux  это операционная система, спроектированная для детей, чтобы сделать работу на компьютере легкой и приятной (а чем их родители хуже!). DoudouLinux представляет собой рабочую среду, подобную игровой приставке и включает десятки приложений, предназначенных для детей в возрасте от двух лет. Дети могут учиться, узнавать и развлекаться, но ... без присмотра пап и мам. Больше того, для 

среда, 11 августа 2010 г.

Win7 и принтеры

сегодня наткнулся на одну интересную особенность 7-ки, при попытки установить принтер она ругалась:
"Не удалось открыть мастер добавления принтеров. Локальная подсистема печати не выполняется. Перезапустите подсистему или перезагрузите компьютер."
Чтобы полечить - либо в службах находим "Диспетчер очереди печати" и стартуем если остановлена, либо из командной строки net start spooler
абажаю винду ;)


пятница, 28 мая 2010 г.

Asterisk. Установка и начальная настройка

качаем пакеты:
http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.6.1.20.tar.gz
http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-addons-1.6.2.1.tar.gz
http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/releases/dahdi-linux-complete-2.3.0+2.3.0.tar.gz
http://downloads.asterisk.org/pub/telephony/libpri/releases/libpri-1.4.11.tar.gz
http://downloads.asterisk.org/pub/telephony/libss7/releases/libss7-1.0.2.tar.gz

распаковываем и ставим в следующем порядке:
1.dahdi
make all
make install
make config
2.libpri
make
make install
3.libss7
make
make install
4.asterisk
sh contrib/scripts/get_ilbc_source.sh (добавляем кодек ilbc)
./configure
make menuselect (зайти и включить кодек ilbc)
make
make install
make samples
asterisk -vvvc
stop now
5.asterisk-addons
./configure
make
make install

apt-get install subversion
1. svn co http://svn.digium.com/svn/asterisk-gui/branches/2.0 asterisk-gui
2. cd asterisk-gui
3. sh configure && make && make install

в /etc/asterisk/http.conf
[general]
enabled=yes
enablestatic=yes

в /etc/asterisk/manager.conf
[general]
displaysystemname = yes
enabled = yes
webenabled = yes
port = 5038
;httptimeout = 60
bindaddr = 0.0.0.0

[admin]
secret = admin
read = system,call,log,verbose,command,agent,config
write = system,call,log,verbose,command,agent,config


Checking configuration...
make checkconfig

теперь через браузер заходим:
http://(ip_машины с астериском):8088/static/config/index.html







вторник, 13 апреля 2010 г.

Перекодирование аудио файлов

WAV -> MP3

пример использования:

lame -V 0 input_file.wav output_file.mp3

ключи:

-V - качество записи (от 0 до 9, 0 - высокое, 9 - низкое)
-h - наилучшее качество

при возникновении ошибки Unsupported data format: 0x0055 используйте ключ --mp3input


Уменьшение битрейта

find . -iname "*.mp3" -exec lame '{}' ';'
(128 установлено по умолчанию)

find . -iname "*.mp3" -exec lame '-b 320 -q 0' '{}' ';'
(с указанием битрейта)

среда, 24 марта 2010 г.

Печать на шаровый матричный принтер через самбу

1. Снести CUPS (если установлен) напрочь
2. поставить lprng, magicfilter
3. запуститить magicfilter и отконфигурить принтер
4. в самбе:
printcap name = /etc/printcap
printing = lprng
print command =
lpq command = %p
lprm command =


[epson]
comment = epson
path = /var/spool/lpd/lp
printer name = epson
guest ok = Yes
printable = Yes
print command = lpr -r -h -P %p %s
use client driver = Yes
force printername = Yes


5. в /etc/printcap (формируетс при запуске магикфильтра):
lp|epson|epson:\
:lp=/dev/lp0:sd=/var/spool/lpd/lp:\
:sh:pw#80:pl#72:px#1440:mx#0:\
:if=/etc/magicfilter/epson9-filter:\
:af=/var/log/lp-acct:lf=/var/log/lp-errs:


6. добавить в /etc/rc2.d/ файл S20lps0
#!/bin/sh
/sbin/modprobe lp
/bin/chmod 777 /var/spool/lpd/lp


7. смотреть логи
8.по хорошему надо сделать чтобы модуль порта лпт цеплялся автоматом (echo "lp" >> /etc/modules ), но чот как то изначально стратил... :)


На практике вам нужно знать всего три команды: lpq, lprm,lpc
Lpq - это команда просмотра очереди печати.
Lprm - команда удаляет задания из очереди.
Синтаксис команды lprm:
Lprm - удаляет последнее задание в очереди;
Lprm - 14, 15 - удаляет задания 14 и 15 из очереди;
Lprm - username - удаляет задания конкретного пользователя из очереди;
Lprm - all - удаляет все задания из очереди.
Lpc - команда, позволяющая контролировать работу принтера, необходимости в ее использовании практически не возникает.





Samba - корзина+расширенные логи

http://www.opennet.ru/base/net/samba_tune_auth.txt.html


Вместе с Samba поставляется ряд так называемых "VFS-модулей" (Virtual
File System), с их помощью становится возможным выполнение таких
действий как протоколирование процесса работы на сетевых папках,
организация сетевой корзины, теневое копирование (shadow copy) данных,
подключение антивирусных модулей и т.п. В частности, для
протоколирования действий пользователей в Samba имеется три VFS-модуля:
audit, extd_audit, full_audit. Для поставленной нами задачи
мы будем использовать последний из них.

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

имя_модуля:параметр1
имя_модуля:параметр2=значение1
имя_модуля:параметр3=значение2 значение3 значение4


Все настройки производятся в главном конфигурационном фале Samba -
smb.conf. Полный список параметров можно, вернее даже лучше
всего, посмотреть в исходном коде модуля, который находится в директории
samba-3.0.23d/source/vfs. Давайте построчно рассмотрим
вышеприведенный конфиг:

vfs objects = full_audit

Подключает использование данного модуля при работе с указанной сетевой
папкой

full_audit:prefix= %m|%U

Задает возможность с помощью макропеременных Samba подставлять нужные
значения в качестве источника события на сетевой папке при
протоколировании действий. В нашем случае в качестве источника будет
производится подстановка вида
NetBIOS_имя_комьютера|имя_пользователя и в log-файл будет
записываться что-то вроде:

Mar 5 08:47:51 calypso smbd_audit: comp1|username|mkdir|ok|/mnt/hdd1/new folder


full_audit:success=write rename unlink mkdir rmdir
full_audit:failure=write rename unlink mkdir rmdir


Модуль протоколирует действия которые завершились успешно - параметр
success и закончились неудачей - failure
соответственно. Как, наверное уже понятно, для данной сетевой папки мы
будем фиксировать как "успех" так и "неудачу" создания, переименования и
удаления файлов и директорий. Если же, например, нужно протоколировать
ВСЕ неудачные действия на шаре то параметр full_audit:failure
нужно не указывать и по умолчанию он будет фиксировать все "неудачи".

full_audit:facility=LOCAL5
full_audit:priority=INFO


Здесь мы остановимся немного подробнее.

Samba умеет вести журналы как самостоятельно так и с помощью системы
Syslog. Для подробного протоколирования действий
пользователей второй вариант является более предпочтительным, так как с
его помощью можно более гибко настроить журналирование. Данная
гибкость, в частности, позволит нам вести протоколы работы с каждой
сетевой папкой в отдельный файл.

Для определения источника журналируемых записей Syslog имеет
такие понятия как "категория" - facility и "приоритет" -
priority. Категория - это ряд предописанных значений,
событий, вроде сообщений о регистрации пользователей, сообщений от
системного планировщика, ядра, почтовой системы и т.п. Применительно к
нашей задаче имеются зарезервированные категории local0 -
local7, которые не привязаны ни к какому системному событию и
могут быть свободно использованы администратором.

Понятие "приоритет" означает уровень важности поступаемых сообщений.
Имеется 8 уровней приоритета: debug, info, warning, notice,
warning, err, crit, alert, emerg.

Нам необходимо настроить протоколирование таким образом, чтобы протоколы
с сетевых папок велись в отдельные файлы: каждая "шара" - в свой файл
журнала. Вот здесь нам на помощь и приходят вышеописанные уровни
приоритета. Мы каждой системной папке присвоим свой уникальный уровень
приоритета в пределах выбранной категории, а syslog
сконфигурируем таким образом, чтобы он разделял протоколы, поступающие
от сетевых папок. Т.е. будут использоваться приоритеты INFO и
NOTICE категории LOCAL5.

Приступим к настройке syslogd.

По умолчанию во FreeBSD все сообщения класса notice
перенаправляются в файл /var/log/messages. Нам сие не нужно,
поэтому нужно переконфигурировать syslog дабы разделить поступаемые
классы сообщений. Сделаем это следующим образом: строку

*.notice ...


заменим на

local5.=info /var/log/samba/docs.log
local5.=notice /var/log/samba/pub.log
local0.notice;local1.notice;local2.notice;local3.notice /var/log/messages
local4.notice;local6.notice;local7.notice /var/log/messages



Таким образом мы выделили приоритеты info и notice
категории local5 и перенаправили их в соответствующие файлы
журналов и, на всякий случай, для других приложений перенаправили
остальные категории local0-local7 приоритета
notice в /var/log/messages


Теперь очередь за настройкой сетевой корзины. За это
отвечает VFS-модуль recycle. У него имеются следующие
параметры:

recycle:repository=/mnt/hdd2/lost_n_found

Абсолютный путь к папке, в которую будут перемещаться удаленные на
сетевой шаре файлы и директории.

recycle:exclude = *.tmp | *.TMP | ~$* | ~WRL*
Список регулярных выражений для имен файлов которые при удалении будут
удаляться, а не перемещаться в корзину. Каждое выражение отделяется от
соседних символом "|".
ВНИАНИЕ! Маска файла и символ "|" обязательно должны
разделяться символом пробела.

recycle:excludedir = /mnt/hdd1/temp
Список директорий удаление файлов и директорий из которых не переместит
их в сетевую корзину и они на самом деле будут удалены.

recycle:maxsize=104805760
Максимальный размер файла в байтах, который может помещаться в корзину,
если размер больше - файл будет удален. В данном случае в корзину будут
попадать файлы размером не более 10 Мб.

recycle:keeptree
При удалении файла сохранять весь файловый путь относительно сетевой
папки. Т.е. например при удалении файла file.txt,
находящегося по пути path/to/file относительно сетевой шары
[pub] с абсолютным путем /mnt/hdd2, в сетевой
корзине будет создан файловый путь/mnt/hdd2/path/to/file и в
эту директорию будет помещен file.txt.

recycle:versions
При удалении одного и того же файла filename, находящегося по
одному и тому же сетевому пути, в сетевой корзине будут создаваться
копии файла с именами Copy #1 filename, Copy #2 filename и
т.д.




среда, 24 февраля 2010 г.

Настройка DynDNS на Debian

Взято здесь: Ещё один блог сисадмина: Настройка DynDNS на Debian

1. Регистрация на сервисе DynDNS

http://www.dyndns.com/ - На этом сайте можно заказать за деньги DNS-хостинг, мониторинг серверов и многие другие услуги. Есть также бесплатный DNS-сервис, ограниченный 864000 запросами к DNS в месяц и бесплатный домен третьего уровня, позволяющий производить динамические обновления зоны.

Для начала регистриуемся на сайте и подтверждаем регистрацию по почте.

Выбираем доменное имя второго уровня, где будем размещать свою зону. Полный список доменов второго уровня, в которых Вы можете застолбить свой домен третьего уровня, можно посмотреть здесь: http://www.dyndns.com/services/dns/dyndns/domains.html Я выбрал домен homelinux.org.

Затем подписываемся на услугу Dynamic DNS, где выбираем тип узла - custom.

На этом сайт можно покинуть, больше он нам не понадобится.

2. Настройка ddclient с помощью мастера настройки

Устанавливаем ddclient:

aptitude install ddclient

Сразу во время установки запускается мастер настройки ddclient с ncurses-интерфейсом:
1. Выбираем сервис, на котором зарегистрировали учётную запись. Я выбрал www.dyndns.com
2. Вводим имя домена, который выбрали при регистрации на DynDNS
3. Вводим имя пользователя, с которым регистрировались на сервисе DynDNS
4. Пароль для этой учётной записи
5. Указываем имя интерфейса, к IP-адресу которого будет привязываться выбранное доменное имя. Можно оставить это поле пустым, тогда IP-адрес будет определяться автоматически, исходя из того, какой IP-адрес был использован клиентом при подключении к сервису.
6. Здесь можно указать, будет ли запускаться ddclient при запуске PPP-соединений и отключаться при закрытии PPP-соединений.
7. Если выбрать запуск ddclient в режиме демона, он будет автоматически запускаться при загрузке системы и работать постоянно. Если вы выбрали этот режим, то в предыдущем пункте можно отключить запуск демона при поднятии PPP-канала связи.

Если вы ошиблись в настройках, запустить мастер настройки ddclient снова можно в любое время, для этого можно воспользоваться следующей командой:

dpkg-reconfigure ddclient

3. Конфигурационные файлы и настройка без мастера

Все указанные мной настройки уместились в двух файлах. /etc/ddclient.conf:

# Configuration file for ddclient generated by debconf
#
# /etc/ddclient.conf

pid=/var/run/ddclient.pid
protocol=dyndns2
use=if, if=
server=members.dyndns.org
login=www2
password='password'
ufadeb.homelinux.org


В этом файле можно указать имя интерфейса, имя и пароль учётной записи на DynDNS и доменное имя, которые вы выбрали при регистрации.

И второй файл - /etc/default/ddclient:


# Configuration for ddclient scripts
# generated from debconf on Срд Фев 25 20:17:16 YEKT 2009
#
# /etc/default/ddclient

# Set to "true" if ddclient should be run every time a new ppp connection is
# established. This might be useful, if you are using dial-on-demand
run_ipup="true"

# Set to "true" if ddclient should run in daemon mode
run_daemon="false"

# Set the time interval between the updates of the dynamic DNS name in seconds.
# This option only takes effect if the ddclient runs in daemon mode.
daemon_interval="300"


В нём можно указать режимы запуска и период обновления информации:

1. run_ipup соответствует запуску демона при установлении PPP-подключения и его остановке при разрыве PPP-подключения, принимает два значения - true (запускать) и false (не запускать),

2. run_daemon - запускать ddclient в режиме демона (true) или нет (false),

3. daemon_interval - интервал обновления привязки доменного имени и IP-адреса в секундах (300 - 5 минут).

4. Более сложный случай настройки

Мне понадобился несколько более экзотический случай настройки: мне нужно обновлять две доменные записи и привязывать их к двум интерфейсам. С помощью мастера настройки и обычных режимов работы ddclient, предусмотренных скриптами в /etc/init.d/ddclient это настроить нельзя. Поэтому я настроил немного по-другому.

Нужно прописать в файле конфигурации обычные настройки для одного домена, но указать их два. Для каждого домена обновлять записи следует из командной строки, указывая название интерфейса и доменное имя, для которых производится обновление. Теоретически можно было бы вызывать эти скрипты единожды при поднятии PPP-интерфейсов, однако на практике такая схема обновления записей себя не оправдала: если ddclient не срабатывал сразу при поднятии интерфейса, то новых попыток обновить адрес не предпринималось до тех пор, пока PPP-соединение не будет переподключено вновь. Если каждое обновление записей в DynDNS требует личного контроля, автоматизацией это не назовёшь. Поэтому был выбран другой вариант - обновление записей по cron'у.

Сначала я отключил режим демона и режим запуска для PPP-соединений:

run_ipup="false"
run_daemon="false"
daemon_interval="1m"

Настроил в файле /etc/ddclient.conf два доменных имени:

pid=/var/run/ddclient.pid
protocol=dyndns2
server=members.dyndns.org
login=www2
password='password'
ufadeb.homelinux.org
stupin.homelinux.org


И настроил запуск ddclient по cron'у каждую минуту:

crontab -e

Добавив в таблицу две строчки:

* * * * * /usr/sbin/ddclient -file /etc/ddclient.conf -host stupin.homelinux.org -use if -if ppp0
* * * * * /usr/sbin/ddclient -file /etc/ddclient.conf -host ufadeb.homelinux.org -use if -if ppp1

Интерфейсы ppp0 и ppp1 всегда привязаны к определённым соединениям с помощью опции unit демона pppd.

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


/etc/init.d/cron restart


ddclient хранит текущие настройки в файле /var/cache/ddclient/ddclient.cache, иногда для того, чтобы принудительно обновить настройки на DynDNS-сервере может потребоваться удалить этот файл (ddclient не отправляет запрос на обновление, если текущие настройки интерфейсов совпадают с сохранёнными в этом файле).

суббота, 6 февраля 2010 г.

Настройка Wifi Atheros AR242x(AR5007EG‭) ‬в Debian Lenny‭ (‬5.0‭) ‬/‭ ‬Ubuntu intrepid‭ (‬8.10‭)‬,‭ ‬jaunty‭ (‬9.04‭)

взято тут http://debianworld.ru/articles/nastrojka-wifi-atheros-ar242xar5007eg-v-debian-lenny-50-ubuntu-intrepid-810-jaunty-904/

У обладателей таких ноутбуков,‭ ‬как:‭ ‬Asus X51RL,‭ ‬Fujitsu-Siemens s6420,‭ ‬Toshiba a201,‭ ‬Samsung NC10,‭ ‬Amilo Mini‭ ‬3520,‭ ‬Acer Aspire‭ ‬5315‭ ‬и еще многих других,‭ ‬есть одна общая проблема‭ ‬-‭ ‬Wifi карточка Atheros AR5007EG‭ ‬/‭ ‬AR242x,‭ ‬работоспособность которой после установки Linux-системы,‭ ‬как правило,‭ ‬оставляет желать лучшего.‭ ‬Благодаря проекту‭ ‬madwifi,‭ ‬установка драйверов Atheros не доставляет много проблем.‭

Диагностика оборудования:‭ ‬наличие Atheros AR5007EG‭ ‬/AR242x

В первую очередь необходимо убедиться,‭ ‬что в системе действительно установлена Wifi карта Atheros AR5007EG‭ ‬/AR242x:‭
$‎ ‏lspci‭ | ‬grep Atheros‭
‬18:00.0‭ ‬Ethernet controller:‭ ‬Atheros Communications Inc.‭ ‬AR242x‭ ‬802.11abg Wireless PCI Express Adapter‭ (‬rev‭ ‬01‭)


Установка пакетов для сборки драйверов для Atheros AR5007EG‭ ‬/AR242x

Следующим шагом,‭ ‬необходимо установить пакеты для успешной компиляции драйвера:‭
$‎ ‏sudo aptitude update‭
‬$‭ ‬sudo aptitude install build-essential linux-headers-$‭(‬uname‭ ‬-r‭)


Установка MadWifi драйверов для для Atheros AR5007EG‭ ‬/AR242x

Далее,‭ ‬необходимо скачать драйвер для Atheros AR5007EG‭ ‬/AR242x:‭
$‎ ‏mkdir‭ ‬./mad-wifi‭
‬$‭ ‬cd‭ ‬./mad-wifi‭
‬$‭ ‬wget http://snapshots.madwifi-project.org/madwifi-hal-0.10.5.6/madwifi-hal-0.10.5.6-r3942-20100201.tar.gz‭

После того,‭ ‬как драйвер скачан,‭ ‬его необходимо разархивировать и скомпилировать:‭
#‎ ‏Разархивируем драйвер‭
‬$‭ ‬zxvf madwifi-hal-0.10.5.6-r3942-20100201.tar.gz‭
‬$‭ ‬cd madwifi-hal-0.10.5.6-r3942-20100201

‬#‭ ‬Компилируем драйвер‭
‬$‭ ‬make‭
‬$‭ ‬sudo make install‭

Теперь драйвер скомпилирован.‭ ‬Необходимо проверить работу wifi-карты с новым драйвером:‭
#‎ ‏включаем модуль ядра‭
‬$‭ ‬sudo modprobe ath_pci‭

‬#‭ ‬включаем wifi-интерфейс‭
‬$‭ ‬sudo ifconfig ath0‭ ‬up‭

‬#‭ ‬проверяем настройки wifi‭
‬$‭ ‬iwconfig
lo‭ ‬no wireless extensions.‭

‬eth0‭ ‬no wireless extensions.‭

‬wifi0‭ ‬no wireless extensions.‭

‬ath0‭ ‬IEEE‭ ‬802.11g‭ ‬ESSID:‭"‬XXXXXXXXXXXXX‭" ‬Nickname:‭""
‬Mode:Managed‭ ‬Frequency:2.437‭ ‬GHz‭ ‬Access Point:‭ ‬XX:XX:XX:XX:XX:XX‭
‬Bit Rate:6‭ ‬Mb/s‭ ‬Tx-Power:17‭ ‬dBm‭ ‬Sensitivity‭=‬1/1‭
‬Retry:off‭ ‬RTS thr:off‭ ‬Fragment thr:off‭
‬Power Management:off‭
‬Link Quality‭=‬21/70‭ ‬Signal level‭=‬-74‭ ‬dBm‭ ‬Noise level‭=‬-95‭ ‬dBm‭
‬Rx invalid nwid:848‭ ‬Rx invalid crypt:0‭ ‬Rx invalid frag:0‭
‬Tx excessive retries:0‭ ‬Invalid misc:0‭ ‬Missed beacon:0‭

Если вывод последней команды похож на приведенный,‭ ‬то можно констатировать,‭ ‬что wifi карта работает.

#‭ ‬перезагрузка‭
‬$‭ ‬reboot‭

Единственным недостатком такого метода является необходимость пересобирать драйвер после каждого обновления ядра.‭

Удаление MadWifi драйверов для для Atheros AR5007EG‭ ‬/AR242x

В случае,‭ ‬если что-либо не получилось,‭ ‬либо появилось желание установить более свежий драйвер,‭ ‬то текущую установку можно без труда удалить:‭
$‎ ‏cd‭ ‬./mad-wifi/madwifi-hal-0.10.5.6-r3942-20100201
‬$‭ ‬sudo make uninstall‭

среда, 3 февраля 2010 г.

openvpn+openssl

openvpn новых версий ругается на vulnerable key, типа того что ключик не очень.
нужно удалить из списка ненадежных ключиков, либо перегенерить ключ.
для удаления смотреть файл:
/usr/share/openssl-blacklist/blacklist.RSA-2048

Замена PGP ключей в Debian для подписывания пакетов

Все забываю адрес и ключики....
решил записать )
Debian в очередной раз меняют pgp-ключи, которыми подписаны deb-пакеты в официальных репозитариях. Чтобы apt продолжал работать, необходимо выполнить следущее:
gpg --keyserver wwwkeys.eu.pgp.net --recv-keys 9AA38DCD55BE302B
gpg --armor --export 9AA38DCD55BE302B | apt-key add -

 
Для варианта с проксей:
 
sudo apt-key adv --recv-keys  --keyserver-options http-proxy=«адрес_прокси: порт» --keyserver keyserver.ubuntu.com КЛЮЧ 
 
:)

среда, 27 января 2010 г.

Soft. Soft. Soft

Download

1. Чтобы скачать сайт целиком – не нужно искать оффлайн браузеры, качалки и прочее… Достаточно в консоли набрать:

wget -rkx URL


Резервные копии (backup`s)


1. Git
2. BackupPC
3. amanda
4. Bacula - кросплатформенная клиент-серверная система резервного копирования. (http://www.bacula.org/en/)
5. Clonzilla


Блокировка от скана и брутфорса


1. Fail2ban
2. Portsentry
3. Webmin - iptables с вебмордой
4. DenyHosts (ssh)
5. sshutout (ssh)

Тест безопасности

1. Nessus

Планировщик по событию с файлом


1. inotify-tools [iwatch & incron] (LXF №121)


Чтение логов


1. Logwatch - просматривает логи и шлет отчет на почту


Video

1. RecordMyDesktop - скринкастинг


LDAP


1. Luma


Мониторинг системы


1. Munin
2. Zabbix


VoIP


1. Asterisk (lxf 120)


База знаний


1. Knowledgeroot


Файловые манагеры (обзор)



1. lxf №119
2. double commander


Тесты железа


1. inquisitor (http://www.inquisitor.ru) (lxf №119)
2. GSmartControl (smartcontrol) - тесты hdd
3. smartmontools - тест hdd
4. badblocks - тест hdd
5. burnintest (http://www.passmark.com/products/bitlinux.htm) - CPU, memory, network
6. Phoronix Test Suite (http://altlug.ru/phpbb/viewtopic.php?f=45&t=2066) - тесты всего
7. cpuburn - CPU
8. memtester - memory


Ширина канала (сети, шейпинг)


1. Trickle
2. Wondershaper


Live USB



1. UNetbootin (lxf №119)


3D планировщик


1. SweetHome3d (lxf №118)


Управление проектами

1. Subversion - чаще всего она употребляется при работе над программными проектами, но её с успехом можно применить при работе с любым набором файлов: web-сайт, документация или коллекция видео или аудио – содержимое роли не играет


Сервер коллективного документооборота


1. Zimbra Collaboration Suite - (http://www.opennet.ru/base/sys/zimbra_install.txt.html)
2. EGroupWare
3. Open-Xchange
4. Zarafa


Офисно-банковское.


1. 1C - http://www.opennet.ru/base/sys/selta_1c.txt.html
2. Bifit - http://www.opennet.ru/base/sys/run_ibank2.txt.html


Консоли для виртуализации

1. Сайт проекта WebVZ - http://webvz.sourceforge.net.
2. Сайт проекта HyperVM - http://lxcenter.org.
3. Сайт проекта Symbolic - http://www.opensymbolic.org.
4. Сайт проекта Karesansui - http://karesansui-project.info.
5. Архивы с исходными текстами Karesansui - http://sourceforge.jp/projects/karesansui/releases.
6. Сайт проекта Pysilhouette - http://pysilhouette.sourceforge.net.
7. Документ How can I set up multiple hosts? - http://karesansui-project.info/wiki/karesansui/En_howto_multi_host.

Централизованное управление и мониторинг

1. Symbolic - Система централизованного управления Linux

ERP
1. OpenERP 6.0 - полный спектр бизнес-приложений: CRM, управления закупками, управление производством, складской учет, управление проектами, бухгалтерский учет, управление кадрами и т.д. Система универсальна и может быть внедрена в компании любого размера.
2. project-open - мощная система. заточена для ИТ
3. otrs - -//-
4. SmartNum -
Система SmartNut предназначена для автоматизации процессов ИТ-компании. В настоящий момент система находится в разработке и будет динамично равзиваться после первого public-релиза (который намечен на апрель 2011 года). В первой версии системы SmartNut будут реализованы следующие возможности:
  • Ведение базы клиентов и контактных лиц;
  • Ведение базы договоров
  • Фиксация и отслежевание соблюдения SLA
  • Прием и обработка заявок клиентов
  • Аналитическая отчетность по работе ИТ-компании.

Системы управления обучением
1.Moodle (англ. Modular Object-Oriented Dynamic Learning Environment) модульная объектно-ориентированная динамическая учебная среда — свободная система управления обучением (LMS), распространяющаяся по лицензии GNU GPL. 

пятница, 22 января 2010 г.

openvpn


http://mindcollapse.com/blog/68.html

http://www.kryukov.biz/wiki/Openvpn#.D0.9A.D0.BE.D0.BD.D1.84.D0.B8.D0.B3.D1.83.D1.80.D0.B0.D1.86.D0.B8.D1.8F_.D0.BE.D0.B4.D0.B8.D0.BD_.D1.81.D0.B5.D1.80.D0.B2.D0.B5.D1.80.2C_.D0.BD.D0.B5.D1.81.D0.BA.D0.BE.D0.BB.D1.8C.D0.BA.D0.BE_.D0.BA.D0.BB.D0.B8.D0.B5.D0.BD.D1.82.D0.BE.D0.B2


Ставим OpenVPN


aptitude install openvpn

Копируем скрипты генерации сертификатов и ключей

# cp -R /usr/share/doc/openvpn/examples/easy-rsa /etc/openvpn/

Редактируем файл vars.

export D=`pwd`
export KEY_CONFIG=$D/openssl.cnf
export KEY_DIR=/etc/openvpn/keys
echo NOTE: when you run ./clean-all, I will be doing a rm -rf on $KEY_DIR
export KEY_SIZE=1024
export KEY_COUNTRY=RU
export KEY_PROVINCE=RU
export KEY_CITY=MOSCOW
export KEY_ORG="Artur Kryukov"
export KEY_EMAIL="artur@kryukov.ru"

Этот файл предназначен для установок переменных среды окружения, перед генерацией ключей. Запускаем его при помощи точки:

# . vars
NOTE: when you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/keys
#

Запускаем программу очистки.

# ./clean-all
#

Осталось запустить процесс генерации ключей и сертификата СА.

# ./build-ca
Generating a 1024 bit RSA private key
..................++++++
......................................................++++++
writing new private key to 'ca.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [RU]:
State or Province Name (full name) [RU]:
Locality Name (eg, city) [MOSCOW]:
Organization Name (eg, company) [Artur Kryukov]:
Organizational Unit Name (eg, section) []:Personal Server
Common Name (eg, your name or your server's hostname) []:kryukov.ru
Email Address [artur@kryukov.ru]:
#

Некоторые поля заполняются автоматически, ведь не зря мы изменяли содержимое файла vars. Хотя ответы по умолчанию можно было поместить в конфигурационный файл программы openssh — openssl.cnf.

В директории /etc/openvpn появилась директория keys, в которой находятся файлы сертификата и ключ.

Теперь следует создать ключ и сертификат для сервера.

# ./build-key-server artur.kryukov.ru
Generating a 1024 bit RSA private key
...++++++
..++++++
writing new private key to 'artur.kryukov.ru.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [RU]:
State or Province Name (full name) [RU]:
Locality Name (eg, city) [MOSCOW]:
Organization Name (eg, company) [Artur Kryukov]:
Organizational Unit Name (eg, section) []:Personal Server
Common Name (eg, your name or your server's hostname) []:artur.kryukov.ru
Email Address [artur@kryukov.ru]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:password
An optional company name []:
Using configuration from /usr/share/doc/openvpn-2.0.5/easy-rsa/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName :PRINTABLE:'RU'
stateOrProvinceName :PRINTABLE:'RU'
localityName :PRINTABLE:'MOSCOW'
organizationName :PRINTABLE:'Artur Kryukov'
organizationalUnitName:PRINTABLE:'Personal Server'
commonName :PRINTABLE:'kryukov.ru'
emailAddress :IA5STRING:'artur@kryukov.ru'
Certificate is to be certified until Dec 11 14:31:19 2015 GMT (3650 days)
Sign the certificate? [y/n]:y


1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
#

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

# ./build-key master.kryukov.ru
Generating a 1024 bit RSA private key
.......++++++
.............................................++++++
writing new private key to 'master.kryukov.ru.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [RU]:
State or Province Name (full name) [RU]:
Locality Name (eg, city) [MOSCOW]:
Organization Name (eg, company) [Artur Kryukov]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:master.kryukov.ru
Email Address [artur@kryukov.ru]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:password
An optional company name []:
Using configuration from /usr/share/doc/openvpn-2.0.5/easy-rsa/openssl.cnf
DEBUG[load_index]: unique_subject = "yes"
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName :PRINTABLE:'RU'
stateOrProvinceName :PRINTABLE:'RU'
localityName :PRINTABLE:'MOSCOW'
organizationName :PRINTABLE:'Artur Kryukov'
commonName :PRINTABLE:'master.kryukov.ru'
emailAddress :IA5STRING:'artur@kryukov.ru'
Certificate is to be certified until Dec 11 14:39:59 2015 GMT (3650 days)
Sign the certificate? [y/n]:y


1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
#

И для домашней машины.

# ./build-key home.kryukov.ru
Generating a 1024 bit RSA private key
..............................................++++++
.......................................++++++
writing new private key to 'home.kryukov.ru.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [RU]:
State or Province Name (full name) [RU]:
Locality Name (eg, city) [MOSCOW]:
Organization Name (eg, company) [Artur Kryukov]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:home.kryukov.ru
Email Address [artur@kryukov.ru]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:password
An optional company name []:
Using configuration from /usr/share/doc/openvpn-2.0.5/easy-rsa/openssl.cnf
DEBUG[load_index]: unique_subject = "yes"
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName :PRINTABLE:'RU'
stateOrProvinceName :PRINTABLE:'RU'
localityName :PRINTABLE:'MOSCOW'
organizationName :PRINTABLE:'Artur Kryukov'
commonName :PRINTABLE:'home.kryukov.ru'
emailAddress :IA5STRING:'artur@kryukov.ru'
Certificate is to be certified until Dec 11 14:42:06 2015 GMT (3650 days)
Sign the certificate? [y/n]:y


1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
#

В заключении следует создать Diffie Hellman параметры.

# ./build-dh
Generating DH parameters, 1024 bit long safe prime, generator 2
This is going to take a long time
..+.......................................................................+...+
.....+.....+...................................................................
............................+..................+.+...........+.................
...+.....++*++*++*
#

Посмотрим содержимое директории /etc/openvpn/keys:

# ls /etc/openvpn/keys/
01.pem ca.keyindex.txt.old
02.pemdh1024.pemmaster.kryukov.ru.crt
03.pemhome.kryukov.ru.crtmaster.kryukov.ru.csr
04.pemhome.kryukov.ru.csrmaster.kryukov.ru.key
artur.kryukov.ru.crthome.kryukov.ru.keyserial
artur.kryukov.ru.csrindex.txtserial.old
artur.kryukov.ru.keyindex.txt.attr
ca.crt index.txt.attr.old
#

Теперь необходимо разобраться какие файлы куда помещать.

ФайлМашинаНазначениеДоступ
ca.crtСервер и клиентыСертификат корневого СА Публичный
ca.keyТолько на сервереНеобходим для подписи других сертификатовСекретный
1024.pemТолько на сервереDiffie Hellman параметрыПубличный
artur.kryukov.ru.crtТолько на сервереСертификат сервераПубличный
artur.kryukov.ru.keyТолько на сервереКлюч сервераСекретный
home.kryukov.ru.crtТолько на клиентеСертификат клиентаПубличный
home.kryukov.ru.keyТолько на клиентеКлюч клиентаСекретный











Файлы *.csr можно удалить.
Скопируйте все необходимые файлы на клиенты в директорию /etc/openvpn/keys. Для клиента master.kryukov.ru, я скопировал три файла: ca.crt, master.kryukov.ru.crt и master.kryukov.ru.key.

На всякий пожарный проверьте действительность создаваемых сертификатов.

openssl verify -CApath /etc/openvpn/keys -CAfile ca.crt -purpose sslclient home.kryukov.ru.crt

Для сервера следует изменить значение поля -purpose на sslserver.

Конфигурируем OpenVPN - сервер

dev tap0
proto tcp-server
comp-lzo
daemon
mode server
tls-server
port 443
user nobody
group nogroup
persist-tun
persist-key
ifconfig-pool 10.1.0.2 10.1.0.12
ifconfig 10.1.0.1 255.255.255.224
ifconfig-pool-persist ipp.txt
dh /etc/openvpn/keys/dh1024.pem
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
log /var/log/openvpn.log
status /var/log/openvpn-status.log
verb 3

на клиенте также ставим openvpn.
конфиг:

dev tap
remote [server name or IP]
client
tls-client
proto tcp
port 443
comp-lzo
ns-cert-type server
user nobody
group nogroup
ping 15
ping-restart 120
ping-timer-rem
persist-tun
persist-key
# добавляем маршрут к локальной сети офиса
###route 10.1.1.0 255.255.255.224
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/client.crt
key /etc/openvpn/keys/client.key
log /var/log/openvpn.log
verb 3

если у вас используется прокси сервер, то добавляем:

http-proxy [server] [port] [файл с логином/паролем]

в первой строке логин, а во второй пароль для доступа к прокси
порт должен быть прописан на прокси-сервере
метод CОNNECT

Конфигурация клиента Windows

Клиент для Windows берем тут: http://openvpn.net/index.php/downloads.html.

Качаем файлы сертификата (winclient.pem), ключа клиентской машины (winclient.key) и публичного ключа сервера сертификации (CA.crt).Ложим их в директорию C:\Program Files\OpenVPN\config.
В директории C:\Program Files\OpenVPN\config и создаем текстовый конфигурационный файл client.ovpn следующего содержания:

dev tap
proto tcp
remote [server name or IP] 443
client
nobind
tls-client
comp-lzo
ns-cert-type server
ca "C:\\Program Files\\OpenVPN\\config\\CA.crt"
cert "C:\\Program Files\\OpenVPN\\config\\winclient.crt"
key "C:\\Program Files\\OpenVPN\\config\\winclient.key"
ping 15
ping-restart 120
ping-timer-rem
persist-key
persist-tun
verb 1

В составе пакета находится программа OpenVPN GUI. Она позволяет управлять соединениями, доступна через стандартное меню "Пуск".

В конфигурационном файле Windows клиента, параметр verb равен 1. Программа OpenVPN GUI по отладочной информации, выдаваемой клиентом понимает, было ли подключение к серверу. И сможет выдавать корректную информацию об установленном соединении.


----------------------------------------------------------------------
в ленни оказывается добавили новую фичу которая не даёт запускать скрипты. надо добавить в конфиг строчку

script-security 2

0 - не выполнять внешних программ
1 - (стоит по дефолту) выполнять просты, такие как ifconfig, ip, route, or netsh
2 - запускать внешние скрипты
3 - запускать скрипты с паролями (небезопасный)

четверг, 21 января 2010 г.

Cisco

случился на днях конфуз на работе. поменял сервер на отделении, а его циска видеть категорически отказывается. если на циске обнулить таблицу арпов - начинает видеть сервер, на время, потом по новой.
пока получил такой совет:
conf t
ip cef
int eth0
no ip mroute-c
no ip directed-board
если не поможет то:
no ip gratuitos-arps
может еще это
no ip proxy-arp
на интф, но вряд ли

(12:45:44) Димка: рекомендует сделать no ip proxy-arp - на интерфейсе, где фр на циске.

все оказалось до банальности просто - сбоил дешевенький 8-ми портовый свитч 3com

пятница, 15 января 2010 г.

настройка мультипортовки

настройка мультипортовки (черновик)

(http://www.digi.com)


#apt-get install build-essential module-assistant kernel-package libncurses5 fakeroot
#apt-get install linux-headers-$(uname -r) modconf debhelper ncurses-dev


(modconf - найти карточку и включить драйвер в загрузку)?????




1. tar xvfz 40002369_F.tgz
2. cd ./dgnc-1.3
3. ./configure
4. make all
5. make install
6. make postinstall



o This package includes several support utilites:

o dinc - A cu/tip replacement.
o ditty - an stty replacement.
o dpa.dgnc - A Curses-based port
monitoring/testing utility.
o dgnctest - Another port testing utility.
o dgncview - a statistics viewing utility.






*******************************
*******************************
*******************************





Вопрос № 73.286
Здравствуйте, уважаемые эксперты.
Возникла такая проблема:
Есть ОС Debian и есть карточка мультипортовка Advantech PCI-1610. В поставке с ней идут драйвера - бинарники под ядра 2.4 и 2.6 и исходники. Бинарники загружаться отказываются (по крайней мере на ядрах 2.4.27, 2.6.8, 2.6.18). Исходники компилятся и работают на ядре 2.4.27. А вот на ядре 2.6.8 и 2.6.18 компилироваться не желают. Более свежих исходников найти не смог.
Карточка построена на чипе OX16PCI954 который теоретически поддерживают модули parport_serial и serial_cs, но вот как их заставить с этой карточкой работать ума не приложу...
Может что-нибудь посоветуете как подружить эту карточку с Debian на ядре 2.6.18?
Отправлен: 30.01.2007, 15:19
Вопрос задал: Editor (статус: 1-ый класс)
Всего ответов: 1

Отвечает: ramok
Здравствуйте, Editor!

1. сделайте lspci и посмотрите видит ли система вашу карточку в принципе.

2. поставьте пакет setserial
sudo apt-get install setserial

укажите там что бы данные о портах брались из ядра
если нужно переконфигурировать то
sudo dpkg-reconfigure setserial
и перезапустить
sudo /etc/init.d/setserial restart
может понадобится дернуть udev
/etc/init.d/udev restart

3. посмотреть dmesg что выдало. поидее должно выдать карту и irq на котором она висит
setserial -g /dev/ttyS*
выдаст примерно то что в приложении. у меня вот два последних это на PCI мультипортовке.
Port и IRQ должны совпадать с тем что в dmesg(или в логе начальной загрузки /var/log/dmesg)

4. если все еще нет у вас этих портов то читайте man setserial на предмет как устрановить порты и/или IRQ в соответствии с тем что указано в документации и BIOS.

четверг, 14 января 2010 г.

Типа начали

вот принял волевое решение завести себе блог. планирую записывать сюда свои настройки-наработки по админшаманству.
т.к. это рисуется для себя - то записи будут иметь "черновой" характер, с упущением многих "очевидных" вещей. поглядим чо получится. ;)