27 сент. 2012 г.

vSphere Client не может подключиться к ESXi

Вы вводите заведомо валидные данные, и после паузы выпрыгивает ошибка типа такой:

The server 'my.host.name' could not interpret the client's request. (The remote server returned an error: (503) Server Unavailable
Call "ServiceInstance.RetrieveContent" for object "ServiceInstance" on Server "my.host.name" failed.


При это с помощью SSH нормально можно зайти на хост. Точнее, нужно зайти и выполнить команду:

/sbin/services.sh restart

После завершения всех действий команды (когда вы опять увидите приглашение командной строки) можно будет снова зайти на ESXi гипервизор с помощью vSphere Client.

17 сент. 2012 г.

Конференции в Asterisk на ОС Debian 6 или RHEL 6 (Oracle Linux, CentOS) с использованием Meetme (dahdi)

В общем, недавно возился с этими конференциями... При попытке создания конференции появляется ошибка unable to open pseudo device .Вначале установил dahdi (раньше оно называлось Zaptel и служит как интерфейс между модемами и Asterisk, либо как заглушка для Meetme, если модемов никаких нет) из пакетов - не решило это проблему.

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

Скачиваем исходники dahdi-linux-complete:

wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/releases/dahdi-linux-complete-2.6.1+2.6.1.tar.gz

Последнюю версию исходников модуля можно скачать здесь.

tar -xzvf dahdi-linux-complete-2.6.1+2.6.1.tar.gz 
cd dahdi-linux-complete-2.6.1+2.6.1/

Если у вас не установлены заголовки текущей версии ядра, устанавливаем. Для Debian:

apt-get install linux-headers-`uname -r`

Для RHEL-дистрибутивов:

yum install kernel-devel kernel-headers gcc

Для Oracle Linux с его UEK-kernel:

yum install kernel-uek-devel.x86_64 kernel-uek-headers.x86_64 gcc

Произведем компиляцию модуля ядра:

make all
make install
make configure

В более новых версий вместо последней команды надо выполнить:

make config

Далее загружаем установленный модуль:

modprobe dahdi

Теперь прописываем правила в extensions.conf для конференции:

exten => 500,1,MeetMe(500)              ;conference room 500
exten => 500,n,Hangup()

Не забыв, конечно же, прописать конференцию в meetme.conf:

conf => 500

Теперь при наборе номера 500 мы будем попадать в соответствующую конференцию.

Добавочный номер можно изменять, добавлять новые номера для конференций, ставить цифровой пароль на конференцию - это всё хорошо описано в комментариях в файле meetme.conf.

11 сент. 2012 г.

Добавить route в iPad 2

Бывает, когда заходим по VPN (встроенный в iPad клиент), без маршрутов какие-лтбо узлы сети могут быть не доступны. Чтобы прописать нужный роут делаем следующее.


Заходим в нашу любимую Cydia и находим там в стандартных репозиториях софтинку network-cmds, устанавливаем.

10 сент. 2012 г.

Авторизация в Apache c помощью MySQL (mod-auth-mysql)

MySQL авторизация - неплохой вариант, особенно для сайтов, использующих эту БД.
Порывшись в инете, разобрался, как её настроить и вот шаги, котором следует последовать :)

1. Устанавливаем необходимый софт (имеется в виду, что веб-сервер уже есть и настроен):

apt-get install libapache2-mod-auth-mysql
a2enmod auth_mysql


2. Создаем для примера БД:

