namei

Может быть полезна для понимания почему нет прав на запись в нужный файл или директорию.

При указании с параметром -l показывает права доступа, владельца и группу каждой директории указанного пути.

namei -l /var/spool/mail/vmail/trap/new
f: /var/spool/mail/vmail/trap/new
dr-xr-xr-x root  root  /
drwxr-xr-x root  root  var
drwxr-xr-x root  root  spool
drwxrwxr-x root  mail  mail
drwxr-xr-x vmail vmail vmail
drwx------ vmail vmail trap
drwx------ vmail vmail new

настройка dante-server на centos 7

Подключаем репозиторий gf

yum install http://mirror.ghettoforge.org/distributions/gf/gf-release-latest.gf.el7.noarch.rpm

Устанавливаем dante-server

yum --enablerepo=gf-plus install dante-server

Делаем, чтоб стартовал при включении системы

systemctl enable sockd.service

Сохраняем оригинальный конфиг

mv /etc/sockd.conf /etc/sockd.conf.orig

Пишем свой

vim /etc/sockd.conf
internal: eth0 port = 1080
external: eth0

socksmethod: username
user.privileged: root
user.unprivileged: nobody

client pass {
from: 0/0 to: 0/0
log: error
}

socks pass {
from: 0/0 to: 0/0
log: error
}

Для понимания можно почитать оригинальный конфиг. Там все доступно. Благо мы его сохранили.

Тем не менее пара слов по конфигу:
socksmethod: username — указываем использовать вход по логину и паролю системных пользователей
user.privileged: root — ставим root, потому что нам нужно читать файл /etc/passwd
client pass — правила работы с клиентами
socks pass — что разрешаем клиентам

Добавляем пользователя

useradd test -M -s /sbin/nologin
passwd test

Запускаем

systemctl start sockd.service

Добавляем правило в файрвол

firewall-cmd --zone=public --add-port=1080/tcp --permanent
firewall-cmd --reload

 

upd. Забыл добавить, что нужно отключить selinux

vim /etc/selinux/config

меняем значение на

SELINUX=disabled

и перезагружаем

shutdown -r now

Freemind в Ubuntu 16.04 c Java 9

Устанавливаем Java 9

add-apt-repository ppa:webupd8team/java
apt-get update
apt-get install oracle-java9-installer
apt-get install oracle-java9-set-default

Устанавливаем Freemind

Идём в секцию Download на официальной wiki Freemind.

Переходим по ссылке на максимальный пакет для любой ОС ( OS: Any, текст ссылки binaries for any operating system — max ). Скачиваем архив.

Распаковываем:
mkdir /usr/bin/freemind
unzip path_to_archive -d /usr/bin/freemind/
chmod +x /usr/bin/freemind/freemind.sh

Создаём ссылку для запуска:
nano /usr/share/applications/freemind.desktop

Вставляем в файл:

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Name=FreeMind
Icon=freemind.png
Path=/usr/bin/freemind
Exec=/usr/bin/freemind/freemind.sh
StartupNotify=false
StartupWMClass=FreeMind
OnlyShowIn=Unity;
X-UnityGenerated=true

Завершаем текущий сеанс пользователя в Unity и вновь логинимся.

Спасибо доброму человеку.

добавляем поддержку H.264 в Vivaldi browser

Если у вас убунта, то устанавливаем пакет chromium-codecs-ffmpeg-extra
sudo apt-get install chromium-codecs-ffmpeg-extra

Если же не убунта, как и у меня, то скачиваем пакет
wget http://security.ubuntu.com/ubuntu/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg-extra_64.0.3282.119-0ubuntu1_amd64.deb

Дальше достаем из скачанного пакета файл libffmpeg.so и копируем его в .local/lib/vivaldi/
mkdir -p ~/.local/lib/vivaldi
cp libffmpeg.so ~/.local/lib/vivaldi/

Проверяем поддерживает ли теперь Vivaldi H.264 и MSE & H.264 на страничке https://www.youtube.com/html5?hl=ru&gl=RU

Sieve: Duplicate Extension

Удалять или перемещать дубликаты писем можно используя Dovecot Sieve и расширение «vnd.dovecot.duplicate» до версии 2.2.18 и «duplicate» в более свежих версиях. Дубли писем определяются по «Message-ID». Расширение по умолчанию отключено, но начать его использовать не составит труда.

/etc/dovecot/conf.d/90-sieve.conf

plugin {

  sieve_before = /var/spool/mail/vmail/default.sieve  # (путь может быть другим)

  sieve_extensions = +vnd.dovecot.duplicate      # dovecot < 2.2.18
  #sieve_extensions = +duplicate                 # dovecot >= 2.2.18
}

/var/spool/mail/vmail/default.sieve # (путь может быть другим)

require ["vnd.dovecot.duplicate"];      # dovecot < 2.2.18 
#require ["duplicate"];                 # dovecot >= 2.2.18

