LINUX.ORG.RU

Сообщения sin_a

 

Iptables с того света

Имеется работающая система на основе CentOS 7. Сервисы iptables и firewalld отстановлены и отключены (файл /etc/sysconfig/iptables существует и содержит стандартные правила: на входящих разрешить ssh, остальное запретить). При этом существут следующие активные правила iptables:

*mangle

:PREROUTING ACCEPT [240409:32592413]
:INPUT ACCEPT [240409:32592413]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [158835:38568858]
:POSTROUTING ACCEPT [158835:38568858]
[0:0] -A POSTROUTING -o virbr0 -p udp -m udp --dport 68 -j CHECKSUM --checksum-fill
COMMIT

*filter

:INPUT ACCEPT [240418:32593029]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [158841:38569806]
[0:0] -A INPUT -i virbr0 -p udp -m udp --dport 53 -j ACCEPT
[0:0] -A INPUT -i virbr0 -p tcp -m tcp --dport 53 -j ACCEPT
[0:0] -A INPUT -i virbr0 -p udp -m udp --dport 67 -j ACCEPT
[0:0] -A INPUT -i virbr0 -p tcp -m tcp --dport 67 -j ACCEPT
[0:0] -A FORWARD -i virbr0 -o virbr0 -j ACCEPT
[0:0] -A FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable
[0:0] -A FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable
[0:0] -A OUTPUT -o virbr0 -p udp -m udp --dport 68 -j ACCEPT
COMMIT

Интерфейс virbr0 (и с ним некий virbr0-nic) существует без моего участия:

17: virbr0    inet 10.37.130.2/24 brd 10.37.130.255 scope global virbr0\       valid_lft forever preferred_lft forever

Упоминаний, где могут подниматься эти правила, я не нашёл. Строка «10.37.130.2» в /etc/ встречается в следующих файлах:

/etc/issue
/etc/libvirt/qemu/networks/autostart/Host-Only.xml
/etc/libvirt/qemu/networks/Host-Only.xml
/etc/vz/digested.network.xml
/etc/vz/network.xml

До последнего времени это не беспокоило, но возникло желание добавить своё правило. С одной стороны эти, похоже, не нужны и их можно удалять или просто не обращать на них внимание. Но с другой, если правила меняются без моего участия то это может случиться ещё раз. Причём неизвестно как это будет сочетаться с работающими правилами iptables или firewalld.

Как найти кто за них ответственный?

 , , , , virbr0

sin_a
()

Openssl в Centos 7

Имеется две изолированные среды с CentOS 7. Обе развёрнуты из одного источника, обе обновлены до актуального состояния. Одна развёрнута и настроена некоторое время назад и до обновления работало как ожидается. Вторая развёрнута в настоящий момент для сравнения.

В старой системе после обновления перестали работать приложения использующие openssl, в частности apache и dovecot. В тестовой системе apache запускается и отвечает по https нормально. В старой среде dovecot начинает работать нормально если в 10-ssl.conf переставить комментарий в следующих строках (принудительно указать свой список ssl_cipher_list):

# SSL ciphers to use
#ssl_cipher_list = ALL:!LOW:!SSLv2:!EXP:!aNULL
ssl_cipher_list = PROFILE=SYSTEM

В приведённом виде, при обращении в логе появляется следующая запись:

imap-login: Fatal: Can't set cipher list to 'PROFILE=SYSTEM': error:1410D0B9:SSL routines:SSL_CTX_set_cipher_list:no cipher match

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

  • Первый: где это описывается,
  • и второй: как узнать почему не работает сейчас.

В тестовой системе проблемы по видимому нет. В текущей системе команда rpm -qV openssl возвращает пустой результат (и я не помню чтобы делал в нём какие то настройки).

Специалист по redhat, если не ошибаюсь, alpha. Может кто ещё, не знаю.

 ,

sin_a
()

Разместить доменное имя на корневом сервере

А вам слабо?

$ dig @8.8.8.8 hunafa.com +trace

