Официальная возможность получить лицензионный софт бесплатно.
Giveaway of the Day
Это не реклама!

Щелкните для получения прогноза по Биробиджану


Показаны сообщения с ярлыком password. Показать все сообщения
Показаны сообщения с ярлыком password. Показать все сообщения

понедельник, 15 июля 2019 г.

MySQL в Zimbra: пароль доступа и некоторые параметры

Решил поглубже поковыряться в БД зимбры. И понял, что не знаю пароля. Решение:
su - zimbra
zmlocalconfig -s | grep mysql | grep password
На выходе получаем что-то вроде:
mysql_logger_root_password = AWHZ60JYaBw8_hVkA9NDVGh0irmp7xVz
mysql_root_password = lkAd7vkYI.Q_VeWt8uyL9kj0
zimbra_logger_mysql_password = 2iiyAVj3GeH0akkCe6M1o_HvY
zimbra_mysql_password = uMv4EsNqPZdK5htERx97VY5m
и видим пароли как для пользователя root, так и для пользователя zimbra. ЧТД.

В этой БД есть разные параметры, в т.ч. и различные даты/времена. Как выяснилось, хранятся они в стандартном юниксовом формате "число секунд с начала эпохи". Не ломая голову, просто преобразуем это длинное целое в человекочитаемый вид:
date -d @дата_в_формате_unix
Теперь о хранении данных о пользователях. Все они хранятся в БД zimbra в таблице mailbox. Емайл почему-то хранится в поле comment. а номер почтового ящика - в поле id. Номер п/я - это составное число вида
UGG
где GG - номер группы (БД mboxgroupGG), от 1 до 100. При формировании id пользователя, находящегося в группе с номером <10 к номеру группы дописывается ведущий ноль, например для сотой группы gg="00"
U - номер пользователя в группе, начиная с нуля, причем если U=0, то id=GG (ведущие нули в базе, понятное дело, не хранятся), при U=1 id=1GG, например, для сотой группы id=100.

Именно id используется в пути к каталогам хранения данных и индексов почтового ящика. Например, для 3-го пользователя из 94-ой группы путь будет:
/opt/zimbra/store/0/394/
Однако, если пользователь еще не обращался к своему почтовому ящику, то каталоги с его id могут отсутствовать. Например, недавно коллега сделал учетку для нового кладовщика, но не настроил ее комп. Пользователь с id=ugg уже есть в группе gg, а вот пути /opt/zimbra/store/0/ugg/ еще нет.

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

passwd и неожиданный Kerberos

Рутинная задача: сменить пароль локального пользователя на линуксовом сервере.

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

А вот хрен там!

passwd траблмейкер
Пароль от Кербероса давай, да? (Current Kerberos password:)

Опаньки! А откуда я знаю этот пароль, если для этого пользователя он никогда не задавался? И почему для рута, чей пароль я менял несколько минут назад, этого не спрашивали?
Прямо сейчас лень долго разбираться, в чем дело, поэтому пошел по пути наименьшего сопротивления (http://unix.stackexchange.com/questions/116028/how-could-i-eliminate-kerberos-for-passwd)

Запускаем от рута pam-auth-update, снимаем чекбокс с кербероса, после чего дурацкий вопрос не задаётся. Желательно после смены пароля вернуть чекбокс на место - х.з., на что это может повлиять на самбовском сервере.

суббота, 19 июля 2014 г.

no talloc stackframe at ../source3/param/loadparm.c:4864, leaking memory

После установки Ubuntu Server 14.04 и его штатной Samba при логине стал появляться такой вот неприятный глюк. Утечки памяти - это всегда неприятно.
Виновата библиотека авторизации libpam-smbpass.

лечение:

sudo apt-get remove libpam-smbpas

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

Использование этой библиотеки прописано в /etc/pam.d/common-password. В сети есть советы "удалить строчку с pam-smbpass.so" в этом файле, но лучше всё же штатно снести саму библиотеку до тех пор, пока ребята из Самбы не разберутся с ней. Тем более, что удаление строчки всё равно не помогает. :-)

По материалам.

вторник, 17 июня 2014 г.

суббота, 18 января 2014 г.

Zimbra: перенос паролей пользователей

После переноса сообщений, перенос паролей самая дурная часть работы: в зимбре в принципе не предусмотрена расшифровка паролей, хранящихся в LDAP в зашифрованном виде.

Более того, команда:

zmprov ga <account>

возвращает что-то вроде:

# name <account>
userPassword: VALUE-BLOCKED

что для нас совсем бесполезно. Однако, если команду слегка изменить и добавить "брать данные из LDAP", то картина меняется:

zmprov -l ga <account> userPassword
# name <account>
userPassword: {SSHA}ДлиннаяСтрокаАбракадабры

(-l - маленькая латинская L, а не i или единица!)

А вот это уже веселее. Получаю такой пароль для пользователя на старом сервере и пробую скормить его на новом:

zmprov ma <account> userPassword {SSHA}ДлиннаяСтрокаАбракадабры

zmprov молча глотает это безобразие и прекрасно пускает меня со старым паролем уже на новом сервере. Красота! Осталось вытащить со старого сервера старые пароли. Ну, на такие грабли наступал не я один, поэтому решение уже нашлось:

for i in `zmprov -l gaa | egrep -v 'galsync|spam|ham|virus|stimpson'`;do \
  echo "$i,`zmprov -l ga $i userPassword | grep userPassword | \
  sed 's/userPassword: //'`";\
done;

Стимпсон - это старое имя сервера того, кто придумал эту команду, поэтому его можно смело удалить. И я немного доработал вывод команды, чтобы она формировала мне готовый набор команд для пакетной обработки:

for i in `zmprov -l gaa | egrep -v 'avir|galsync|spam|ham|virus'`;do \
   echo "zmprov ma $i userPassword `zmprov -l ga $i userPassword | \ 
   grep userPassword | sed 's/userPassword: //'`"; \
done;

Перенаправить вывод этой команды в файл мне не удалось, но это и не важно - ее результаты я скопировал из терминала в файл, который и запустил, добавив шабанг в начале :-)

среда, 1 февраля 2012 г.

Squid: еще об аутентификации

Настройка аутентификации по имени и паролю в Squid

Оригинал.


Howto: Squid proxy authentication using ncsa_auth helper

by Vivek Gite on December 21, 2006 · 62 comments
For fine control you may need to use Squid proxy server authentication. This will only allow authorized users to use proxy server.
You need to use proxy_auth ACLs to configure ncsa_auth module. Browsers send the user's authentication in the Authorization request header. If Squid gets a request and the http_access rule list gets to a proxy_auth ACL, Squid looks for the Authorization header. If the header is present, Squid decodes it and extracts a username and password.
However squid is not equipped with password authentication. You need to take help of authentication helpers. Following are included by default in most squid and most Linux distros: