Публикации

Как задать переезд в .htcaccess, чтобы в robots.txt прописать host?

Сайт имеет множество доменов 3го уровня, а так же множество зеркал. Сейчас все домены перезжают, следовательно нужно переадрестовать все site1.ru, site2.ru, site3.ru на site4.ru, а домены 3го уровня domen1.site1.ru, domen1.site2.ru, domen1.site3.ru на domen1.site4.ru, domen2.site1.ru, domen2.site2.ru, domen2.site3.ru на domen2.site4.ru и т.д.
В .htcaccess сейчас вот так настроен переезд:
RewriteCond %{HTTP_HOST} ^site2\.ru
RewriteRule ^(.*)$ site4.ru/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^([^.]+\.)site2\.ru$ [NC]
RewriteRule ^ %1site4\.ru%{REQUEST_URI} [R=301,L,NE]

При этом есть запись на разные robot.txt для разных доменов 3го уровня
RewriteRule ^robots\.txt$ robots/%{HTTP_HOST}.txt [L]

Суть проблемы: для яндекса в robots.txt нужно указать диррективу HOST. Сейчас запись переадресовывает все, в том числе робот и yandex не читает из-за этого robots. Как сделать переадресацию всего кроме robots.txt которые по сути расположены в папке /robots и сами фалы имеют формат domen1.robots.txt

Апач размножается и перестает отдавать контент. Как лечить?

Сервер последние 3 дня стал падать, отдавая 502 ошибку спустя 2-3 часа. В логах httpd:
[Mon Jul 31 11:56:24 2017] [notice] Apache/2.2.15 (Unix) mod_fastcgi/2.4.6 mod_rpaf/0.6 PHP/5.3.29 configured — resuming normal operations [Mon Jul 31 11:56:25 2017] [error] server reached MaxClients setting, consider raising the MaxClients setting [Mon Jul 31 11:56:35 2017] [notice] caught SIGTERM, shutting down [Mon Jul 31 11:56:36 2017] [notice] Apache/2.2.15 (Unix) mod_fastcgi/2.4.6 mod_rpaf/0.6 PHP/5.3.29 configured — resuming normal operations zend_mm_heap corrupted [Mon Jul 31 12:31:19 2017] [notice] child pid 27463 exit signal Segmentation fault (11) zend_mm_heap corrupted zend_mm_heap corrupted [Mon Jul 31 12:45:07 2017] [error] server reached MaxClients setting, consider raising the MaxClients setting [Mon Jul 31 13:18:16 2017] [notice] child pid 4921 exit signal Segmentation fault (11) [Mon Jul 31 13:56:15 2017] [notice] child pid 32413 exit signal Segmentation fault (11) zend_mm_heap corrupted [Mon Jul 31 15:01:39 2017] [notice] caught SIGTERM, shutting down [Mon Jul 31 15:01:40 2017] [notice] Apache/2.2.15 (Unix) mod_fastcgi/2.4.6 mod_rpaf/0.6 PHP/5.3.29 configured — resuming normal operations zend_mm_heap corrupted zend_mm_heap corrupted [Mon Jul 31 15:29:05 2017] [error] server reached MaxClients setting, consider raising the MaxClients setting zend_mm_heap corrupted [Mon Jul 31 16:00:09 2017] [notice] child pid 18382 exit signal Segmentation fault (11) [Mon Jul 31 16:02:02 2017] [notice] child pid 17800 exit signal Segmentation fault (11) [Mon Jul 31 16:19:12 2017] [notice] child pid 15365 exit signal Segmentation fault (11) zend_mm_heap corrupted [Mon Jul 31 16:33:11 2017] [notice] child pid 15653 exit signal Segmentation fault (11)

оперативки 64Гб на сервере, 30гб под mysql отдано.
Апач настроен так:
StartServers 2 MinSpareServers 2 MaxSpareServers 20 ServerLimit 32 MaxClients 32 MaxRequestsPerChild 1000

Перезапускаешь httpd и все работает. Куда копать? Спасибо заранее

Как заставить nginx отдавать по domain.com/sub отдельную папку?

Имеем проект на Laravel4. Страшное legacy. Тормозит местами.
Решилил переписать потихоньку на другом фреймворке.
Задача такая: Часть запросов на URL /sub обрабатывать отдельным движком.

Никак не могу заставить свой мозг сообразить как же изменить конфиг nginx'a чтобы всё работало. Помогите разобраться, пожалуйста.

