30 нояб. 2011 г.

Блокировка почтовых доменов в Zimbra

Бывает так, что антиспам пропускает письма с ненужным содержанием и никакого желания кроме как заблокировать домен отправителя не возникает. Делается все довольно просто.

Открываем для редактирования файл /opt/zimbra/conf/salocal.cf.in
Находим секцию # accept email from zimbra support and forumns
Добавляем блокируемый домен (например блокируем всю почту из домена com.ua)
blacklist_from *.com.ua
Сохраняем файл и перезапускаем Zimbra командой
zmcontrol stop && zmcontrol start
Таким же образом можно добавить домен, почту от которого нужно всегда пропускать (например почту от пользователей своего домена). В той же секции необходимо добавить
whitelist_from *@zimbradomain.dom


28 окт. 2011 г.


Понадобилось организовать управление XenServer через Trunk Vlan, однако, не тут то было. Был разочарован. Согласно официальной документации этот функционал не поддерживается. Досадно! Нашел неплохой материал, как "завернуть" интерфейс управления (Management Interface) Citrix XenServer в Trunk Vlan.

23 июл. 2011 г.

Активация Jumbo Frames в Citrix XenServer SP2

Рассказывать для чего нужен Jumbo Frames я не буду. Этот функционал стал доступен еще в редакции Citrix XenServer FP1. Во всех мануалах пишут, что активировать Джумбо можно только при использовании Openvswitch. Однако все намного тривиальней. Итак если у Вас есть СХД поддерживающее Jumbo Frames и работающее через, соответственно, поддерживающий Jumbo Frames Switch, то для активации в Citrix XenServer необходимо сделать следующее:

1. Определяем в консоли нашего XenServer сетевой интерфейс для активации командой:

#xe pif-list | less

копируем UUID сетевого интерфейса

2. Убеждаемся что наш интерфейс именно тот:

# xe pif-params-list uuid=08a7ce16-36ab-3b8a-920c-7daf07f29e7f

Если по IP и  network-name-label это все таки тот интерфейс то ищем параметр other-config (MRW):
В нем ничего не должно быть связанное с MTU

3. Устанавливаем MTU 9000

# xe pif-param-set uuid=08a7ce16-36ab-3b8a-920c-7daf07f29e7f other-config:mtu=9000

4. Проверяем пинг с XenServer до СХД (Предварительно на СХД тоже должен быть сконфигурирован Jumbo Frames) ping -s 9000 xxx.xxx.xxx.xxx
Если пинг пошел, значит все отлично. Если же нет, можно вернуть все назад выполнив команду:

# xe pif-param-remove uuid=08a7ce16-36ab-3b8a-920c-7daf07f29e7f param-name=other-config param-key=mtu

6 июл. 2011 г.

Адреса для установки Linux по сети в Citrix XenServer

Для установки Linux по сети в Citrix XenServer можно использовать следующие украинские сервера:

Debian Squeeze 6 (32-bit): ftp://ftp.ua.debian.org/debian/
Ubuntu Lucid Lynx 10.04 (32-bit): ftp://ua.archive.ubuntu.com/ubuntu/
CentOS 5 (32-bit): ftp://ftp.tlk-l.net/pub/mirrors/centos.org/5/os/i386/

ftp:// может быть изменено на http://

26 июн. 2011 г.

Установка Dell OpenManage на Citrix XenServer 5.6 SP2

Все кому посчаcтливилось работать с серверным оборудованием компании Dell, наверняка знают о существовании пакета программ для мониторинга состояния оборудования под названием Dell OpenManage Server Administrator Managed Node  Данный пакет позволяет проводить комплексное наблюдение за Вашим "железом". Установить OMSA на XenServer 5.6 SP2  можно двумя способами:

Вариант номер 1 - При установке Citrix XenServer. Необходимо скачать дистрибутив с сайта Dell, выбрав свое оборудование, записать его на оптический диск и установить в привод, когда инсталлятор XenServer предложит установку Supplemential Pack и нажать Ok.

Вариант номер 2 - На уже установленном Citrix XenServer. В данном случае необходимо:

1. Скачать на XenServer хост дистрибутив с OMSA
2. Примонтировать дистрибутив к каталогу /mnt командой:
 mount -o loop OM-SrvAdmin-Dell-Web-LX-6.5.0-2247.XenServer56_A01.11.iso /mnt
3. Провести установку OMSA командой /mnt/./install.sh
4. Запустить сервисы OMSA командой  /opt/dell/srvadmin/sbin/srvadmin-services.sh start (можно просто перезапустить Citrix XenServer)
5. Отмонтировать образ дистрибутива командой umount /mnt
6. Зайти на установленный OpenManage по URL: https://xxx.xxx.xxx.xxx:1311