if duplicate {
    discard;
    #fileinto "Trash";      # если надо перемещать в корзину
    stop;
}

Проверить версию Dovecot

dovecot --version
2.2.10

Ввиду того, что я использую Centos 7 с Dovecot 2.2.10, то с версиями >= 2.2.18 не тестировал.

Источник Dovecot вики https://wiki.dovecot.org/Pigeonhole/Sieve/Extensions/Duplicate и гугл.

Кстати, в процессе настройки на тестовом сервере столкнулся с ошибкой «User test@exemple.com doesn’t have home dir set, disabling duplicate database»
Ошибка связана с тем, что в файле /etc/dovecot/conf.d/10-mail.conf не был указан параметр mail_home. Должно выглядеть примерно так:

mail_home = /var/spool/mail/vmail
mail_location = maildir:~/%n

По настройке mail_home и mail_location можно почитать в официальной вики https://wiki2.dovecot.org/VirtualUsers/Home

Fedora 26 и HP Smart Array P400

Потребовалось прочитать SAS диск. Был найден старый рейд контроллер HP Smart Array P400. В качестве live системы взял Fedora 26. В процессе начальной загрузки выбираем Start Fedora-KDE-Live 26 и жмем Tab. Внизу экрана появится строка параметров загрузки системы, в которую через пробел прописываем
hpsa.hpsa_allow_any=1

После этого жмём Enter

Свой диск нашел в /dev/cciss/ Здесь я не очень понял почему, ведь использовался hpsa, а он вроде как создает /dev/sd[*] устройства, а не cciss драйвер.

Спасибо blog.it-kb.ru

Roundcube 1.2.5 to 1.3.x

В первую очередь делаем бэкап, как файлов так и базы.

Т.к. roundcube 1.3.х требует php7 нужно подключить нужные репозитории

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Дальше удаляем старый php

yum remove php php-xml php-pdo php-mbstring php-mcrypt php-intl php-mysqli php-gd

Устанавливаем php7

yum install php70w php70w-opcache php70w-xml php70w-pdo php70w-mbstring php70w-mcrypt php70w-intl php70w-mysqli php70w-gd

Перезапускаем апач

systemctl restart httpd.service

Качаем свежий roundcube

wget https://github.com/roundcube/roundcubemail/releases/download/1.3.1/roundcubemail-1.3.1-complete.tar.gz
extract roundcubemail-1.3.1-complete.tar.gz
./roundcubemail-1.3.1/bin/installto.sh /var/www/roundcubemail/

Делаем бэкап старого composer.json Будем использовать новый

mv composer.json composer.json_old
cp composer.json-dist composer.json

Обновляем плагины

php composer.phar update --no-dev

При обновлении плагинов у меня вылезла ошибка

  [ErrorException]                                                                                                           
  file_put_contents(/var/www/roundcubemail/vendor/bin/crypt-gpg-pinentry): failed to open stream: No such file or directory

Она связана с битой ссылкой. Удалем ее и перелинковываем

rm vendor/bin/crypt-gpg-pinentry
ln -s /var/www/roundcubemail/vendor/pear/crypt_gpg/scripts/crypt-gpg-pinentry /var/www/roundcubemail/vendor/bin/crypt-gpg-pinentry

Осталось взять из composer.json_old те плагины, что уже работают с новой версией, и прописать в composer.json

Кстати, плагин managesieve таки работает и должен быть указан в config/config.inc.php

openDKIM: селекторы

Пару лет назад я писал про настройку OpenDKIM, но я не упомянул про селекторы. Это может пригодится, когда, допустим, нужно отправлять письма с нескольких почтовых серверов или с почтового сервера и сайта. Вариантов может быть много. Т.е., когда нужно указать для каждого сервера свой DKIM ключ.

Настраивается все ровно как в посту по настройке OpenDKIM. Отличий не много.

При создании ключа указываем селектор

opendkim-genkey -D /etc/opendkim/keys/example.com/ -d example.com -s newselector

в записях KeyTable

newselector._domainkey.example.com example.com:newselector:/etc/opendkim/keys/example.com/newselector.private

в SigningTable

*@example.com newselector._domainkey.example.com

Так же, при добавлении TXT записи нужно не забыть указать

newselector._domainkey      IN      TXT     ( "v=DKIM1; k=rsa; "
          "p=.................." )  ; ----- DKIM key newselector for example.com

Mutt: отключить sent файл

По умолчанию, Mutt сохраняет каждое отправленное письмо в файл sent в директории пользователя. Как следствие файл может разрастись до неимоверных размеров. Отключить это можно создав файл /home/<user>/.muttrc и добавив в него

set copy=no

Материалы распространяются под лицензией Creative Commons: Атрибуция — Некоммерческое использование — С сохранением условий (Attribution-NonCommercial-ShareAlike) 3.0 Unported.
Рейтинг@Mail.ru