Показаны сообщения с ярлыком Ubuntu. Показать все сообщения
Показаны сообщения с ярлыком Ubuntu. Показать все сообщения

12 мая 2010 г.

Ubuntu: скрещиваем exim с clamav

Установить и настроить совместную работу MTA Exim4 и Clamav очень просто:

#apt-get install exim4-daemon-heavy clamav-daemon

После этого в системе установлены и настроены MTA Exim4, демон Clamav и демон обновления для Clamav - Freshclam. Настройку они имеют базовую, но для совместной работы у них уже почти все есть.

Недостает следующего:

  1. В файле /etc/exim4/conf.d/acl/40_exim4-config_check_data необходимо раскоментировать строки:

    # Deny if the message contains malware. Before enabling this check, you
    # must install a virus scanner and set the av_scanner option in the
    # main configuration.
    #
    # exim4-daemon-heavy must be used for this section to work.
    #
    deny
    malware = *
    message = This message was detected as possible malware ($malware_name).

  2. В файле /etc/exim4/conf.d/main/02_exim4-config_options необходимо указать путь к fifo демона clamav:
    av_scanner = clamd:/var/run/clamav/clamd.ctl

  3. Для доступа clamav к содержимому писем, необходимо добавить пользователя clamav в группу Debian-exim:
    #gpasswd --add clamav Debian-exim
    Если этого не выполнить в логе экзима получим:
    malware acl condition: clamd: ClamAV returned /var/spool/exim4/scan/1OC8Uk-0001pI-N3: lstat() failed: Permission denied. ERROR

  4. перезапустить демоны exim4 и clamav:
    #service exim4 restart
    #service clamav-daemon restart


После всех этих манипуляций в нашей системе Exim проверяет всю почту на вирусы с помощью демона Clamav.

В данной заметке умышленно опущены все тонкие настройки MTA Exim, такие как защита от Спам и др.

4 мая 2010 г.

Xubuntu 10.04 - Продолжение

За время использования полноценной Ubuntu очень привык к Compiz, особенно в части плагина "Negative". В течение рабочего дня глаза очень сильно устают и пялится в белый экран с мелкими серыми буквами уже тяжело - без "Негатива" никуда...

А тут оказалось его нет :)
Пришлось ставить. Поставил на скорую руку по руководству http://wiki.eeeuser.com/ubuntu:eeexubuntu:compiz_on_eeexubunto

Автозапуск компиза пришлось допиливать самому - файлов обозначенных в инструкции у меня не оказалось.
Методом "Научного тыка" обнаружил что теперь эти настройки указываются в файле /etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml.
В нем и заменяем xfwm4 на compiz.

В остальном вроде пока ничего нового, разве что система немного более отзывчива и не лагает так сильно.

По времени работы от батареи тоже изменения не ощущаются - eeePC продолжает от батареи работать до 4,5 часов.

2 мая 2010 г.

Xubuntu 10.04

Поставил на своем нетбуке Xubuntu 10.04.

Задумал переезд давно по причине того, что производительность нетбука перестала устраивать. Толи Ubuntu сам по себе слишком прожорлив, толи правда виноват не слишком быстрый SSD в моем ASUS eeePC 900...

Окончательно на переустановку настроился незадолго до выхода 10.04 и ждал момента "Х".

Момент "Х" настал вчера.
Итак мои первые впечатления:
  • система по сравнению с Ubuntu 9.10 работает значительно быстрее;
  • более минималистична по наличию установленных пакетов, но мне пока стандартных компонентов хватило и это радует;
  • приятной неожиданностью для моих глаз стала темная тема оформления.
Поставил как всегда mc, ipcalc, nmap и wavemon.

Появился еще один неоспоримый плюс переезда - я наконец-то поставил на свой usb-hdd загрузчик и настроил загрузку из iso-образов! :) Именно с него и ставил Xubuntu :)

Теперь пополняю список iso "На все случаи жизни" и добавляю их в меню загрузки.

За инструцией по настройке загрузки с iso-образов идем на opennet (http://www.opennet.ru/tips/info/2339.shtml).

12 мар. 2010 г.

Меняем кодировку файлов

Возникла необходимость перекодировать пару десятков файлов из cp1251 в UTF-8.

Погуглив немного, нашел в форумах упоминание утилиты "recode".
Сам я не приветствую установку дополнительных утилит, но если других вариантов нет, пришлось ставить.

Recode оказалась в репозитории Ubuntu, поэтому делаем:

$sudo apt-get install recode
...и пользуемся.

Для быстрого перекодирования группы файлов родился мини-скрипт:

mkdir 1
ls -1 | (
while read file;
do
cat "./$file" | recode CP1251..UTF-8 > "./1/$file";
done;
)

14 янв. 2010 г.

SVN и http-301-error

Возможно для многих не новость, но у меня эта проблема отняла два дня работы и добрую половину мозга :)