; <<>> DiG 9.10.3-P4-Ubuntu <<>> @8.8.8.8 hunafa.com +trace
; (1 server found)
;; global options: +cmd
.                       175197  IN      NS      m.root-servers.net.
.                       175197  IN      NS      a.root-servers.net.
.                       175197  IN      NS      i.root-servers.net.
.                       175197  IN      NS      l.root-servers.net.
.                       175197  IN      NS      j.root-servers.net.
.                       175197  IN      NS      g.root-servers.net.
.                       175197  IN      NS      h.root-servers.net.
.                       175197  IN      NS      f.root-servers.net.
.                       175197  IN      NS      d.root-servers.net.
.                       175197  IN      NS      e.root-servers.net.
.                       175197  IN      NS      c.root-servers.net.
.                       175197  IN      NS      b.root-servers.net.
.                       175197  IN      NS      k.root-servers.net.
.                       175197  IN      RRSIG   NS 8 0 518400 20171125050000 20171112040000 46809 . TFsjNZyBeYn2danYES9hNFiRUMFrFJGu6VpuBT70XsUeros1aha4wG6x zh3HCS9rIsd/0tLd0MzO/kQGUVTxNtzuKIFLKdLP4958RPAkE4Lni5Qp tnv9lrvHaQdcjg5IBgAKxz5XRx4Fx0Nmf4FQRftY1qcEQXy7zqD2d5xe 2bPZL8wIS9viuxQpCcmWMGyeL6DpydDnHssLNcONBSzwUREPSJBfkev4 6mEN9qlR7Yh9Ozg/Pn36l9RHiHjvURUG8OEaQwuEbo1Jn7nweOtEpkjt cnpta6Tc9vcvksWsElxlTtq9RYARB39lDhzrrFyTGwhbAW2vnP/Xe9w0 fp8+Jg==
;; Received 525 bytes from 8.8.8.8#53(8.8.8.8) in 116 ms

hunafa.com.             1026    IN      A       95.141.192.30
;; Received 48 bytes from 192.36.148.17#53(i.root-servers.net) in 1 ms

 

sin_a
()

bareos всё?

А что с bareos?

$ host bareos.com
bareos.com has address 81.173.212.166

$ whois 81.173.212.166 | grep inetnum
inetnum:        81.173.212.160 - 81.173.212.175

$ whois 81.173.212.166 | grep mail
abuse-mailbox:  abuse@netcologne.de

$ for i in {161..191} ; do ping -n -w 1 -c 1 81.173.212.$i 2>&1 >/dev/null && echo $i ; done
177
178
181
185
189
Не выдержали лидерства? Все в bacula? Сайт хостера (netcologne.de) вроде жив. Кто там в Германии поблизости на немецком понимает, надолго у них стряслось?

 ,

sin_a
()

Postfix, opendkim, Socket local и TrustedHosts

Установил opendkim, настроил, подписывает.

По умолчанию он использует сетевой сокет. Счёл что локальный сокет лучше. Указал, подписывать перестало. В логах opendkim приводится не 127.0.0.1 а ip адрес отправителя и отказывается как not internal. Всё правильно, в TrustedHosts по умолчанию разрешены только локальные адреса.

Насколько я понимаю, для локального сокета ограничения по адресам уже не имеют смысла и можно разрешать всё. Это так, или я что то упускаю?

 , ,

sin_a
()

Права в postgresql

Установил postgresql и phppgadmin (на разных хостах). Создал две БД, двух пользователей:

( читать дальше... )

В phppgadmin нет поля ввода базы данных. Мне в pg_hba.conf задать права для всех на template1? Это не будет неправильным? Или нужны какие либо манипуляции со схемами?

До этого я имел дело с mysql, там при подключении можно не указывать название бызы и там нет никаких схем. Если кто нибудь разбирается в postgresql, скажите пожалуйста, можно ли разрешить эту ситуацию и как правильно это сделать?

 

sin_a
()

Что такое DMARC и зачем это ненужно?

Прочитал про DMARC. Насколько я понял, это информация серверу получателя о том нормальное это письмо или подозрительное и рекомендации принимать его или нет. Немного не понял: если у сервера отправителя есть информация о том нормальное письмо или подозрительное, может сразу самому последовать своим рекомендациям и поступить как надо соответственно до отправления? В чём смысл? Просто снять с себя ответственность?

 ,

sin_a
()

Пользователи для PgBouncer

Появилось желание попробовать PgBouncer. Но не могу уловить что у него с пользователями.

( читать дальше... )

 ,

sin_a
()

Перенос работающего Centos 6 на raid 1 (mdadm)

