Бер 192016
 

Установка DKIM в ISPmanager ( Debian, Ubuntu )

Добрый день.

Появилась такая проблема – письма отправленные сервера попадают в спам. По большей части проблема была в некорректной SPF и PTR записях (сделанных не мной). Но я решил дополнить еще и DKIM записью.

Вот краткая заметка, как я это делал.

/usr/local/ispmgr/sbin/pkgctl -D cache
killall -9 ispmgr

1. Заходим в панель управления сервером и переходи на вкладку “Возможности”, устанавливаем “OpenDKIM – фильтр DKIM”. Если не получается через панель, устанавливаем вручную:
Debian/Ubuntu:

# sudo apt-get install opendkim

Для Debian/Ubuntu необходимо установить дополнительный пакет:

# sudo apt-get install opendkim-tools

Centos/RH:

# yum install opendkim

2. Генерируем этот самый DKIM ключ и сертификат:
Debian/Ubuntu:

# cd /etc/exim4/ssl/
# /usr/bin/opendkim-genkey -D /etc/exim4/ssl -d domain.com -s dkim -r

Centos/RH:

# cd /etc/exim/ssl
# opendkim-genkey -D /etc/exim/ssl -d domain.com -s dkim -r

где domain.com – это ваш домен.

3. Перезагрузим exim:

# sudo /etc/init.d/exim4 restart/

4. Заходим опять в панель управления сервером, на вкладке “Почтовые домены” выбираем нужный домен и жмем кнопку “Изменить” и ставим галочку “Включить DKIM”.

Теперь радуемся, что наши письма подписаны и с меньшей вероятностью попадут в спам листы популярных почтовых служб.

Лют 082015
 

Дополнительный ip для интерфейса (ifconfig alias)

Добавляем несколько ip адресов в разный Unix системах.

FreeBSD

Установка адреса алиас через интерфейс:
ifconfig fxp0 alias 192.168.111.110
Удалить существующий алиас с интерфейса:
ifconfig fxp0 -alias 192.168.111.110
Установка алиаса при загрузки системы (rc.conf)
ifconfig_em0_alias0="inet 192.168.111.110"

Debian/Ubuntu

Прописываем алиас на интерфейс (eth0 — оригинальный, eth0:0, eth0:1 — дополнителные)
ifconfig eth0:0 192.168.111.110 up
Установка алиаса при загрузке системы (/etc/network/interfaces)

auto eth0:0
iface eth0:0 inet static
name Ethernet alias LAN card
address 192.168.1.11
netmask 255.255.255.0
broadcast 192.168.1.255
network 192.168.1.0

auto eth0:1
iface eth0:1 inet static
name Ethernet alias LAN card
address 192.168.10.11
netmask 255.255.255.0
broadcast 192.168.10.255
network 192.168.10.0
Удалить существующий алиас с интерфейса:
ifconfig eth0:0 down
Сер 192014
 

Потратил на чтение документации достаточно времени, заставляя Samba работать с символическими ссылками. Предлагаю Вам свое решение.

Открываем конфигурационный файл:

sudo nano /etc/samba/smb.conf

В начале секции [global] пишем.

unix extensions = no
wide links = yes
follow symlinks = yes

Не забываем перезагрузить демон:

service smbd restart
/etc/init.d/samba restart

Данное решение очень удобно если Вам надо работать с файлами в разных частях системы.
Не забывайте про безопасность, она очень важна в системе.

Лип 162014
 

Решение проблемы с обрезанными массивами в PHP

 

Решил написать сегодня небольшую, но очень важную статью об параметрах которые находятся в PHP:

post_max_size = 512M

Максимально допустимый размер данных, отправляемых через методом POST. Этот параметр влияет на объем передаваемых данных методом POST, так же важно учитывать его при реализации загрузки файлов через скрипты, в частности на размер файла эта директива и влияет. По умолчанию данный параметр стоит 8Мб.

post_max_vars = 2000

Если про post_max_size все хорошо описано в мануале и он есть по умолчанию в конфигурации php, то про параметр post_max_vars глухая тишина. Так что же это такой за параметр. Post_max_vars указывает интерпретатору сколько будет обрабатываться строк в POST запросе, ограничение стоит по умолчанию 200 строк.
Для крупных проектов, особенно реализованных на таких тяжеловесах как Битрикс это довольно мало.
Поэтому, если вы столкнулись с проблемой, когда при сохранении данных вы получается обрезанный POST массив или массив в котором только часть передаваемых строк, значит вам нужно не искать ошибку в вашем скрипте, а менять параметры на сервере. Если такой возможности нет, значит надо переделывать скрипт так, что бы он не превышал лимитов.

max_input_vars = 2000

Сколько входных переменных может быть принято в одном запросе (ограничение накладывается на каждую из глобальных переменных $_GET, $_POST и $_COOKIE отдельно). Использование этой директивы снижает вероятность сбоев в случае атак с использованием хеш-коллизий. Если входных переменных больше, чем задано директивой, выбрасывается предупреждение E_WARNING, и все последующие переменные в запросе игнорируются. Это ограничение применяется к каждому уровню вложенности входного многомерного массива.
Ограничение стоит по умолчанию 200 строк.

Поменяем в php.ini.
Параметр post_max_size уже там указан, и достаточно найти его поиском и поменять, тогда как post_max_vars придется дописать, например под post_max_size, с max_input_vars мы поступим таким же образом.

Чер 062014
 

Как сделать перезагрузку (re-read) таблиц партиций (Partition Table) в Debian или Ubuntu Linux

Иногда случается ситуация когда необходимо перечитать таблицу партиций. Переразбил диск, а перегружать сервер не хочется, да и не надо этого делать, нарушается правило стабильности сервера.
Так как же я перезагружаю таблицу партиций (partition table) без перезагрузки системы?

В первую очередь необходимо установить пакет parted, сделаем мы это вот так:

# sudo apt-get update
# sudo apt-get install parted

Работаем с диском /dev/sdb.

# ls /dev/sdb*

Вывод:

/dev/sdb1 /dev/sdb2

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

# sudo partprobe

После установки повторяем проверку:

# ls /dev/sdb*

Вывод:

/dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb4

Очень удобная программа. После ее использования уже можно работать с дисками, используя команду fdisk или cfdisk, форматировать диски mkfs.

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