Category Archives: Сисадмин

Проверяем работу SMTP AUTH LOGIN через telnet

Подавляющее большинство почтовых серверов не позволяют неаутентифицированным пользователям отправлять через себя письма. Open-relay сервер, т.е. сервер, позволяющий свободную пересылку почты, в интернет-сообществе считается дурным тоном, и вообще такие сервера по прошествии какого-то времени становятся источниками спама, и IP-адреса таких серверов быстро попадают в блек-листы всевозможных средств защиты от спама. В этот раз мы поговорим о том, как провести аутентификацию типа AUTH LOGIN из консоли telnet. На основании описанного способа можно запросто написать программу, которая выполняет все эти действия автоматически.
Continue reading Проверяем работу SMTP AUTH LOGIN через telnet

Мониторим SQL-запросы в реальном времени

В некоторых СУБД, например Microsoft SQL Server, есть средства для просмотра абсолютно всех SQL-запросов к базе данных (в MS SQL он называется Profiler). Это мощное средство, весьма полезно при отладке SQL-запросов как для программистов, так и для администраторов баз данных.

Когда вы накопили опыт работы с MySQL, у вас может возникнуть вопрос, а как проделать такую штуку с ним? Например, как увидеть, какие SQL-запросы генерирует WordPress или phpBB?

Во-первых, нужно включить журналирование запросов MySQL
Continue reading Мониторим SQL-запросы в реальном времени

SRV-записи для Jabber

Раз и навсегда, чтоб больше не забывать. Вот такие записи нужно добавлять в DNS при настройке Jabber-сервера:

_xmpp-server._tcp.jabber-domain.ru.	3600 IN SRV 0 0 5269 jabber-server.ru.
_xmpp-client._tcp.jabber-domain.ru.	3600 IN SRV 0 0 5222 jabber-server.ru.
_jabber._tcp.jabber-domain.ru.		3600 IN SRV 0 0 5269 jabber-server.ru.

Собираем порты FreeBSD без X11

Чтобы все порты собирались без поддержки X11 (к примеру, у вас чисто серверная инсталляция без графической составляющей), необходимо добавить следующую строку в свой файл /etc/make.conf:

# cat >> /etc/make.conf
WITHOUT_X11=yes
^D

Это равносильно тому, что вы каждый раз будете писать при сборке порта:

# make -DWITHOUT_X11 install

Установка дерева портов FreeBSD и их обновление

Новичок во FreeBSD наверняка хочет побыстрее узнать, как устанавливать новое ПО для FreeBSD. Конечно, для более глубокого понимания темы рекомендуется прочитать соответствующий раздел FreeBSD Handbook. Этот пост просто шпаргалка, и пишу я его скорее больше для себя 🙂

Установка дерева портов

Если у вас чистая система, то нужно скачать и распаковать официальное дерево портов:

# portsnap fetch
# portsnap extract

Обновление дерева портов

В дальнейшем, после одной установки дерево портов нужно лишь обновлять:

# portsnap fetch update

Установка программ под катом.

Continue reading Установка дерева портов FreeBSD и их обновление

warning: when SASL type is “dovecot”, SASL path “dovecot-auth” should be a socket pathname


Postfix – это MTA (mail transfer agent), и его можно использовать при построении всевозможных почтовых систем. Он, разумеется, заслуживает нескольких хороших статей, однако сейчас я расскажу о конкретной ошибке, встретившейся мне. Постоянно получаю в логах своего почтового сервера следующие варнинги:

warning: when SASL type is "dovecot", SASL path "dovecot-auth" should be a socket pathname

Надоели эти варнинги, и я решил их убрать.
Continue reading warning: when SASL type is “dovecot”, SASL path “dovecot-auth” should be a socket pathname

DROP ALL TABLES в MySQL

Заголовок у этой заметки немного неправильный. В MySQL нет такой команды, а хотелось бы, чтоб она была. Иногда возникают задачи, в которых мы хотим удалить все таблицы из БД, но не ее саму (чтобы остались ее параметры, такие как права доступа, кодировки и т.п.). Решить такую проблему можно с помощью однострочника на shell:

mysqldump -u$DB_USER -p$DB_PASS --add-drop-table --no-data $DB_NAME | grep ^DROP | mysql -u$DB_USER -p$DB_PASS $DB_NAME

Первой командой конвейера мы создаем “дамп” базы данных, состоящий из всевозможных DROP TABLE, но без данных. Второй командой выбираем только строки, начинающиеся с DROP, и наконец последней, заливаем полученные команды в MySQL.

Gentoo не заходит по SSH – Read from socket failed: Connection reset by peer

Сегодня получил “отлуп” при попытке зайти по SSH на один из своих серверов:

$ ssh server777.domain.ru
Read from socket failed: Connection reset by peer

Отчего именно, непонятно. Через Putty зайти также могу. Телнет показывает, что порт открыт. У меня также получалось зайти с самого моего шлюза (т.е. IP-адрес не фильтруется), и из дома, и с другого сервера – но зайти на этот злополучный server777 со своей Gentoo у меня так и не получилось.
Continue reading Gentoo не заходит по SSH – Read from socket failed: Connection reset by peer