Задача переноса работающей системы на raid относительно распространена и упоминается в интернет. Для Centos можно взять за основу следующее описание: https://kamaok.org.ua/?p=182 . Прежде чем делать на эксплуатируемой системе пробую выполнить на virtualbox.

В целом здесь всё понятно и прозрачно и проходит нормально до перезагрузки в новый деградированный рейд. После чего в него следует добавить исходный накопитель. У меня два раздела: корневой и /boot. Второй это sd(ab)1, корневой на LVM в котором был и swap (установка по умолчанию). Корневой я перенёс на sdb2, решив с подкачкой разобраться потом.

Но при добавлении sda2 он оказывается занят. Здесь ( https://yadi.sk/i/XysQJkO03LDb7w ) можно увидеть что при остановке системы отмонтируется VolGroup-lv_root (dm-0). В /boot/grub/menu.lst признаков lvm не осталось, в /etc/fstab тоже, initramfs пересобран.

Где можно ещё поискать кто монтирует файловую систему? Или это всё же initramfs и я его как-то неправильно пересобрал?

 ,

sin_a
()

cubietruck и load average

В порядке шефской помощи поддерживаю знакомому домашний сервер. Недавно он заменил x86 на cubietruck. В принципе всё нормально но есть один вопрос.

( читать дальше... )

При отсутствии нагрузки load average постоянно стоит около единицы. Это для cubietruck нормально? Или дело в том что стоит debian 8 Jessie с systemd? Взят, если не ошибаюсь, отсюда: https://www.armbian.com/cubietruck/

Доп: см. также: Banana Pi: постоянно Load Average больше 1.00 - в чём дело?

 , ,

sin_a
()

svg: задать название для цвета

Пробую познакомиться с svg, возникло желание задать названия цветов и далее использовать. Например в следующем случае задать названия clr1 и clr2 и далее их использовать.

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg version="1.1"
     baseProfile="full"
     xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink"
     xmlns:ev="http://www.w3.org/2001/xml-events"
     width="100%" height="100%">
  <defs>
    <linearGradient id="grad1" x1="0%" y1="0%" x2="0%" y2="100%">
      <stop offset="0%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
      <stop offset="10%" style="stop-color:rgb(0,255,0);stop-opacity:1" />
      <stop offset="50%" style="stop-color:rgb(0,255,0);stop-opacity:1" />
      <stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
    </linearGradient>
  </defs>
  <rect width="1024" height="1024" fill="url(#grad1)" />
</svg>
Тогда при замене цвета не нужно будет искать в структуре а можно будет внести изменение в одном месте.

Как это можно сделать? В этой же области defs, определить в <style> или задать переменными?

Кстати да, наверно AP знает.

 

sin_a
()

mx запись и автонастройка почты в клиенте

Если создавать новую учётную запись почты например в thunderbird, то иногда он по адресу почты правильно подставляет адрес почтового сервера. Например если domain.ru обслуживается гуглём или яндексом то указываются их почтовые сервера, типа: imap.yandex.com и smtp.yandex.com. При этом mx запись отличается: mx.yandex.net. Впрочем, thunderbird здесь сразу говорит «конфигурация найдена в базе isp в mozilla». По видимому он читает mx запись и по ней находит у себя правильные сервера.

Если мы захотим сделать почту на произвольном домене второго уровня то он подставит mail.domain.ru. Можно предположить что он опирается на mx запись. По крайней мере принятое решение совпадает с ней. Или просто для domain.ru столько раз настраивали почту что он запомнил, а то и внёс в свою базу?

Но когда я сделал домен третьего уровня, определять правильно он перестал. Запись в зоне выглядит так:

subdomain          IN      A       1.2.3.4
subdomain          IN      MX      10 mail2
nslookup возвращает правильное значение. Это я что-то не знал да забыл или thunderbird опирается на некую свою внутреннюю логику? На мой взгляд следует ожидать подстановки в качестве сервера значение mx записи (как, предположительно, он поступил во втором случае), исключая случаи записанные во внутренней базе данных.

Хотел сравнить с штатным клиентом андроид но у него вообще никакого автоопределения нет, во всех случаях подставляет в качестве почтового сервера domain.ru. Да, и чтоб два раза не вставать, нет ли возможности для андроида описать настройки в некоем файле и открыть этот файл почтовым клиентом?

 , ,

sin_a
()

SpamAssassin или DSPAM?

Есть желание поставить фильтр для спама. Довольно популярен SpamAssassin. Для него много описаний, но про него пишут что даёт заметную нагрузку. Хвалят DSPAM, но у него последняя версия от 2012 года. С одной стороны код не портится, но с другой стороны перспективы неопределённые. А что на ваш взгляд предпочтительнее?

Дополнение: победил rspamd

 , ,

sin_a
()

dhcp: из диапазона в статику

Есть желание сделать dhcp для постоянных адресов. Машины будут появляться в произвольное время в произвольном количестве в нескольких диапазонах.

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

И тут я прочёл https://habrahabr.ru/post/91002/ , где человек вроде имеет ту же задачу, решает немного иначе (кстати, зажал решение, или я не нашёл просто?). А в комментариях ему рекомендуют dnsmasq. Но поверхностный поиск не упоминает о подобной задаче, поэтому прежде чем изучать новую незнакомую документацию хочется спросить, у него есть для таких целей какие либо средства или также придётся парсить и переписывать конфиги, лизинг (кстати где он его хранит?) и выигрыш только в более простом синтаксисе?

 , ,

sin_a
()

IPv4 всё?

Или только для редхат?

После yum update:

[root@test /]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core) 
[root@test /]# whereis  ping
ping: /usr/bin/ping /usr/share/man/man8/ping.8.gz
[root@test /]# rpm -qf /usr/bin/ping
iputils-20160308-8.el7.x86_64
[root@test /]# ping 8.8.8.8
ping: socket: Address family not supported by protocol
[root@test /]# 