Оказалось, что если при выполении, например:
$ svn list http://svn-server/group1/repo

Вы получаете:
svn: Repository moved permanently to 'http://svn-server/group1/repo'; please relocate

А при этом доступ к веб-странице репозитория через браузер есть, то нужно всего-лишь поправить DocumentRoot, как написано тут: http://subversion.tigris.org/faq.html#http-301-error!

Но к этому я пришел только после того как отключил LDAP-аутентификацию.
При включеной - я получал следующее:
#svn import http://svn-server/group1/repo --username="user" --password="pass" --non-interactive
svn: OPTIONS of 'http://svn-server/group1/repo': authorization failed: Could not authenticate to server: rejected Basic challenge (http://svn-server).

22 сент. 2009 г.

Upstart и приложение на tty

По службе работаю над проектом терминального клиента (железного).
Возникла необходимость выводить в одну из tty "отладочную информацию", применительно к нам это IP-адрес машины.

если при использовании стандартного inittab все очень просто - прописываем в конфиге что пускаем скрипт на tty9 (например), то с Upstart пришлось потратить время и немалое.

На просторах сети так и не нашел ничего описывающего запуск скрипт на tty, даже в довольно скудной документации проекта.

Помогли мне на launchpad'e (https://answers.launchpad.net/upstart/+question/82291).
Все оказалось очень просто:

script
exec > /dev/tty9
watch -n 30 ifconfig
end script

Записываем это в файле /etc/event.d/tty9 (например) и после загрузки на консоли №9 видим вывод ifconfig'a.

27 авг. 2009 г.

Стерео bluetooth гарнитура в Ubuntu 9.04

Наконец-то дошли руки подключить стерео гарнитуру Plantronics Pulsar 260 к компьютеру :)

Руководство нашел здесь: http://forums.overclockers.com.au/showthread.php?t=780054

[UPDATE]
Еще один вариант настройки:
http://ubuntuforums.org/showpost.php?p=8400750&postcount=64

Как мне кажется, этот вариант предпочтительнее - не тянет за собой лишнего и интегрируется напрямую в "Sound Preferences", что само по себе очень удобно!

24 апр. 2009 г.

Exim4 - фильтруем почту для postmastera в ubuntu 8.10

Думаю многих администраторов почтовых серверов, принимающих сообщения на адрес "postmaster@вашдомен", замучал спам поступающий на этот адрес.

Многие либо меняют адрес постмастера, либо вовсе его отключают.
И то и то с точки зрения rfc822 неверно [2].

Чтобы хоть как-то снизить уровень спама в адрес постмастера и повысить вероятность обнаружения у него в ящике легитимных писем было предложено принимать письма только с определенной темой.

В [1] и [2] положений запрещающих какую-либо фильтрацию не нашел (если не прав, поправьте, кто знает;).

Модификация стандартного конфига Exim4 в Ubuntu 8.10.



Исходя из поставленной задачи, нам необходимо проверять в поступающих письмах адрес назначения и если оно адресовано постмастеру, то еще проверить тему письма.

Первая проблема - Exim4 позволяет проверить адрес назначения только в acl_smtp_rcpt, а тему письма мы можем проверить только на этапе acl_smtp_data.

Благодаря механизму пользовательских переменных [3], в MTA Exim4 мы имеем возможность передавать данные между разными этапами обработки письма. Переменные acl_m{цыфра} действительны входе обработки письма, их значение сбрасывается по командам HELO, MAIL и STARTTLS. Переменные acl_с{цыфра} действительны в ходе всего соединения.

В стандартной конфигурации Exim4 все проверки проходят на этапе RCPT.
Одной из первых проверок является проверка на указание адреса назначения "postmaster" или "postmaster@your.domain". Здесь мы и будем "запоминать" что это письмо для постмастера:

set acl_m0 = ${if eq{$local_part}{postmaster}{1}{0}}
set acl_m0 = ${if eq{$local_part}{CHECK_RCPT_POSTMASTER}{1}{0}}

ACL теперь будет выглядеть так:

# Accept mail to postmaster in any local domain, regardless of the source,
# and without verifying the sender.
#
accept
.ifndef CHECK_RCPT_POSTMASTER
set acl_m0 = ${if eq{$local_part}{postmaster}{1}{0}}
local_parts = postmaster
.else
set acl_m0 = ${if eq{$local_part}{CHECK_RCPT_POSTMASTER}{1}{0}}
local_parts = CHECK_RCPT_POSTMASTER
.endif
domains = +local_domains : +relay_to_domains


т.е. присваиваем переменной acl_m0 значение "1" если $local_part равно "postmaster" или равно значению макроса "CHECK_RCPT_POSTMASTER".

Макрос "CHECK_RCPT_POSTMASTER" в стандартной для Ubuntu 8.10 конфигурации позволяет легко изменить адрес постмастра. Но еще раз оговорюсь, это идет в разрез с rfc.