Сейчас конфиг стандартный как у всех:
server { # все как у всех listen 80 default_server; server_name domain.cm; root /home/domain.com/public; index index.php; # тут все стандартно location / { try_files $uri $uri/ /index.php?$query_string; } # и тут все стандартно location ~ \.php$ { fastcgi_pass 127.0.0.1:9001; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }

Соответственно /home/domain.com лежит проект. А /home/domain.com/public точка входа в приложение.
Так вот в /home/domain.com/sub лежит подпроект. И его точка входа естественно /home/domain.com/sub/public
А надо отдать его как domain.com/sub. Причем чтобы юзера не редиректило в domain.com/sub/public

Пробовал реализовать то что мне нужно вот так:
location /sub { alias /home/domain.com/sub/public/; try_files $uri $uri/ /index.php?$query_string; }
Не работает.

Пробовал так:
location /sub { root /home/domain.com/sub/public/; rewrite ^(.*) /index.php$1; }

Все равно.

Чую что решение простое и должно быть на поверхности. Ну вот в голове как заноза засела. Когда слово знаешь, а вспомнить не можешь.

Вопрос по поводу ptr?

Мне нужно проверить домен на предмет поддельного почтового адреса например vasya@gmail.com. Что мне говорит мат.часть:

В целях уменьшения объёма нежелательной почтовой корреспонденции (спама) многие серверы-получатели электронной почты могут проверять наличие PTR записи для хоста, с которого происходит отправка. В этом случае PTR запись для IP адреса должна соответствовать имени отправляющего почтового сервера, которым он представляется в процессе SMTP сессии.
Окей, тогда запросим запись ptr у домена gmail.com, сначала вычислим айпи:

ping gmail.com
PING gmail.com (216.58.209.37) 56(84) bytes of data.
64 bytes from waw02s05-in-f37.1e100.net (216.58.209.37): icmp_seq=1 ttl=51 time=36.3 ms
64 bytes from waw02s05-in-f37.1e100.net (216.58.209.37): icmp_seq=2 ttl=51 time=36.0 ms
64 bytes from waw02s05-in-f37.1e100.net (216.58.209.37): icmp_seq=3 ttl=51 time=36.5 ms

Теперь запрашиваем ptr запись:

dig -x 216.58.209.37
37.209.58.216.in-addr.arpa. 86129 IN PTR waw02s05-in-f5.1e100.net.
37.209.58.216.in-addr.arpa. 86129 IN PTR waw02s05-in-f37.1e100.net.
37.209.58.216.in-addr.arpa. 86129 IN PTR waw02s05-in-f37.1e100.net.
37.209.58.216.in-addr.arpa. 86129 IN PTR waw02s05-in-f5.1e100.net.
Мне не понятно, почему обратная запись не: 37.209.58.216.in-addr.arpa. 86129 IN PTR gmail.com? домен то gmail? при чем здесь/что такое waw02s05-in-f5.1e100.net.?

Настройка Dante Client?

Поддерживает ли Dante Client преобразование DNS? Нашел вот
эту статью. Вроде как поддерживает, если закомментировать resolv.conf, тогда следующий вопрос, как его настроить и запустить? С английским на ВЫ, поэтому инструкция прочтена, но понятно мало что. В /etc/dante.conf прописал route { from: 0.0.0.0/0 to: 0.0.0.0/0 via: 192.168.1.124 port = 1080 proxyprotocol: socks_v4 socks_v5 method: none } где 192.168.1.124 Socks5 сервер. Так же создал socks.conf в etc, и прописал тоже самое туда. Как мне завернуть ВЕСЬ трафик через этот Socksify? Я так понимаю, если я хочу скажем завернуть трафик браузера, я прописываю socksify browsers(это как пример) и теперь весь трафик браузера будет проходить через Socks сервер. А как завернуть ВЕСЬ трафик компьютера через него?(кроме локального естественно) Прописывать для каждого приложения?

Как подключить дисковый массив к серверу?

Здравствуйте.

Возникла необходимость настроить имеющийся дисковый массив HP StorageWorks EVA 4100.
В комплект входят 2 хранилища, два контроллера и 2 SAN-свитча.
Собрал стойку, по схеме соединил контроллеры с хранилищами и свитчем (не очень понятно, зачем их два), на сервер с Win Server 2008 R2 поставил FC-адаптер, драйвера автоматически поставились, от SAN-свитча протянул патчкорд до сервера.
Установил на сервере HP Command View Suite 10.3 и тут-то столкнулся с проблемой.
В инструкциях при открытии CV в браузере открывается панель управления дисковым массивом. Но у меня открывается просто пустая страница, браузер обращается к 2374 порту. Вроде, так и должно быть, но у меня тем не менее ничего не отображается.
Я изучал раздел траблшутов в мануале от HP — там не говорится о такой проблеме с CV. Искал в гугле, также мои поиски не увенчались успехом. Не могу никак понять, как CV связать именно с подключенным мной массивом через этот адаптер.

Подскажите, пожалуйста, те кто с подобным оборудованием работал, как это осуществить.

Как произвести массовую смену паролей AD?

Добрый день уважаемые знатоки! Нужна помощь в решении такой тривиальной задачи:
Дано:

1) 110 учетных записей пользователей в AD (на сервере win2008R2)
2) Есть текстовый файл в котором построчно записаны все 110 пользователей в виде:
«CN=Петрова,OU=Users,OU=ORG.LOC,DC=org,DC=loc»
«CN=Сидорова,OU=Users,OU=ORG.LOC,DC=org,DC=loc»
«CN=Иванова,OU=Users,OU=ORG.LOC,DC=org,DC=loc»
«CN=Козлова,OU=Users,OU=ORG.LOC,DC=org,DC=loc»
и т.д. ровно 110 шт.
3) Текстовый файл, в котором прописаны построчно пароль из 9 символов:
gfhys32jf7
ahjds6382
dfk83j333
и т.д. ровно 110 шт.