https://bugs.centos.org/view.php?id=12407

 , ,

sin_a
()

Это какой то gmail...

LOR сказал мне:

Был добавлен новый комментарий. Обновить.

 ,

sin_a
()

Network manager: vlan over wifi

Есть желание при подключении wifi подключать vlan. Система: Ubuntu 14.04.5, сеть управляется при помощи Networkmanager.

Можно добавить vlan в настройке NM. Но там нельзя для него выбрать wifi в качестве несущего интерфейса. При редактировании добавленного конфига вручную, и попытке вписать название нужного, результата нет.

Можно создать нормальный конфиг для интерфейса. Но когда он поднимается на wifi удаляется адрес (да, я знаю что использовать несущий интерфейс наравне в вланом не по учебнику, но не уверен что в моём случае это имеет значение). Что интересно, при этом и внутри влана пакеты тоже не ходят, хотя интерфейс виден и адрес назначен. Но при использовании провода (то есть, eth0 также управлялся конфигом а не NM) такая настройка работала нормально.

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

Возможно ли в принципе так настроить сеть? Можно конечно подключать провод по нужде, но это не очень удобно. Может быть имеет смысл обновить до 16.04?

 , ,

sin_a
()

SMART (Raw_Read_Error_Rate) у Hitachi за raid контроллером

Смотрю SMART на Hitachi HUA722010CLA330 под LSI MegaRAID SAS 2208.

Значение Raw_Read_Error_Rate у одного из дисков подозрительно велико, у второго — единица. Через некоторое время посмотрел опять — у второго внезапно выросло также. Но ещё через некоторое время значение упало до нуля сначала у первого а затем у второго. Наверно я чего-то не понимаю, мне казалось что это счётчик который может только расти. Вот здесь пишут что raw values вообще читать не следует, потому что There is no standard for them. Some vendors pack several values into the same 32 bit word too. This leads to scary but harmless raw values. https://forum.ovh.co.uk/showthread.php?7905-Smart-Raw_Read_Error_Rate

Мне уже следует напрячься или пока наоборот, можно расслабиться, и кому верить^W^W на что тогда вообще смотреть? Это особенности накопителя или возможны наводки контроллера?

И чтобы два раза не вставать, такой вопрос. Положим отказал накопитель. Мне нужно извлечь неисправный и заменить его. Как мне определить который извлекать? В случае mdadm я мог зажечь лампочку, например забивая нулями. Есть ли возможность в случае raid контроллера идентифицировать накопитель лампочкой?

 , , ,

sin_a
()

postfix: reject_sender_login_mismatch не принимает письмо от владельца ящика