Итак мы "пометили" письмо для постмастера.

Проверим тему


Макрос CHECK_DATA_ACL_FILE позволяет указать файл в котором будут расположены наши собственные ACL для проверки письма на этапе команды DATA.
Присваиваем ему значение, создаем файл и пишем свой ACL:

#
# Check subject in messages for postmaster
#
deny
message = We accept messages for postmaster only with Subject: "trouble". Please retry.
log_message = Not valid subject in message for postmaster - Subject=$h_Subject:
condition = ${if eq{$acl_m0}{1}{${if !eq{$h_Subject:}{trouble}{1}{0}}}{0}}


Перезапустим Exim:
#/etc/init.d/exim4 restart

Проверим работу тестовой сессией:
exim -bh 192.168.0.1
helo nethuman
mail from: <>
rcpt to: postmaster
data
Subject: trouble


Источники:



1. MAILBOX NAMES FOR COMMON SERVICES, ROLES AND FUNCTIONS (http://www.rfc-ignorant.org/rfcs/rfc2142.php)

2. STANDARD FOR THE FORMAT OF ARPA INTERNET TEXT MESSAGES (ftp://ftp.rfc-editor.org/in-notes)/rfc822.txt

3. The Exim Specification - Version 4.6x, p. 119. (http://exim.org/exim-pdf-current/doc/spec.pdf)

7 апр. 2009 г.

Считаем трафик на интерфейсах сервера

Дано:
Почтовый сервер на базе Ubuntu 8.10
Четыре сетевых интерфейса

Необходимо:
Считать трафик на каждом интерфейсе, вести статистику.

Решение:
vnstat - маленький консольный пакет, который считает трафик на указанных интерфейсах и не загружает систему. Статистика считается отдельно для каждого интерфейса, трафик по ip-адресам и портам не делится. Статистика выводится по запросу с детализацией по часам, дням, неделям и тд.

Хранится статистика в файлах в каталоге /var/lib/vnstat.
Занимает места мало - у меня за три дня работы 4кб для каждого интерфейса, итого 12кб для трех наблюдаемых интерфейсов.

Устанавливаем vnstat:
#apt-get install vnstat

Инициализируем базу данных для каждого необходимого интерфейса:
#vnstat -u -i eth0
#vnstat -u -i eth1
#vnstat -u -i eth2

Далее необходимо сказать vnstat запустить мониторинг интерфейса.
Это можно сделать путем ifdown/ifup для каждого интерфейса,
либо, если нет желания разрывать соединения выполнить для каждого:
#IFACE=eth${i}
#export IFACE
#/bin/sh -x /etc/network/if-up.d/vnstat

где ${i} порядковый номер интерфейса.

Все, мониторинг готов, теперь по прошествии нескольких минут можно смотреть статистику
#vnstat -q

15 янв. 2009 г.

Ubuntu Server 8.10 и GRUB на HP Proliant 580G5

Ставим Ubuntu Server 8.10.

Итак, проблема возникла сразу после окончания установки - машина перезагрузилась и упала в Red Screen of Death.

Так как на экране не успевало появится даже приглашение GRUB сделал вывод, что проблема появилась именно в нем (да и в англоязычных источниках об этом писали, правда применительно к серверам предыдущих поколений).

Дальше грузимся например с диска Ubuntu Desktop, монтируем разделы:

#mkdir /media/root
#mount /dev/cciss/c0d0p2 /media/root
#mount /dev/cciss/c0d0p1 /media/root/boot
#mount --bind /dev /media/root/dev

меняем корень
#chroot /media/root

настраиваем GRUB
#grub
#grub> device (hd0) /dev/cciss/c0d0
#grub> root (hd0,0)
#grub> setup (hd0)

Примечание:
/dev/cciss/c0d0p2 - раздел где размещен корень файловой системы
/dev/cciss/c0d0p1 - раздел /boot

1 февр. 2008 г.

Compiz + Mplayer

После включения Compiz'a перестал работать Mplayer.

Вылечил костылем:

echo "vo=x11" >> ~/.mplayer/config

29 янв. 2008 г.

LCD wide on i945

Получил новый комп на работе :)

Радость обновления железа была слегка омрачена тем, что встроенное графическое ядро i945 не предоставляло возможности установить родное для моего Samsung SyncMaster 940bw разрешение.


Как всегда помог Гугл.
На каком-то Итальянском или Французском сайте обнаружил инструкцию.

Далее приведу свой русский вариант:

sudo apt-get install xserver-xorg-video-intel
sudo apt-get remove 915resolution
sudo dpkg-reconfigure -phigh xserver-xorg

Сообщаем утилите конфигурации что мы хотим использовать драйвер intel и разрешение монитора необходимо установить в 1440х900.

После чего заработали все красявости Compiz'a :)


Информация взята отсюда:
http://oscar.burodigital.com.mx/mini-how-to-resolucion-intel-1440900-i845-i915-i945-i965/