Требуется:

Написать скрипт в powershell или просто батник, что бы он менял пароли пользователей (брал их из файла с паролями) и полученный результат выводил в некий третий файл в виде двух столбцов (1 столбез — учетка; 2 столбец -пароли)

Как менять пароли с помощью powershell (или cmd) я понимаю. Не получается считывать из файла данные и с помощью цикла их использовать в скрипте.

Set-ADAccountPassword -Identity NameUser -Reset -NewPassword (ConvertTo-SecureString -AsPlainText «password» -Force)

NameUser — имя пользователя из файла №1
«password» -пароль пользователя из файла №2

Фильтрация DNS трафика через Socks5?

Добрый вечер всем, кто читает этот вопрос. Немного запутался, прошу помощи в посвящении и направлении. В общем, протокол Socks5 представляет из себя прокси-сервер для фильтрация трафика между клиентом и сервером. Работает как с TCP, так и с UDP трафиком. То есть, при подключении к Socks5, сервер к которому я обращаюсь будет видеть ip адрес proxy сервера(TCP) и ip DNS провайдера этого proxy-сервера(UDP). Получается что фильтруется TCP и UDP трафик. Вот здесь первый вопрос. Как правило proxy-сервера Socks5 не поддерживают фильтрацию UDP трафика, как быть в таком случае? Поддерживает ли 3proxy данную функцию?(может нужны специальные настройки какие-то?). Можно ли как то получить ip DNS провайдера через Socks5, если он не поддерживает UDP проксификацию?

Не ставится подпись DKIM (Exim+Centos 6) где искть причину?

Exim упорно не ставит в письмах подпись.
Ключи сгенерированы, доступ к ним у exim-a есть, запись у домена прописана и проверку на dkimcore.org/tools/keycheck.html проходит, но подписи в заголовке писем нет.
Где искать концы?

Кусок конфига экзима тут

begin transports

DKIM_DOMAIN = mydomain.ru
DKIM_FILE = /var/vmail/dkim/mail.private #у екзима есть сюда доступ
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}
DKIM_CANON = relaxed

remote_smtp:
driver = smtp
dkim_domain = DKIM_DOMAIN
dkim_selector = mail # — выбранный нами селектор.
dkim_private_key = DKIM_PRIVATE_KEY
dkim_canon = relaxed
dkim_strict = yes

dovecot_delivery:
driver = pipe

Postfix + Dovecot, не принимает письма, куда копать?

Всем Доброго времени суток!

Случилась со мной ситуация, настроил Postfix + DOvecot, плюс веб-инструменты PostfixAdmin + Roundcube, все это на Ubuntu Server 16.04

Пользователи хранятся в MySQL

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

postconf -n
spoileralias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases append_dot_mydomain = no biff = no broken_sasl_auth_clients = yes dovecot_destination_recipient_limit = 1 inet_interfaces = all inet_protocols = ipv4 mailbox_command = procmail -a "$EXTENSION" mailbox_size_limit = 0 maximal_backoff_time = 8000s maximal_queue_lifetime = 7d minimal_backoff_time = 1000s mydestination = $myhostname,localhost.$myhostname,localhost mydomain = site.ru myhostname = site.ru mynetworks = 127.0.0.0/8 myorigin = $mydomain readme_directory = no recipient_delimiter = + relayhost = smtp_helo_timeout = 60s smtp_tls_note_starttls_offer = yes smtp_tls_security_level = may smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) smtpd_client_restrictions = reject_rbl_client sbl.spamhaus.org, reject_rbl_client blackholes.easynet.nl reject_unauth_pipelining smtpd_hard_error_limit = 12 smtpd_recipient_limit = 16 smtpd_recipient_restrictions = reject_unauth_pipelining,
Читать дальше