Debian 9 mariaDB не старутет, пишет Can’t create test file или /mysqld: Can’t change dir to

Столкнулся с интересной особенностью Марии,когда при попытке запуска сервера БД,при datadir=/home/xxx/xxxx у меня вылетала ошибка доступа и сервер не стартовал.Права какие токо на папки не ставил,не помогало.

Оказалось что в 9ке уже стоит защита доступа на уровне systemd. В папке /etc/systemd/system/ нашел файл mysql.service и в нем оказывается явно запрещены доступы к папкам boot, etc, home и т.д. Короч решилось все просто исправление параметра ProtectHome=false.

Шифрование дисков в Linux с помощью LUKS — cryptsetup

Зашифровываем весь физический раздел на диске:

cryptsetup -h sha256 -c aes-xts-plain64 -s 512 luksFormat /dev/sdb1

Монтируем первый раз после создания.Требуется разметка ФС в ext4:

losetup /dev/loop0 /dev/sdb1
cryptsetup luksOpen /dev/loop0 any_disk_name
mkfs.ext4 /dev/mapper/any_disk_name

После этого создаем любую папку,куда будет монтироваться всегда(например /media/cryptdisk) и создаем скрипт монтирования:

#!/bin/sh
losetup /dev/loop0 /dev/sdb1
cryptsetup luksOpen /dev/loop0 any_disk_name
mount /dev/mapper/any_disk_name /media/cryptdisk

и размонтирования:

#!/bin/sh
umount /media/cryptdisk
cryptsetup luksClose /dev/loop0 any_disk_name
losetup -d /dev/loop0

Для добавления еще одного пароля:

cryptsetup luksAddKey /dev/sdb1

Для добавления файла-ключа:

dd if=/dev/urandom of=key_file bs=512 count=4

cryptsetup luksAddKey /dev/sdb1 key_file

Для просмотра имеющихся слотов с ключами(разумеется без просмотра самих ключей):

cryptsetup luksDump /dev/sdb1

Включение нормального режима доступа с паролем в MySQL(MariaDB) в Debian 9

Debian 9 радует очередными нововведениями и странными изменениями.Вот например в замене мускуля — марии по умолчанию вход для рута идет через юникс сокет,то есть не надо никаких паролей. Вроде ниче так,а вот уже из коробки через Phpmyadmin не зайдешь. Ведь пароля то нет. В общем,один чел. на форумах ЛОРа написал как это исправить:

# mysql -u root
MariaDB [(none)]> use mysql;
Database changed
MariaDB [mysql]> update user set password=PASSWORD("my-new-cool-password") where User='root';
MariaDB [mysql]> flush privileges;
MariaDB [mysql]> update user set plugin='' where User='root';
MariaDB [mysql]> quit;
Bye
# systemctl restart mariadb

Asterisk SMS — что делать если из СМС удаляется символ «@».

На днях столкнулся с одной неприятной вещью — Астериск,получая СМС и сохраняя его содержимое в файл,обрезал строки,если строка содержала символ @. Например в СМС присылали адрес почты test@mail.com, во входящей СМС в логах Астериска и в файл писалось только test.Все что шло вместе с @ тупо обрезалось.

Очень долго искал решение в интернете,но как оказалось,его там нет. Совсем. Как будь то у меня одного такая проблема.

И тогда я начал изучать проблему.И наконец смастерил костыль,позволяющий исправить проблему.

1)Смс принимается по такому вот екстеншену в Астериск:

[Mani-incoming]
exten => sms,1,Verbose(Incoming SMS from ${CALLERID(num)} ${SMS})
exten => sms,n,System(/usr/bin/php /usr/local/bin/smsconv-mani.php ${SMS_BASE64} ${CALLERID(num)})
exten => sms,n,Hangup()

То есть тут текст СМСки в Base64 и номер отправителя передаются РНР скрипту,который уже и обрабатывает данные и кладет все в нужный файл.

2)Вот сам РНР скрипт:

Читать далее Asterisk SMS — что делать если из СМС удаляется символ «@».

MediaWiki CMS — защита от анонимных правок и запрет регистрации.

Используя движок MediaWiki,столкнулся с надобностью запретить регистрацию на сайте,ибо незачем — сайт нужен только что б читать его.А один админ может вносить правки.И что б анонимные пользователи тоже не могли вносить свои правки,а только читать.Решилось все просто — добавив в LocalSettings.php след.строки:

// Запрет регистрации новых пользователей
$wgGroupPermissions[‘*’][‘createaccount’] = false;
// Разрешаем зарегистрированным юзерам делать правки
$wgGroupPermissions[‘user’][‘edit’] = true;
// Запрещаем всем остальным делать правки
$wgGroupPermissions[‘*’][‘edit’] = false;

Популярное ныне интернет мошенничество — Skype+Приват24.И не только…

Навеяно не очень удачными(для некоторых участников) событиями последних дней.

Данная статья — это всего лишь совет как уберечь себя и/или своих близких или знакомых от финансовых потерь,вызванных популярным ныне способом мошенничества — через популярный(к сожалению) мессенджер Skype.А так же соц.сети.И мобильные телефоны.Да много их…И они отлично действуют,к сожалению.А вот способов уберечься всего несколько.Но достаточно простых.Уверен,многим пригодится.И вам тоже.Уж поверьте.

Читать далее Популярное ныне интернет мошенничество — Skype+Приват24.И не только…

Сертификаты Let’sEncrypt и Postfix,Courier-pop/imap или Dovecot

Думаю, уже все знают что такое Let’sEncrypt и как им пользоваться.Очень удобно иметь бесплатные сертификаты SSL,с помощью которых можно перевести свой Веб сервера на желанный и рекомендуемый всеми протокол HTTPS.Однако это не все возможности,которые предоставляет нам данный сервис.Одна из замечательных возможностей — это использование этих сертификатов для безопасного соединения в почте.Именно об этом я и расскажу.

В данном примере я расскажу как подключить эти сертификаты с уже установленным и настроенным демонам postfix + courier-imap-ssl+courier-pop-ssl. Читать далее Сертификаты Let’sEncrypt и Postfix,Courier-pop/imap или Dovecot

Автоматический редирект с HTTP на HTTPS в Apache2

В нужной нам папке создаем(или добавляем в) файл .htaccess строки:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

Теперь автоматически при заходе по старому HTTP будет выполнен редирект на тот же адрес,только с HTTPS.

Заставляем любой демон писать в свой лог,а не в syslog

Спасибо статье http://habrahabr.ru/post/259169/

Для того что б например cron не засирал syslog своим выхлопом делаем следующее:

— создаем файл лога,например /var/log/cron.log

— создаем файл конфига /etc/rsyslog.d/cron.conf с содержимым:

:msg, contains, «/USR/SBIN/CRON» -/var/log/cron.log
& ~

где: & ~ — говорит о том, что дальнейшую обработку записи производить не следует, поэтому она не попадет в другие файлы логов.
"/USR/SBIN/CRON" — тот самый log-prefix — критерий по которому rsyslog принимает решение перенаправить лог в нужный файл./var/log/cron.log — сам файл лога.

-перезагрузить демон rsyslogd

Так можно делать с любым демоном,токо задавай конфиг и строку по которой будут перехватываться сообщения.

UPD.03.03.2017

Теперь формат конфига rsyslog немного изменился и потому предыдущая настройка может не работать.Вот новый вариант рабочей настройки например для сбора от программы pop3d:

if ( $programname startswith «pop3d» ) then {
action(type=»omfile» file=»/var/log/courier-pop3d.log»)
stop
}

Короткие заметки, что б всегда были под рукой)