четверг, 11 октября 2012 г.

Переносим базу Drupal/Pressflow 6, без очистки кэша

Drupal logo
Drupal logo (Photo credit: Wikipedia)
Мыши плакали, кололись, но продолжали жрать кактус.

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

Случалось ли вам переносить базу друпала вместе с кэшем? Мда многие скажут что этим кэшем можно отдавить себе ... впрочем опустим это.

Конечно же самый простой способ это перед дампом очистить кэши и всё, или воспользоваться плагином самого друпала который создаст дамп без кэша, или использовать drush для этих целей. НО не всегда есть возможность воспользоваться перечисленными выше примерами (слишком высокая нагрузка для сброса кэша/несогласованно внесение изменений в прод/или бла-бла... что ни-будь ещё)

Если у вас именно этот случай читайте дальше.

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

Что делать если du и df выводят разные данные

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

Это выглядит примерно следующим образом.
df -h
 Filesystem            Size  Used Avail Use% Mounted on
 /dev/sda1             7,9G  7,6G     0 100% /
 tmpfs                 502M     0  502M   0% /lib/init/rw
 udev                  497M  100K  497M   1% /dev
 tmpfs                 502M     0  502M   0% /dev/shm

du -sh /
 2,2G    /
Чтобы получить список процессов которые до сих пор держат удалённые файлы, выполните следующую команду

воскресенье, 23 сентября 2012 г.

WEP/WPA/WPA2 - Тестируем на стойкость к проникновению своё оборудование

Aircrack-ng










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

В наше время технология Wi-Fi стала очень распространена, в каждом жилом доме или офисе можно поймать 3 и более wi-fi сетей. Я уверен, что у вас тоже имеется несколько домашних или рабочих wi-fi точек. И все знают, или хотя бы слышали о том, что wi-fi уязвим, но насколько, и как проверить насколько уязвима ваша личная точка никто толком не знает. Чем собственно и пользуются недоброжелатели и охотники до халявы.

В данной статье мы рассмотрим атаку на самый распространённый протокол безопасности WPA2(он же является самым надёжным на данный момент), и самый распространённый тип атаки - перебор по словарю(brute force).
Для этого в режиме мониторинга беспроводной карты сканируется эфир и записываются необходимые пакеты. Далее проводится деавторизация клиента для захвата начального обмена пакетами (handshake), либо нужно ждать пока клиент совершит подключение. После этого уже нет необходимости находиться недалеко от атакуемой точки доступа. Атака проводится оффлайн с помощью специальной программы и файла с хэндшейком.(Wikipedia)

среда, 19 сентября 2012 г.

CentOS LAMP чуть больше чем в две строчки

Устанавливаем httpd.
yum install -y httpd mysql mysql-server php php-cli\
 php-mysql php-common php-curl php-gd php-mcrypt php-suhosin
Записываем виртуалхост.
cat >> /etc/httpd/conf/httpd.conf <<EOF

NameVirtualHost *:80
<VirtualHost *:80>
        <Directory /opt/www/example.com>
        AllowOverride All
        </Directory>
    DocumentRoot /opt/www/example.com/

    ServerName example.com
    ErrorLog logs/example.com-error_log
    CustomLog logs/example.com-access_log common
</VirtualHost>
EOF
Создадим директорию сайта.
mkdir -p /opt/www/example.com/
Запишем httpd в автозагрузку и запустим сервис.
chkconfig --level 345 httpd on
service httpd start

Enhanced by Zemanta

Рассчитываем параметры prefork.c для Apache в Linux

English: Logo for the Apache HTTPD Server Proj...

Не так давно мне пришлось настраивать LAMP кластер с балансером несколькими WEB нодами и одной базой данных. В отличие от не больших сайтов с низкой загруженностью, крупным проектам нужна более детальная настройка. В этой статье я собираюсь рассказать о настройке лишь одного модуля под названием prefork.c это один из нескольки multi-processing модулей для Apache httpd и самый распространённый по ряду причин. Во время своих изысканий, я перерыл очень много документации и статей в интернете основная часть которых сводилась к тому, что параметры prefork.c для каждого хоста следует выбирать тестовым путём. Вышеуказанное заявление не лишено смысла, универсальных настроек не существует, но оно не решает основной задачи: а что же делать конкретно мне прямо сейчас, особенно в условиях продакшн сервера. Я решил попытаться ответить на этот вопрос, и сделать максимально простое и универсальное средство для решения этой задачи.

вторник, 11 сентября 2012 г.

Load Balancer на базе NGINX в Debian Squeeze

English: Nginx Logo Español: Logo de Nginx


Рассмотрим построение простого дешевого HTTP балансера на базе Debian+Nginx.

Итак мы имеем

  1. MySQL server - мы не будем рассматривать его конфигурацию, и предположим, что WEB ноды к нему обращаются и работают.
  2. WEB Server 1 - host1.example.com(принимает запросы, общается с базой данных, отдает контент)
  3. WEB Server 2 - host2.example.com(настроен идентично "WEB Server 1")
  4. HTTP balancer - NGINX

Схема выглядит примерно так:

PHP53u + memcache + apc в CentOS 5

Когда я попытался настроить memcache + APC в тестовой ветке CentOS 5, я очень удивился когда не нашел расширения memcache для php53 в репозитарии.

По этой пришлось использовать репозиторий IUS.

Приступим:
Установим репозитории в систему.
rpm -Uvh http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/ius-release-1.0-10.ius.el5.noarch.rpm
rpm -Uvh http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/x86_64/epel-release-5-4.noarch.rpm

вторник, 28 августа 2012 г.

Прописываем статический public_key в VMware ESXi 4.1

VMware Player


















Для начала вы должны создать связку Public/Private ключей, разумеется если у вас их нет.
Как это делается вы можете прочесть тут.

Теперь можно скопировать ваш публичный ключ на ESXi хост.
ssh-copy-id root@esxi-host
И на конец подключимся к esxi хосту, заархивируем каталог .ssh и скажем гипервизору, чтобы архив  public_key.tgz распаковывался при каждой загрузке системы.
ssh root@esxi-host
 X11 forwarding request failed on channel 0
 You have activated Tech Support Mode.
 The time and date of this activation have been sent to the system logs .

 VMware offers supported, powerful system administration tools.  Please
 see www.vmware.com/go/sysadmintools for details.

 Tech Support Mode may be disabled by an administrative user.
 Please consult the ESXi Configuration Guide for additional 
 important information.

~ # tar -C / -czf public_key.tgz .ssh
~ # BootModuleConfig.sh --add=public_key.tgz --verbose
 Acquiring lock /tmp/bootbank.lck
 Copying public_key.tgz to /bootbank/public_key.tgz
 Editing /bootbank/boot.cfg to add module public_key.tgz
~ # exit
~ # Connection to esxi-host closed by remote host.
Connection to esxi-host closed.
Всё!!!
Enhanced by Zemanta

Настраиваем SSH аутентификацию по публичному RSA/DSA ключу

Использовать аутентификацию по публичному ключу можно в разных целях, и рас вы попал на эту страницу, значит вы знаете зачем оно вам надо =)).

Для аутентификацию по публичному ключу можно использовать либо RSA либо DSA алгоритм. Лично я предпочитаю RSA.

Генерируем RSA ключи
ssh-keygen -t rsa
 Generating public/private rsa key pair.
 Enter file in which to save the key (/home/user/.ssh/id_rsa): 
 Created directory '/home/user/.ssh'.
 Enter passphrase (empty for no passphrase): 
 Enter same passphrase again: 
 Your identification has been saved in /home/user/.ssh/id_rsa.
 Your public key has been saved in /home/user/.ssh/id_rsa.pub.
 The key fingerprint is:
 41:0d:3b:e2:23:e1:24:a2:57:11:10:0e:b5:03:e8:0f user@scorpius-adm
 The key's randomart image is:
 +--[ RSA 2048]----+
 |+.+oo.  oo       |
 |.+ . . . ..      |
 |o = + . +        |
 |.E * o . o       |
 |. + o o S        |
 | . . . .         |
 |                 |
 |                 |
 |                 |
 +-----------------+