Где xxx.xxx.xxx.xxx - IP адрес сервера. Для входа необходимо использовать логин и пароль от XenServer

Примечание: В случае установки обновлений на Citrix XenServer хост, потребуется переустановка OMSA.

25 июн. 2011 г.

Добавление домена в белый список антиспама Zimbra

Недавно столкнулся с проблемой, что Gmail попал в черный список DNSBL.ORG, который я использую для проверки на спам в Zimbra.  Чтобы исправить эту ситуацию необходимо:

1. su zimbra
2. nano /opt/zimbra/conf/amavisd.conf.in
3. Ищем строку, которая начинается с:
{ # a hash-type lookup table (associative array)
и добавляем доверенный домен перед всеми остальными записями:

'gmail.com'     =>                  -10.0,

4. Сохраняем файл и перезапускаем антиспам командой:

zmamavisdctl stop && zmamavisdctl start

7 июн. 2011 г.

Установка Trixbox 2.8 в Citrix XenServer 6.5 FP1

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

1. Скачиваем установочный образ с сайта trixbox.org;

2. В Citrix XenCenter создаем новую виртуальную машину типа "Other install Media" и проводим установку стандартным способом с образа скачанного в пункте 1;

3. После успешной установки, с помощью Citrix XenCenter делаем загрузку по умолчанию с виртуального жесткого диска, входим в систему под пользователем root, настраиваем сеть командой system-config-network, перезагружаем сервер командой reboot;

4. Для удобства работы устанавливаем Midnight Commander командой yum install mc;

5.  Локализуем систему. Для этого комментируем содержимое файла /etc/sysconfig/i18n и добавляем туда следующее:

LANG="ru_RU.UTF-8"
SUPPORTED="ru_RU.UTF-8:ru_RU:ru"
SYSFONT="latarcyrheb-sun16"

Разлогиниваемся и залогиниваемся по новой чтобы ощутить эффект.
6. Изменяем конфигурационный файл загрузчика /etc/grub.conf и делаем ядро Xen загружаемое по умолчанию приводя строку default=1 к виду default=0. Также модифицируем параметры загрузки ядра приводя строки:

title trixbox (2.6.18-164.11.1.el5xen)
root (hd0,0)
kernel /xen.gz-2.6.18-164.11.1.el5
module /vmlinuz-2.6.18-164.11.1.el5xen ro root=LABEL=/
module /initrd-2.6.18-164.11.1.el5xen.img

К виду:

title trixbox (2.6.18-164.11.1.el5xen)
root (hd0,0)
kernel /vmlinuz-2.6.18-164.11.1.el5xen ro root=LABEL=/ console=xvc0
initrd /initrd-2.6.18-164.11.1.el5xen.img

Примечание: Если при установке использовался LVM, то запись должна выглядеть так:
kernel /vmlinuz-2.6.18-164.11.1.el5xen ro root=/dev/VolGroup00/LogVol00 console=xvc0
                                                           
7. Пересобираем initrd для ядра Xen:
rm -f /boot/initrd-2.6.18-164.11.1.el5xen.img
mkinitrd --with=xenblk --with=xennet /boot/initrd-2.6.18-164.11.1.el5xen.img 2.6.18-164.11.1.el5xen

8. Отключаем сервис автоопределения оборудования Kudzu
chkconfig --del kudzu

9. Устанавливаем версии драйверов Dahdi для ядра Xen
yum install -y kmod-dahdi-linux-xen

10. Конфигурируем доступ к консолям, для этого приводим секцию файла /etc/inittab с вида:

# Run gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

к виду:

# Run gettys in standard runlevels
co:2345:respawn:/sbin/agetty xvc0 9600 vt100-nav
#1:2345:respawn:/sbin/mingetty tty1
#2:2345:respawn:/sbin/mingetty tty2
#3:2345:respawn:/sbin/mingetty tty3
#4:2345:respawn:/sbin/mingetty tty4
#5:2345:respawn:/sbin/mingetty tty5
#6:2345:respawn:/sbin/mingetty tty6

11. Разрешаем пользователю root подключаться к консоли xvc0 для этого выполняем команду:

echo xvc0 >> /etc/securetty

12. Переводим виртуальную машину из режима полной виртуализации в режим паравиртуализации. Для этого сначала выключите виртуальную машину, а затем в консоли XenServer хоста, на котором она была запущена выполняем следующие команды (в качестве примера виртуальная машина называется trixbox):
vm=$(xe vm-list name-label=trixbox --minimal)
xe vm-param-set uuid=$vm PV-bootloader=pygrub HVM-boot-policy=
xe vm-param-set uuid=$vm PV-args=utf8
vbd=$(xe vm-disk-list uuid=$vm vdi-params=none --minimal)
xe vbd-param-set uuid=$vbd bootable=true

Закройте и снова откройте XenCenter. Это необходимо для того чтобы мышь начала корректно работать.

13. Запускаем виртуальную машину и обновляем XenTools, предварительно установив образ в виртуальный привод, после чего выполняем команды:

mount /dev/xvdd /mnt
/mnt/Linux/install.sh -k
reboot

Все. Теперь можно полноценно управлять этой виртуальной машиной.

6 июн. 2011 г.

Snapshot`ы в Citrix XenServer 5.6 FP1 (Снова о наболевшем)

Рано я радовался тому, что Citrix анонсировала в FP1 правильное удаление снепшотов с хранилища iSCSI.

Цитата из моего Citrix XenCenter: 488,1 GB used of 488,3 GB total (327,8 GB allocated).
Проссумировав размер виртуальных дисков - реально 327 Гб. Однако, подумал я - снова старая проблема!!! Танцы с бубнами на тему оффлайн очистки снепшотов результатов не дали:

xe host-call-plugin host-uuid=2b3a914e-6030-4595-a7a2-615c4642f286 plugin=coalesce-leaf fn=leaf-coalesce args:vm_uuid=e66cc30c-daf2-ff6f-c977-0ca983d54397

VM has no leaf-coalesceable VDIs

И так на каждой виртуалке. На всякий случай сделал экспорт виртуальных машин и удалил их. После чего когда XenCenter показал: 488,1 GB used of 488,3 GB total (0 Мb allocated) - сделал Detach Storage, а потом Reattach Storage и, о чудо, место вернулось. XenCenter показал: 4 Mb used of 488,3 GB total (0 Мb allocated)
Но на мой взгляд это не решение вопроса. Если у кого то вылезит такая "кака" попробуйте следующее:

1. Остановите все виртуальные машины (на всякий случай заранее забекаптесь);
2. Отключите хранилище;
3. Переподключите хранилище (ни в коем случае не форматируйте!!!).

18 мая 2011 г.

Настройка SNMP в Citrix XenServer 5.5

Понадобилось прикрутить к Cacti Citrix XenServer 5.5 хост. Все достаточно просто, в названии ссылка на оригинал статьи. Итак производим на хосте следующие действия:

1. Редактируем iptables
nano /etc/sysconfig/iptables

Добавляем после строки -A RH-Firewall-1-INPUT –p udp –dport 5353:
-A RH-Firewall-1-INPUT -p udp --dport 161 -j ACCEPT

Сохраняем файл по F2 и перезапускаем iptables командой:
service iptables restart

2. Активируем SNMP при загрузке хоста:
chkconfig snmpd on

3. Настраиваем SNMP:
nano /etc/snmp/snmpd.conf

Находим строку: view systemview included .1.3.6.1.2.1.25.1.1 и добавляем под ней строку
view all included .1

Находим строку access notConfigGroup “” any noauth exact systemview none none и изменяем на:
access notConfigGroup “” any noauth exact all none none

Находим и расскоментируем строку:
com2sec notConfigUser default public
и сохраняем файл по F2

4. Перезапускаем сервис SNMP:
service snmpd restart

Теперь можно опрашивать хост, указав комьюнити public

5 мая 2011 г.

Перезапуск зависшей виртуальной машины в Citrix XenServer

Не часто, но все же бывает когда не удается перезапустить виртуальную машину через Citrix XenCenter стандартным способом через Reboot или Force Reboot. Для разрешения данной ситуации можно попробовать следующий способ. Необходимо войти в консоль хостового сервера и выполнить команду:

xe-toolstack-restart

После выполнения этой команды будет потеряна связь с хостовым сервером на несколько секунд и после ее восстановления можно попытаться сделать Force Reboot для подвисшей виртуальной машины через Citrix XenCenter.

18 апр. 2011 г.

Отсутсутствие доступа к блогу.

Доброго времени суток всем, кто читает или почитывает мой блог. В связи с с сбоями на основном сервере, который поддерживал мое доменное имя, а это primaryns.kiev.ua, блог перестал резолвится. Впоследствии резервный сервер ns.secondary.net.ua из-за большого количества запросов к primaryns.kiev.ua (сервера бесплатные, поэтому имен очень много), удалил мою зону. Проблема была замечена не сразу, но сейчас работа восстановлена и мой "записнычок" работает в штатном режиме.

2 мар. 2011 г.

Мысли вслух

Как-то раз один человек вернулся поздно домой с работы, как всегда
усталый и задёрганный, и увидел, что в дверях его ждёт пятилетный сын.


— Папа, можно у тебя кое-что спросить?
— Конечно, что случилось?
— Пап, а сколько ты получаешь?
— Это не твоё дело! — возмутился отец. — И потом, зачем это тебе?
— Просто хочу знать. Пожалуйста, ну скажи, сколько ты получаешь в час?
— Ну, вообще-то, 500. А что?
— Пап… — сын посмотрел на него снизу вверх очень серьёзными глазами. — Пап, ты можешь занять мне 300?
— Ты спрашивал только для того, чтобы я тебе дал денег на какую-нибудь
дурацкую игрушку? — закричал тот. — Немедленно марш к себе в комнату и
ложись спать!.. Нельзя же быть таким эгоистом! Я работаю целый день,
страшно устаю, а ты себя так глупо ведешь.
Малыш тихо ушёл к себе в комнату и закрыл за собой дверь. А его отец
продолжал стоять в дверях и злиться на просьбы сына. «Да как он смеет
спрашивать меня о зарплате, чтобы потом попросить денег?»
Но спустя какое-то время он успокоился и начал рассуждать здраво:
«Может, ему действительно что-то очень важное нужно купить. Да чёрт с
ними, с тремя сотнями, он ведь ещё вообще ни разу у меня не просил
денег». Когда он вошёл в детскую, его сын уже был в постели.
— Ты не спишь, сынок? — спросил он.
— Нет, папа. Просто лежу, — ответил мальчик.
— Я, кажется, слишком грубо тебе ответил, — сказал отец. — У меня был
тяжелый день, и я просто сорвался. Прости меня. Вот, держи деньги,
которые ты просил.
Мальчик сел в кровати и улыбнулся.
— Ой, папка, спасибо! — радостно воскликнул он.
Затем он залез под подушку и достал еще несколько смятых банкнот. Его
отец, увидев, что у ребенка уже есть деньги, опять разозлился. А малыш
сложил все деньги вместе, и тщательно пересчитал купюры, и затем снова
посмотрел на отца.
— Зачем ты просил денег, если они у тебя уже есть? — проворчал тот.
— Потому что у меня было недостаточно. Но теперь мне как раз хватит, —
ответил ребенок. — Папа, здесь ровно пятьсот. Можно я куплю один час
твого времени? Пожалуйста, приди завтра с работы пораньше, я хочу чтобы
ты поужинал вместе с нами.


Мораль


Морали нет. Просто хотелось напомнить, что наша жизнь слишком
коротка, чтобы проводить её целиком на работе. Мы не должны позволять ей
утекать сквозь пальцы, не уделяя хотя бы крохотную её толику тем, кто
действительно нас любит, самым близким нашим людям.
Если нас завтра не станет, наша компания очень быстро заменит нас
кем-то другим. И только для семьи и друзей это будет действительно
большая потеря, о которой они будут помнить всю свою жизнь.
Подумай об этом, ведь мы уделяем работе гораздо больше времени, чем семье.

3 февр. 2011 г.

Полное удаление записанных треков из Navitel под Android

Все кто пользуется навигаторами Navitel под управлением Android, наверное, баловались записью треков. Все хорошо, вроде, записывать научились, теперь нужно научиться удалять. Если зайти на карте памяти в каталог NavitelContent, далее в папку Tracks - можно удалить файлы самих треков, но что же делать с фиолетовыми полосками на карте? Ведь они не исчезают даже после удаления файлов треков. Для очистки карты от неиспользуемых треков, нужно вооружиться, например, RootExplorer зайти в каталог /data/data/com.navitel/GPS Tracks and Waypoints и удалить там файл Tracks.bin. После очередного запуска Navitel этот файл будет пересоздан заново автоматически. Возможно в данной ситуации подойдет и любой другой файловый менеджер. Я использовал именно RootExplorer

27 янв. 2011 г.

Обновление c Citrix XenServer 5.6 до Citrix XenServer 5.6 FP1

Предыдущее обновление у меня вышло косяком, теперь посмотрим как же обновиться до Feature Pack 1.

1. Обновление XenCenter.

Тут все просто - скачиваем и запускаем инсталляционный пакет. Действуем согласно инструкций инсталлятора.

2. Обновление XenServer.

Если у Вас имеется в наличии ресурсный пул, то в первую очередь, необходимо при помощи XenMotion смигрировать все запущенные машины с мастера на дополнительные ноды, потому как обновление начинаем именно с мастера пула. (Если Вы вдруг забыли кто же у Вас мастер - зайдите в консоль управления сервером и в Resource Pool Configuration перейдите курсором на Designate a New Pool Master. Находяся на мастере пула будет следующая запись - This host is the current Pool Master.) После того как на мастере не осталось машин, перезапускаем хост (не вводя его в Maintenance Mode) предварительно скачав, записав и установив в оптический привод сервера диск с XenServer 5.6 FP 1. После загрузки установщика выбираем режим Upgrade. Если использовался дополнительный диск с Linux Guest Support, скачиваем и его, записываем на диск и будем готовы установить в привод, не забыв соответственно при обновлении XenServer указать, что будет использоваться дополнительный диск. Важно: Дополнительный диск либо нужно использовать на всех серверах пула, либо нигде. Если все пройдет удачно инсталлятор предложит перегрузиться, что с нетерпением и делаем. После загрузки проверяем работоспособность управляющего интерфейса, подключившись через Citrix XenCenter или запустив ping на какой нибудь адресс. Я, на всякий случай, после первой загрузки перегрузил мастер еще раз, так сказать, чтоб спалось спокойней. Мигрируем машины назад и повторяем процедуру для оставшихся серверов.

24 янв. 2011 г.

CrossOver Pro 9.2.0 для Mac и русский язык

Как известно для Mac существует несколько вариантов запуска Windows приложений:

1. В режиме BootCamp (Когда Windows установлена на отдельный раздел диска компьютера Mac);
2. В виртуальной машине VMware, VirtualBox, Parallels Desktop (Когда Windows программа запускается в среде виртуализированной ОС Windows параллельно с работающей Mac OS);
3. Через эмулятор CrossOver он же Wine в красивой обертке (Когда Windows программа запускается как неотъемлимая часть Mac OS)

Поговорим о варианте номер 3. Вроде все просто. Создали бутылку, установили приложение, запустили... Но вот досада как раз с установкой приложения... Все меню - кракозябрами. Итак чтобы победить нужно вооружиться 2 средствами.

1. Оригинальные шрифты Windows
2. TextEdit

По пункту 1: Копируем оригинальные шрифты из Windows по адресу
c:/windows/fonts

в
/Users/%USERNAME%/Library/Application Support/CrossOver/Bottles/%BOTTLENAME%/drive_c/windows/fonts

По пункту 2:

Открываем TexEdit файл cxbottle.conf по адресу:
/Users/%USERNAME%/Library/Application Support/CrossOver/Bottles/%BOTTLENAME%/

Находим в этом файле строки:
[EnvironmentVariables]
;;"PROMPT" = "$p$g"

и добавляем под ними:
"LANG"="ru_RU.UTF-8"
"LC_ALL"="ru_RU.UTF-8"

Вот и все!

П.С. Любители FreeBSD тихонько улыбнутся :-)

17 янв. 2011 г.

Просмотр IPTV через Wi-Fi в Linksys WRT54G2 с DD-WRT

Как известно IPTV работает по протоколу Multicast, что означает вещание UDP трафика во все порты нашего маршрутизатора, включая беспроводный. Это не есть гуд, т.к. IPTV поток, в моем случае, идет со скоростью 4 Мбайта в секунду, забивает полностью Wi-Fi. То есть, пока кто то смотрит телевизор, возможность работать через Wi-Fi полностью отстутствувет. Есть 2 варианта решения данной проблемы:

1. Выненесение беспроводного интерфейса в отдельный VLAN
2. Запуск прокси сервера UDPXY для Multicast трафика

Я пошел по второму пути. Итак приступим:

1. Выключаем SPI Firewall (Security - Firewall - Firewall Protection) 
2. Выключаем Multicast (Security - Firewall - Block Wan Requests) 
3. Прописываем в Administration - Commands 

cd /tmp 
sleep 30 
wget "http://plastilin.org.ua/files/upload/udpxy" 
sleep 30 
chmod +x udpxy 
/tmp/udpxy -a 192.168.18.254 -p 81 -m 109.86.x.x -B 1Mb -M 30 

Нажимаем Save startup и передергиваем по питанию роутер, через минуту все должно работать 

И например вместо стандартного адреса для Триолан Украина:

udp://@238.0.0.3:1234 

Прописываем в плеере VLC 

http://192.168.18.254:81/udp/238.0.0.3:1234


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


http://192.168.18.254:81/status