Заметка на память как заставить openfire работать с SSO
Качаем openfire и устанавливаем
wget http://download.igniterealtime.org/openfire/openfire-4.0.2-1.i386.rpm yum install ~/openfire-4.0.2-1.i386.rpm
«Я» — каждый пользователь мира *nix. «Ubuntu» — человечное отношение к другим пользователям мира *nix.
Заметка на память как заставить openfire работать с SSO
Качаем openfire и устанавливаем
wget http://download.igniterealtime.org/openfire/openfire-4.0.2-1.i386.rpm yum install ~/openfire-4.0.2-1.i386.rpm
Задача: перести виртуальный почтовый сервер на физический с созданием RAID 1 (зеркало).
Имеется виртуалка на XenServer и физический сервер с двумя винтами по 1 Тб
Установим Centos minimal на один из винтов и поделим диск на разделы
/dev/sda1 /boot
/dev/sda2 swap
/dev/sda3 /
Теперь установим mdadm и vim (обожаю этот текстовый редактор)
yum install mdadm vim
Теперь надо подготовить второй диск для настройки на нем рейда. Скопируем схему разбивки диска с /dev/sda
sfdisk -d /dev/sda | sfdisk /dev/sdb
Читать далее «Перенос виртуального сервера на физический с созданием программного рейда»
Скрипт для zsh позволяющий вывести уведомление о завершений команды, если терминал не открыт и команда выполнялась больше 10 секунд.
function active-window-id { echo `xprop -root | awk '/_NET_ACTIVE_WINDOW\(WINDOW\)/{print $NF}'` } # end and compare timer, notify-send if needed function notifyosd-precmd() { if [ ! -z "$cmd" ]; then cmd_end=`date +%s` ((cmd_time=$cmd_end - $cmd_start)) fi if [ ! -z "$cmd" -a $cmd_time -gt 10 -a "$window_id_before" != "$(active-window-id)" ]; then kdialog --title "$cmd_basename completed" --passivepopup "\"$cmd\" took $cmd_time seconds" unset cmd fi } # make sure this plays nicely with any existing precmd precmd_functions+=( notifyosd-precmd ) # get command name and start the timer function notifyosd-preexec() { window_id_before=$(active-window-id) cmd=$1 cmd_basename=${cmd[(ws: :)1]} cmd_start=`date +%s` } # make sure this plays nicely with any existing preexec preexec_functions+=( notifyosd-preexec )
Скрипт для КДЕ, т.к. используется kdialog для вывода уведомления. Оригинал на гитхабе. Там же для гнома.
Код сохраняем в файл .notifyosd.zsh и добавляем в .zshrc строку
[ -e ~/.notifyosd.zsh ] && . ~/.notifyosd.zsh
Установим opendkim
yum install opendkim
Нужно в /etc/opendkim.conf поправить Mode и раскомментировать строки
Mode sv
KeyTable /etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
Создадим ключи
mkdir /etc/opendkim/keys/example.com
chmod 750 /etc/opendkim/keys/example.com
opendkim-genkey -D /etc/opendkim/keys/example.com/ -d example.com
chmod 640 /etc/opendkim/keys/example.com/*
Допишем в /etc/opendkim/KeyTable
default._domainkey.example.com example.com:default:/etc/opendkim/keys/example.com/default.private
и в /etc/opendkim/SigningTable
*@example.com default._domainkey.example.com
Перезапустим opendkim
systemctl restart opendkim.service
Осталось научить postfix работать с dkim и указать для домена TXT запись.
Добавляем в /etc/postfix/main.cf
#DKIM
milter_default_action = accept
milter_protocol = 2
smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891
затем
postfix restart
Добавляем TXT запись.
Берем содержимое файла /etc/opendkim/keys/example.com/default.txt
default._domainkey IN TXT ( "v=DKIM1; k=rsa; " "p=.................." ) ; ----- DKIM key default for example.com
Проверяем
dig txt default._domainkey.example.com
После настройки самбы и дополнительного full.audit следует озаботиться тем, куда собственно этот аудит будет записываться.
Как рабочий пример:
# less /etc/samba/smb.full_audit.conf full_audit:priority = NOTICE full_audit:facility = LOCAL5 full_audit:success = mkdir rmdir read write rename unlink chmod fchmod chown fchown ftruncate lock symlink readlink link mknod close open full_audit:failure = none full_audit:prefix = |[%S]|%u|%I
Тут важна строка full_audit:facility = LOCAL5
Настраиваем /etc/rsyslog.conf
Находим строку
*.info;mail.none;authpriv.none;cron.none /var/log/messages
и добавляем local5.none дабы в /var/log/messages не заносился аудит самбы
*.info;mail.none;authpriv.none;cron.none;local5.none /var/log/messages
Указываем куда записывать аудит
local5.* /var/log/samba/samba.audit
Дабы применились изменения перезапускаем rsyslog
service rsyslog restart
Однако в /var/log/messages скорее всего появится очень большое количество таких строк
rsyslogd-2177: imuxsock begins to drop messages from pid 194326 due to rate-limiting
rsyslogd-2177: imuxsock lost 684 messages from pid 194326 due to rate-limiting
Это связано с тем, что rsyslog по умолчанию для одного пида записывает в логи не более 200 записей в течении 5 секунд. Т.е. если пользователь заходит в самба шару с большим количеством файлов, то записей в samba.audit может быть больше 200, т.о. появляется запись в /var/log/messages о том, что rsyslog отбросил остальные строки.
Есть три варианта решения (по крайней мере я столько нашел)
1. Отключить ограничение. Добавляем в /etc/rsyslog.conf
$SysSock.RateLimit.Interval 0
2. Поиграться с интервалом и разрешенным чилом записей
например:
$SysSock.RateLimit.Interval 10
$SysSock.RateLimit.Burst 500
3. Убрать записи «imuxsock begins to drop messages бла бла бла» из /var/log/messages
Решается добавлением в /etc/rsyslog.conf после #### RULES ####
:msg, regex, "imuxsock begins to drop messages from pid .* due to rate-limiting" ~
:msg, regex, "imuxsock lost .* messages from pid .* due to rate-limiting" ~
Подробнее здесь
Дабы применились изменения перезапускаем rsyslog
service rsyslog restart
fish://name@server
fish в данном случае используется для ssh подключения (такие блин дела)
Столкнулся с тем, что windows начала просить пароль на доступ к шаре.
В логах /var/log/samba/log.smbd следующее
smbd/server.c:1165(main)
standard input is not a socket, assuming -D option
smbd/server.c:500(smbd_open_one_socket)
smbd_open_once_socket: open_socket_in: Address already in use
лог /var/log/samba/log.nmbd показывает
nmbd/nmbd.c:885(main)
standard input is not a socket, assuming -D option
Проблема оказалась в winbindе. А именно не соответствии имен групп linux и windows. Т.е. группа шары выглядела так:
# ls -l /mnt/lv10/Photoarchive/
total 4
drwxrwx---+ 2 root 16777729 4096 Apr 24 2013 Архив
где gid=16777729 (domain users)
Лечится рестартом winbind
service winbind restart
Кратенько. Для 6 версии из XenCenter настроить автозапуск уже не получится, однако можно сделать из консоли.
Для начала добавляем эту возможность для пула.
# xe pool-list
uuid ( RO) : 8a3b99c9-c4e9-802c-1298-794d939fb999
# xe pool-param-set uuid=8a3b99c9-c4e9-802c-1298-794d939fb999 other-config:auto_poweron=true
Теперь для виртуалок, которым требуется автозапуск.
xe vm-list
xe vm-param-set uuid=... other-config:auto_poweron=true
Потребовалось получить доступ к флешке подключенной в телефон Acer CloudMobile S500. Краткая выдержка арч вики с некоторыми комментариями.
Подключаем телефон к компу. В консоли смотрим результат вывода lsusb
% lsusb
...
Bus 001 Device 004: ID 0502:33aa Acer, Inc.
...
Вот и телефон.
Копируем или правим прям там же файл.
% sudo cp /usr/lib/udev/rules.d/69-libmtp.rules /etc/udev/rules.d/
% sudo vim /etc/udev/rules.d/69-libmtp.rules
Находим строки, в которых упоминается Acer, дублируем одну из них. Изменяем значения idVendor и idProduct на значения нашего аппарата.
# Acer CloudMobile S500
ATTR{idVendor}=="0502", ATTR{idProduct}=="33aa", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
Затем
sudo udevadm control --reload
либо перезагружаемся.
Устанавливаем пакет для работы с mtp
sudo pacman -S mtpfs
Редактируем /etc/fuse.conf Раскомментируем строку
user_allow_other
Создадим какую-нибудь временную директорию и смонтируем в нее телефон
mkdir /tmp/YOURMOUNTPOINT
mtpfs -o allow_other /tmp/YOURMOUNTPOINT
Размонтируем
fusermount -u /tmp/YOURMOUNTPOINT
Для удобства можно создать алиасы в ~/.bashrc
alias android-connect="mkdir /tmp/YOURMOUNTPOINT && mtpfs -o allow_other /tmp/YOURMOUNTPOINT"
alias android-disconnect="fusermount -u /mnt/YOURMOUNTPOINT"