понедельник, 29 октября 2012 г.
четверг, 25 октября 2012 г.
auditd: следим за файлами
Недавно потребовалось последить за судьбой одного файлика - кто и когда что с ним делает. С auditd раньше не работал, а тут подумал, что наверно он как раз такими вещами должен заниматься. Оказалось, что, при помощи него, отслеживание файлов - занятие лёгкое и приятное )
Значит, надо нам проследить за судьбой файлика /tmp/vipfile. Говорим:
Значит, надо нам проследить за судьбой файлика /tmp/vipfile. Говорим:
# auditctl -w /tmp/vipfileНу а потом с ним кто-то что-то делает:
1. $ touch /tmp/vipfileВ какой-то момент мы хотим посмотреть, было ли что-нибудь интересное с файликом:
2. $ echo test > /tmp/vipfile
3. $ echo test2 >> /tmp/vipfile
4. $ cp /tmp/vipfile /tmp/vipfile_backup
5. $ rm /tmp/vipfile
6. $ cp /tmp/vipfile_backup /tmp/vipfile
7. $ cat /tmp/vipfile
8. $ /tmp/vipfile
9. $ rm /tmp/vipfile
# aureport -fВсё как на ладони.
File Report
===============================================
# date time file syscall success exe auid event
===============================================
1. 10/25/2012 19:28:13 /tmp/ 2 yes /bin/touch 500 60063
2. 10/25/2012 19:28:17 /tmp/vipfile 2 yes /bin/bash 500 60064
3. 10/25/2012 19:28:21 /tmp/vipfile 2 yes /bin/bash 500 60065
4. 10/25/2012 19:28:29 /tmp/vipfile 2 yes /bin/cp 500 60066
5. 10/25/2012 19:28:35 /tmp/ 263 yes /bin/rm 500 60068
6. 10/25/2012 19:28:44 /tmp/ 2 yes /bin/cp 500 60070
7. 10/25/2012 19:28:56 /tmp/vipfile 2 yes /bin/cat 500 60071
8. 10/25/2012 19:29:01 /tmp/vipfile 59 no /bin/bash 500 60072
9. 10/25/2012 19:29:07 /tmp/ 263 yes /bin/rm 500 60074
вторник, 18 сентября 2012 г.
sshd не принимает ключ
Надо было нагиосу сделать вход по ключу на очередной ноде. Сделал - не пускает. Несколько раз сверил права на .ssh, на authorized_keys, на хомяки - всё правильно. Но не принимает ключ, давай пароль и всё тут. Самое забавное - таких серверов полно, все настроены одинакого - ходит нагиос по ключику. Попробовал себе ключ сделать - пускает.
-vvv ничего интересного кроме очевидного не показал:
Врубил DEBUG3 в конфиге демона:
-vvv ничего интересного кроме очевидного не показал:
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /var/spool/nagios/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
Врубил DEBUG3 в конфиге демона:
И это через гугл навело на selinux )) Вот и все дела. Отключил и заработало.
debug3: mm_answer_keyallowed entering
debug3: mm_answer_keyallowed: key_from_blob: 0xaaaabbbbcc60
debug1: temporarily_use_uid: 333/333 (e=0/0)
debug1: trying public key file /home/nagios/.ssh/authorized_keys
debug1: restore_uid: 0/0
debug1: temporarily_use_uid: 333/333 (e=0/0)
debug1: trying public key file /home/nagios/.ssh/authorized_keys2
debug1: restore_uid: 0/0
Failed publickey for nagios from 178.111.22.33 port 58970 ssh2
debug3: mm_answer_keyallowed: key 0xaaaabbbbcc60 is not allowed
пятница, 7 сентября 2012 г.
ssh: укорачиваем команду
Уже как-то писал про то, как удалось сократить длину некот. git команд за счёт настройки хостов в ssh_config. Решил на ноуте сделать так же для наших хостов, чтобы не набивать "$ ssh username@host.domain.org".
Так, как писать секции самому неохота, сделал скриптик sshgen.sh, вызываемый в цикле:
Так, как писать секции самому неохота, сделал скриптик sshgen.sh, вызываемый в цикле:
#!/bin/bashРаботает так:
if [ $# -eq 0 ]; then
echo "Usage: sshgen.sh host domain user"
else
echo "Host $1"
echo " User $3"
echo " HostName $1.$2"
fi
$ for a in {1..7};do for b in vps$a;do ./sshgen.sh $b domain.com username; done; doneПолученный вывод суём в ssh_config и вместо "$ ssh username@host.domain.org" пишем "$ ssh host"
Host vps1
User username
HostName vps1.domain.com
Host vps2
User username
HostName vps2.domain.com
Host vps3
User username
HostName vps3.domain.com
Host vps4
User username
HostName vps4.domain.com
Host vps5
User username
HostName vps5.domain.com
Host vps6
User username
HostName vps6.domain.com
Host vps7
User username
HostName vps7.domain.com
среда, 5 сентября 2012 г.
ISP: account disabled by server administrator
Человек жалуется - просрочил оплату, был залочен. Оплатил, но "сайт досихпор неработает".
Смотрю, действительно залочен. Нашёл в основном конфиге апача секцию с его хомяком:
Дёрнул суспенд/унсуспенд - 0.
Руками потёр начинку секции. Вот теперь интересно - заменится ли ручная правка? )) Посмотрим..
Самый прикол, что лочился и разлочивался акк через испэшный http api. На их форуме нашёл пост про аналогичную ситуацию, но там акки оставались лоченными из-за порчи конфига апача лишними закрывающими тегами секций. Официальная позиция на этот счёт - да, баг имеет место и не только с конфигом апача. Но баг редкий и трудновоспроизводимый, поэтому пока не отловили.
Если тут есть связь - становится немножко грустно.
Смотрю, действительно залочен. Нашёл в основном конфиге апача секцию с его хомяком:
<Directory /var/www/username/data>
AllowOverride none
Deny from all
ErrorDocument 403 /disabled/index.html
</Directory>
Дёрнул суспенд/унсуспенд - 0.
Руками потёр начинку секции. Вот теперь интересно - заменится ли ручная правка? )) Посмотрим..
Самый прикол, что лочился и разлочивался акк через испэшный http api. На их форуме нашёл пост про аналогичную ситуацию, но там акки оставались лоченными из-за порчи конфига апача лишними закрывающими тегами секций. Официальная позиция на этот счёт - да, баг имеет место и не только с конфигом апача. Но баг редкий и трудновоспроизводимый, поэтому пока не отловили.
Если тут есть связь - становится немножко грустно.
пятница, 31 августа 2012 г.
четверг, 30 августа 2012 г.
среда, 29 августа 2012 г.
PHP и ./configure --prefix
Собираю сухосин. Не могу префикс задать, вместо моего /usr/local/php52 встаёт дефолтный.
Нашёл "фичу", епт: можно хоть обделаться, передавая конфигуратору опции, которые, между прочим, в хелпе конфигуратора перечислены, но он их затрёт данными, получаемыми от php-config. Странное поведение, по идее, должно быть наоборот. В общем, вместо префиксов просто задал
Нашёл "фичу", епт: можно хоть обделаться, передавая конфигуратору опции, которые, между прочим, в хелпе конфигуратора перечислены, но он их затрёт данными, получаемыми от php-config. Странное поведение, по идее, должно быть наоборот. В общем, вместо префиксов просто задал
./configure --with-php-config=/usr/local/php52/bin/php-config
вторник, 28 августа 2012 г.
Сборка php 5.4 для cpanel с php 5.3
Сказали, что надо для панелей запилить пых 5.4, сохранив основным 5.3.
Собрал c блекджеком, проститутками и параметрами:
Дальше самое интересное: в suphp указываем путь до нового пыха и в конфе апача добавляем хандлер:
/opt/suphp/etc/suphp.conf:
/usr/local/apache/conf/includes/pre_virtualhost_2.conf:
Теперь клиенту достаточно добавить в .htaccess:
Собрал c блекджеком, проститутками и параметрами:
./configure --prefix=/usr/local/php54 --enable-bcmath --enable-calendar --enable-exif --enable-ftp --enable-gd-native-ttf --enable-mbstring --enable-pdo --enable-soap --enable-sockets --enable-wddx --enable-zip --with-bz2 --with-curl=/opt/curlssl/ --with-freetype-dir=/usr --with-gd --with-gettext --with-imap=/opt/php_with_imap_client/ --with-imap-ssl=/usr --with-jpeg-dir=/usr --with-kerberos --with-libdir=lib64 --with-libexpat-dir=/usr --with-libxml-dir=/opt/xml2 --with-libxml-dir=/opt/xml2/ --with-mcrypt=/opt/libmcrypt/ --with-mysql=/usr --with-mysql-sock=/var/lib/mysql/mysql.sock --with-mysqli=/usr/bin/mysql_config --with-pcre-regex=/opt/pcre --with-pdo-mysql=shared --with-pdo-sqlite=shared --with-pic --with-png-dir=/usr --with-tidy --with-xmlrpc --with-xpm-dir=/usr --with-xsl=/opt/xslt/ --with-zlib --with-zlib-dir=/usr --with-zend-vm --with-pgsql --with-pdo-mysql --with-pdo-pgsqlПришлось по мелочи либ доставить, конфигурялка подсказала. Взял стоковый php.ini, поправил лимиты на память, аплоад, пост и еррор лог задал.
Дальше самое интересное: в suphp указываем путь до нового пыха и в конфе апача добавляем хандлер:
/opt/suphp/etc/suphp.conf:
application/x-httpd-php54="php:/usr/local/php54/bin/php-cgi"
/usr/local/apache/conf/includes/pre_virtualhost_2.conf:
suPHP_AddHandler application/x-httpd-php54
Теперь клиенту достаточно добавить в .htaccess:
AddType application/x-httpd-php54 .php5 .php4 .php .php3 .php2 .phtmlСамое главное - не забыть закомментить всё при запуске easyapache ))
Подписаться на:
Сообщения (Atom)




