4 груд. 2012 р.

Перенаправление в Alfresco с порта 8080 на 80

Если на сервере Alfresco больше не планируется размещать другие веб сервисы или дополнительные домены, то для перенаправления c порта по умолчанию 8080 на порт 80 при загрузке достаточно добавить в файл /etc/rc.local строчку:

iptables -A PREROUTING -t nat -p tcp -d XXX.XXX.XXX.XXX --dport 80 -j REDIRECT --to-port 8080

Где: XXX.XXX.XXX.XXX - IP адрес сервера Alfresco.

30 трав. 2012 р.

Адреса NTP серверов в Украине

Отказался от использования серверов:

0.pool.ntp.org
1.pool.ntp.org
2.pool.ntp.org
3.pool.ntp.org

В пользу отечественного производителя:

ntp.time.in.ua (Stratum 1)
ntp.exact-time.org (Stratum 1)
ntp1.colocall.net (Stratum 2)
ntp2.colocall.net (Stratum 2)
ntp1.campus-rv.net (Stratum 2)
ntp2.campus-rv.net (Stratum 2)
ntp.net.dn.ua (Stratum 2)
ntp.lucky.net (Stratum 2)
ntp.mirohost.net (Stratum 2)

На момент написания заметки - все сервера функционируют.

Для проверки в Linux NTP выполнить команду:

ntpq -pn

29 трав. 2012 р.

Установка и настройка Elastix 2.3 в режиме паравиртуализации под управлением Citrix XenServer 5.6 SP2


Процесс установки очень похож на процесс установки Trixbox под управлением CitrixXenServer. Но есть пару "Но"...

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

2. В Citrix XenCenter создаем новую виртуальную машину типа "Other install Media" и проводим установку стандартным способом. При проведении установки рекомендую сразу правильно прописать FQDN сервера. (Наблюдалась ошибка при старте Web сервера);

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

4. Устанавливаем необходимое ПО командой
yum install kernel-xen.i686 kernel-module-dahdi-xen.i686 kernel-module-rhino-xen.i686 htop.i386 iftop.i386 fail2ban.noarch;

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

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

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

6. Удаляем старое ядро командой yum remove kernel.i686  и приводим конфигурационный файл загрузчика /etc/grub.conf следующему виду:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00
#          initrd /initrd-version.img
#boot=/dev/hda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-308.4.1.el5xen)
root (hd0,0)
kernel /vmlinuz-2.6.18-308.4.1.el5xen ro root=/dev/VolGroup00/LogVol00 console=xvc0
initrd /initrd-2.6.18-308.4.1.el5xen.img
                                                       
7. Пересобираем initrd для ядра Xen:

rm -f /boot/initrd-2.6.18-308.4.1.el5xen.img
mkinitrd --with=xenblk --with=xennet /boot/initrd-2.6.18-308.4.1.el5xen.img 2.6.18-308.4.1.el5xen

8. Конфигурируем доступ к консолям, для этого приводим секцию файла /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

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

echo xvc0 >> /etc/securetty

10. Переводим виртуальную машину из режима полной виртуализации в режим паравиртуализации. Для этого сначала выключите виртуальную машину, а затем в консоли XenServer хоста, на котором она была запущена выполняем следующие команды (в качестве примера виртуальная машина называется elastix):