mysql -u root -p
mysql> grant all on auth.* to auth_user@localhost identified by '<auth_password>';
mysql> flush privileges;
mysql> create database auth;
mysql> use auth;
mysql> CREATE TABLE `clients` (
`username` varchar(25) NOT NULL default '',
`passwd` varchar(25) NOT NULL default '',
`groups` varchar(25) NOT NULL default '',
PRIMARY KEY (`username`),
KEY `groups` (`groups`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
mysql> INSERT INTO `clients` VALUES ('<username>', '<password>', '<group>');


3. Редактируем файл виртуалхоста (или .htaccess нужной папки), например:

nano /etc/apache2/sites-available/default


<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www
        <Directory />
                Options FollowSymLinks
                AllowOverride All

        </Directory>
        <Directory /var/www/>    
                AuthMYSQL on     #включает авторизацию по мускулю
                AuthMySQL_Authoritative on
                AuthMySQL_DB auth     #имя БД, в которой находится наша авторизация
                AuthMySQL_Host 127.0.0.1     #адрес или имя хоста с мускулем

                #AuthMySQL_Port 3306     #порт, если отличен от дефолтового
                #AuthMySQL_Socket <socket>    #сокет, если используется

                AuthMySQL_User auth_user     #пользователь БД
                AuthMySQL_Password <auth_password>     #пароль пользователя БД
                AuthMySQL_Password_Table clients     #таблица паролей
                AuthMySQL_Username_Field username     #поле, содержащее имя пользователя
                AuthMySQL_Password_Field passwd     #поле, содержащее праоль пользователя
                #AuthMySQL_Group_Table clients     #поле, содержащее принадлежность к группе
                AuthMySQL_Empty_Passwords off     #запретить пустые пароли
                Auth_MySQL_Encrypted_Passwords off    #если on - указывается, что пароли зашифрованы
                AuthMySQL_Encryption_Types Plaintext     #типа шифрования - может быть Plaintext, Crypt_DES, MySQL. Можно через пробел указывать несколько методов, которые будут использоваться по-очереди
                AuthBasicAuthoritative Off     #Отключить Basic-авторизацию - какойто костыль, без него не работает
                AuthUserFile /dev/null     #типа файл с паролями - тоже костыль
                Require valid-user     #требовать авторизацию. Тут также можно указывать имена групп (несколько - через пробелы): Require group assassins templars .Или конкретных пользователей: Require user leonardo vincent .Это удаобно, если прописывать опции в .htaccess
                AuthName "Please Auth!"     #приветствие
                AuthType Basic #костыль
                <Limit GET POST> #ограничения для запросов                Require valid-user     
                </Limit>     

                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
                AddHandler mod_python .py
                PythonHandler index
        </Directory>

Запуск Wireshark под обычным (non-root) пользователем

Всё нижесказанное валидно для Oracle Linux 6 (RedHat 6, CentOS 6) 64 бита, в других дистрибутивах команды будут немного отличаться. Wireshark установлен не из пакетов, а их исходников, как я писал здесь

1. Устанавливаем зависимости (если еще не установлены):

yum install ibcap.x86_64 libcap-devel.x86_64

2. Проверяем наличие группы wireshark и если ее нет, создаем:

cat /etc/group
groupadd wireshark

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

usermod -a -G wireshark user
newgrp wireshark

Устанавливаем права команде dumpcap и добавляем ее в нашу группу:

setcap cap_net_raw,cap_net_admin=eip /usr/local/bin/dumpcap
chgrp wireshark
/usr/local/bin/dumpcap
chmod 750 /usr/local/bin/dumpcap

4 сент. 2012 г.

Установка Wireshark в Oracle Linux из исходников

Вначале попытался установить из пакетов, получил ерроры о конфликтах в зависимостях и решил попробовтаь из сорцов:

yum install libpcap libpcap-devel.x86_64
wget http://wiresharkdownloads.riverbed.com/wireshark/src/wireshark-1.8.2.tar.bz2
tar -xjvf wireshark-1.8.2.tar.bz2
cd wireshark-1.8.2
./configure
make
make install

Запускаем:

wireshark

Восстановление загрузки Windows 7 / Vista

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

Имеется в вид, что восстановление из точки не помогает.

1. Настройте параметры BIOS таким образом, чтобы первым устройством загрузки был DVD-привод (во многих биосах при загрузке можно нажать [F11] и единоразово выбрать устройство для загрузки)
2. Вставьте установочный компакт-диск с Windows 7 и загрузитесь с него до этого окна:


Установка kDevelop 4 в Oracle Linux 6

Всё нижеизложенное  проделал в Oracle Linux 6.3, но скорее всего действия валидны и для RedHat/CentOS 6, т. к. они все "из одной пробирки".

Итак. Последнюю версию kDevelop - 4.3 - установить мне не удалось, т. к. необходимые ей kdelibs-devel были слишком старой версии в системе, а чтобы их обновить, пришлось бы переколбашивать всю систему с высоким шансом ее угробить, потому пришлось поставить старенькую версию kDevelop - 4.0.2.

1. Ставим зависимости:

yum install qtwebkit.x86_64 kdelibs-devel kdebase-workspace-devel

2. Качаем отсюда http://download.kde.org/stable/kdevelop/4.0.2/src/ и распаковываем сорцы:

cd /home/user/Downloads
wget http://download.kde.org/stable/kdevelop/4.0.2/src/kdevelop-4.0.2.tar.bz2
wget http://download.kde.org/stable/kdevelop/4.0.2/src/kdevplatform-1.0.2.tar.bz2
tar -xjvf kdevelop-4.0.2.tar.bz2
tar -xjvf kdevplatform-1.0.2.tar.bz2

3. Компилится оно немножко по-задроченному, потому создаем папки и копируем сорцы куда надо:

mkdir -p /home/user/src/kdevplatfom/build
mkdir -p /home/user/src/kdevelop/build
cp -R /home/user/Downloads/ kdevplatfom -1.0.2/* /home/user/src/kdevplatfom/
cp -R /home/user/Downloads/kdevelop-4.0.2/* /home/user/src/kdevelop/