Возникло желание запретить windows машинам отправлять почту подставляя случайного отправителя. Возможно это уменьшит неуправляемые выбросы нежелательной почты. Для этого часто рекомендуют

smtpd_sender_restrictions = reject_sender_login_mismatch
Но у меня это правило блокирует почту от валидного пользователя.
5.7.1 <user@domain.ru>: Sender address rejected: not owned by user user@domain.ru
Включил более полное логирование, но это не дало более полного понимания:
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: >>> START Sender address RESTRICTIONS <<<
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: generic_checks: name=reject_sender_login_mismatch
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: >>> START Sender address RESTRICTIONS <<<
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: generic_checks: name=reject_authenticated_sender_login_mismatch
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: ctable_locate: leave existing entry key user@domain.ru
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: maps_find: smtpd_sender_login_maps: user@domain.ru: not found
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: match_string: domain.ru ~? mail.domain.ru
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: match_string: domain.ru ~? localhost.domain.ru
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: match_string: domain.ru ~? localhost
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: match_string: domain.ru ~? domain.ru
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: maps_find: smtpd_sender_login_maps: user: not found
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: maps_find: smtpd_sender_login_maps: @domain.ru: not found
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: mail_addr_find: user@domain.ru -> (not found)
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: NOQUEUE: reject: RCPT from unknown[192.168.1.1]: 553 5.7.1 <user@domain.ru>: Sender address rejected: not owned by user user@domain.ru; from=<user@domain.ru> to=<user@domain.ru> proto=ESMTP helo=<[192.168.1.122]>
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: generic_checks: name=reject_authenticated_sender_login_mismatch status=2
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: >>> END Sender address RESTRICTIONS <<<
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: generic_checks: name=reject_sender_login_mismatch status=2
Aug 26 14:09:24 mail.domain.ru postfix/smtpd[403]: >>> END Sender address RESTRICTIONS <<<

Как можно понять что ему мешает? Не может это быть связано с тем, что пользователи хранятся в SQL?

 

sin_a
()

Что происходит при doveadm mailbox list -A?

У меня при этом выходит следующее:

[root@mail mail]# doveadm mailbox list -A
doveadm(systemd-bus-proxy): Error: user systemd-bus-proxy: Initialization failed: Namespace '': mkdir(//mailboxes) failed: Permission denied (euid=999(systemd-bus-proxy) egid=997(systemd-bus-proxy) missing +w perm: /, dir owned by 0:0 mode=0555)
doveadm(systemd-bus-proxy): Error: User init failed
doveadm(systemd-network): Error: user systemd-network: Initialization failed: Namespace '': mkdir(//mailboxes) failed: Permission denied (euid=998(systemd-network) egid=996(systemd-network) missing +w perm: /, dir owned by 0:0 mode=0555)
doveadm(systemd-network): Error: User init failed
doveadm(dovenull): Error: user dovenull: Initialization failed: Namespace '': mkdir(/usr/libexec/dovecot/mailboxes) failed: Permission denied (euid=997(dovenull) egid=995(dovenull) missing +w perm: /usr/libexec/dovecot, dir owned by 0:0 mode=0755)
doveadm(dovenull): Error: User init failed
vmail Drafts
vmail Junk
vmail Trash
vmail Sent
vmail INBOX
doveadm(postgrey): Error: chown(/var/spool/postfix/postgrey/mailboxes, group=89(postfix)) failed: Operation not permitted (egid=994(postgrey), group based on /var/spool/postfix/postgrey - see http://wiki2.dovecot.org/Errors/ChgrpNoPerm)
doveadm(postgrey): Error: user postgrey: Initialization failed: Namespace '': mkdir(/var/spool/postfix/postgrey/mailboxes) failed: Operation not permitted
doveadm(postgrey): Error: User init failed
doveadm(postgrey): Error: User listing returned failure
doveadm: Error: Failed to iterate through some users
[root@mail mail]#

Такое впечатление, что он перебирает неких локальных пользователей (systemd-bus-proxy, systemd-network, dovenull, postgrey) и для них пытается выполнить list. Соответственно, два вопроса: как отговорить его смотреть локальных и как обучить его брать виртуальных?

Собственно несложно получить список пользователей самому и выполнять для каждого в списке, но это выглядит не совсем правильным. «Не по феншую».

 

sin_a
()

RSS подписка на новые темы