vm=$(xe vm-list name-label=elastix --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. Это необходимо для того чтобы мышь начала корректно работать.

11. Извлекаем установочный образ из виртуального привода. В свойствах виртуальной машины, в разделе Boot, выставляем загрузку с Hard Disk. Запускаем виртуальную машину и обновляем XenTools, предварительно установив образ в виртуальный привод, после чего выполняем команды:

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

12. Отключаем лишнее, чтобы не ругалось при старте и запускаем нужное:

chkconfig kudzu off
chkconfig wanrouter off
chkconfig iscsid off
chkconfig iscsi off
chkconfig fail2ban on

13. Обновляем Elastix командой  yum update (Рекомендую предварительно сделать Snapshot, мало ли что...) Перезагружаемся.

14. Подключаем русскую озвучку или по другому "тетю робота" по следующей инструкции.

15. Настраиваем fail2ban согласно следующей инструкции:

Все. Теперь можно полноценно и безопасно использовать, а также управлять этой виртуальной машиной. У кого есть дополнительные идеи - пишите.

П.С. У тех кто активирует встроенный Firewall в Elastix, перестанет работать Flash Operator Panel. Нужно создать правило iptables, TCP/5038 для серверной стороны и TCP/4445 для клиентской стороны.

11 квіт. 2012 р.

Удаляем остатки SVN из проекта

Если Вам, по какой то нелепой случайности, достался проект с каталогами .svn то избавиться от них поможет команда:

find . -name .svn -print0 | xargs -0 rm -rf

29 лют. 2012 р.

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

Многим известно, что начиная с 6 версии Citrix XenServer из Citrix XenCenter убрана возможность выставления чекбокса автозапуска виртуальной машины при старте XenServer. Досадно конечно, теперь эта функция доступна в платной редакции с High Availability. Сделано это, по заверению разработчиков, исключительно в целях заботы о безопасности нас - пользователей.
Если говорить языком Google Translate то имеем приблизительно следующее:
Он был удален из-за плохого взаимодействия с другими функциями, такими как высокая доступность, Rolling Бассейн обновления и интегрированные DR. Автозапуск настройками виртуальных машин начинается в неконтролируемых моды, в самое неподходящее время или в неправильном хостов и фактически нарушил эти другие функции.
 Но если все таки нужно настроить автозапуск для одного сервера можно воспользоваться следующим способом:

1. Для начала необходимо выяснить uuid виртуальных машин, которые должны самостоятельно запускаться. В консоли сервера необходимо выполнить команду


xe vm-list

Получим приблизительно следующее:

uuid ( RO)           : 5fa88a5d-5906-7d66-dc5f-3924be3acbd0
     name-label ( RW): yellow
    power-state ( RO): halted
uuid ( RO)           : ccfc11a9-728c-cc26-ecf2-babc36c51631
     name-label ( RW): red
    power-state ( RO): running

2. Открываем на редактирование файл rc.local, для этого выполняем команду


nano /etc/rc.local

3. Дописываем в конец файла:

sleep 20
xe vm-start uuid=ccfc11a9-728c-cc26-ecf2-babc36c51631
sleep 20
xe vm-start uuid=5fa88a5d-5906-7d66-dc5f-3924be3acbd0


Сохраняем файл по F2.

Теперь после перезагрузки XenServer будет произведен автоматический запуск перечисленных виртульных машин с задержкой в 20 секунд.

14 лют. 2012 р.

Группа MMDANCE против Pitbull feat. T-Pain (Или кто ж у кого украл?)

Ехал в машине и услышал по радио песню группы MMDANCE - Баня. Мне показалась очень странно знакомой мелодия и я решил найти оригинал.

Итак ЭмэмдэНс - Баня



Pitbull feat. T-Pain - Hey Baby



А вот пример если это склеить в кучку


Плагиат... Хреново... Возрождение Киркоровщины...

11 лют. 2012 р.

Автоматизация звонков в Sipdroid

Появилась необходимость автоматизировать выбор "через что звонить" в Sipdroid. По умолчанию политика звонков Sipdroid заключается в отправке всех звонков через него в случае доступности PBX. Встроенными средствами программы можно сделать возможность выбора перед совершением звонка, а именно звонить через мобильную сеть или через SIP. Меня ситуация с постоянным выбором не устраивала и я решил автоматизировать этот процесс. Так как через SIP мне предоставляется возможность бесплатно звонить только на городские и междугородние номера Украины, то необходимо было сделать так чтобы Sipdroid не звонил на мобильные, а также не отправлял USSD запросы. Погуглив наткнулся на Readme по регулярным выражениям Sipdroid и создал список соответствующий своим требованиям:

\A\*,\A\+38039,039,\A\+38050,050,\A\+38063,063,\A\+38066,066,\A\+38067,067,\A\+38068,068,\A\+38091,091,\A\+38092,092,\A\+38093,093,\A\+38094,094,\A\+38095,095,\A\+38096,096,\A\+38097,097,\A\+38098,098,\A\+38099,099

Осталось только записать регулярные выражения, в пункте "Шаблон исключений" дополнительных настроек программы.

8 лют. 2012 р.

Настройка стандартных портов IMAP и POP3 в Zimbra

Не знаю у кого как, а уменя эти самые порты неправильные, точнее они правильные но не стандартные 7143, 7110, а вот стандартные 143 и 110 как раз назначены неким сервисам Proxy IMAP и Proxy POP3. Заодно поправим и перепутанные защищенные порты. Чтобы это сделать необходимо войти в систему под пользователем zimbra и выполнить следующую команду:

zmprov -l ms zimbraPop3BindPort 110 zimbraPop3SSLBindPort 995 zimbraPop3ProxyBindPort 7110 zimbraPop3SSLProxyBindPort 7995 zimbraImapBindPort 143 zimbraImapSSLBindPort 993 zimbraImapProxyBindPort 7143 zimbraImapSSLProxyBindPort 7993

Где - полное имя Вашего почтового сервера, например mail.domain.local

После чего необходимо выполнить команду: zmcontrol restart
Проверить результат можно выполнив команду: zmprov gacf | grep Imap

7 лют. 2012 р.

Русификация Ubuntu установленной в Citrix XenServer


Известно что с версии 6 Citrix XenServer поддерживает Ubuntu Linux в качестве гостевой операционной системы в режиме. Однако есть один маленький "косяк" т.к. система устанавливается по сети по умолчанию интерфейс системы англоязычный. Кому такое положение вещей не нравится может спокойно его поправить выполнив следующие команды:


ubuntu$ sudo aptitude install language-pack-ru
ubuntu$ echo LANG="ru_RU.UTF-8" > /etc/default/locale
ubuntu$ sudo reboot