LINUX.ORG.RU

Сообщения leader32

 

Таймаут соединения по SMTP

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

# php opt/www/site.ru/mail.php
Всё отправляется, почта приходит. Иду дальше:
# jexec 12 php /opt/www/site.ru/mail.php
И тут висит долгое время. Причём в php переменная «SMTP» указывается как 127.0.0.1.
# jexec 12 telnet 127.0.0.1 25
Соединяется, связь есть, но почта всё равно не отправляется. Что интересно,
# jexec 12 ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
ping: sendto: Can't assign requested address
Но думаю, это мало касается проблемы, ведь с localhost проходит коннект.

Вот выдержка из rc.conf:

jail_siteru_rootdir="/opt/turma/site.ru"
jail_siteru_hostname="siteru"
jail_siteru_ip="127.0.0.3"
jail_siteru_interface="lo0"
jail_siteru_flags="-l -U root"

В какую сторону смотреть, что ещё глянуть?

 , ,

leader32
()

named не резолвит самому себе по внешнему ip, SERVFAIL

Вобщем, сабж. RHEL 6.4 x64

Не резолвит некоторые доменные имена, и все те, для которых о сам является держателем зоны. Причем, если спрашивать у 127.0.0.1 или localhost, то всё нормально, на любой запрос dig'a отвечает исправно и корректно. Пробовал файл зоны править, приводил точь-в-точь как в доках, не помогло. Причем, до этого всё работало исправно, клиенты были довольны.

Если запрос делает другой хост, он ему отвечает сразу, но почему-то некоторым из доверенных подсетей говорит SERVFAIL. У кого какие догадки?

Если конфиги нужны будут ещё, приведу при необходимости.

# named -V BIND 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 built with '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--with-libtool' '--localstatedir=/var' '--enable-threads' '--enable-ipv6' '--with-pic' '--disable-static' '--disable-openssl-version-check' '--with-dlz-ldap=yes' '--with-dlz-postgres=yes' '--with-dlz-mysql=yes' '--with-dlz-filesystem=yes' '--with-gssapi=yes' '--disable-isc-spnego' '--with-docbook-xsl=/usr/share/sgml/docbook/xsl-stylesheets' '--enable-fixed-rrset' 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu' 'target_alias=x86_64-redhat-linux-gnu' 'CFLAGS= -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' 'CPPFLAGS= -DDIG_SIGCHASE' using OpenSSL version: OpenSSL 1.0.0 29 Mar 2010 using libxml2 version: 2.7.6

А вот /etc/named.conf

acl trusted { localhost; 127.0.0.1; <тут ещё перечень доверенных ip>; };

acl internet { 0.0.0.0/0; };

acl xfer { localhost; 127.0.0.1; <тут ещё перечень доверенных ip>; };

// http://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xml
acl bogon { 169.254.0.0/16; 172.16.0.0/12; 192.0.2.0/24; 198.51.100.0/24; 203.0.113.0/24; 198.18.0.0/15; 224.0.0.0/3; 255.255.255.255/32; };

options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { none; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { any; };
        allow-query-cache { trusted; };
        allow-transfer { xfer; };
//      tcp-clients 5000;
//      recursive-clients 5000;
        zone-statistics yes;
        recursion yes;
        notify no;
        transfer-format many-answers;
        max-transfer-time-in 60;
        interface-interval 0;

        blackhole { bogon; };

//      dnssec-enable yes;
//      dnssec-validation yes;
//      dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";
};

logging {
        channel default_ch {
                file "data/named.run";
                severity dynamic;
                print-time yes;
                print-category yes;
        };
        channel security_ch {
                file "data/named_security.run";
                print-time yes;
                print-category yes;
        };
        channel resolver_ch {
                file "data/named_resolver.run";
                print-time yes;
                print-category yes;
        };
};

key "rndc-key" {
        algorithm hmac-md5;
        secret "WfdoUIFOfhFIufhIFUfihfIFuA==";
};

controls {
        inet 127.0.0.1 port 953
        allow { 127.0.0.1; } keys { "rndc-key"; };
};

include "zones/stream.zones";

view "internal-in" in {
        match-clients { trusted; 127.0.0.1; };
        allow-recursion { localhost; <внешний ip сервера>; };
        recursion yes;
        additional-from-auth yes;
        additional-from-cache yes;

        zone "." {
                type slave;
                file "zones/slave/root.slave";
                masters {
                        198.41.0.4;     // A.ROOT-SERVERS.NET.
                        192.228.79.201; // B.ROOT-SERVERS.NET.
                        192.33.4.12;    // C.ROOT-SERVERS.NET.
                        199.7.91.13;    // D.ROOT-SERVERS.NET.
                        192.203.230.10; // E.ROOT-SERVERS.NET.
                        192.5.5.241;    // F.ROOT-SERVERS.NET.
                        192.112.36.4;   // G.ROOT-SERVERS.NET.
                        128.63.2.53;    // H.ROOT-SERVERS.NET.
                };
                notify no;
        };

        include "zones/com.zones";
        include "zones/uz.zones";
        include "zones/arpa.zones";
        include "/etc/named.rfc1912.zones";
};

view "external-in" in {

        match-clients { any; };
        recursion no;
        additional-from-auth no;
        additional-from-cache no;

        zone "." {
                type slave;
                file "zones/slave/root.slave";
                masters {
                        198.41.0.4;     // A.ROOT-SERVERS.NET.
                        192.228.79.201; // B.ROOT-SERVERS.NET.
                        192.33.4.12;    // C.ROOT-SERVERS.NET.
                        199.7.91.13;    // D.ROOT-SERVERS.NET.
                        192.203.230.10; // E.ROOT-SERVERS.NET.
                        192.5.5.241;    // F.ROOT-SERVERS.NET.
                        192.112.36.4;   // G.ROOT-SERVERS.NET.
                        128.63.2.53;    // H.ROOT-SERVERS.NET.
                };
                notify no;
        };

        include "zones/com.zones";
        include "zones/uz.zones";
        include "zones/arpa.zones";
        include "/etc/named.rfc1912.zones";
};

//include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

А вот пример файла зоны, держателем которой и является этот сервер:

$TTL    86400
$ORIGIN example.com.
@               IN      SOA     example.com. hostmaster.mydomain.com. (
                        2012101401      ; Serial
                        14400           ; Refresh, 4 hours
                        3600            ; Retry, 1 hour
                        604800          ; Expire, 7 days
                        86400 )         ; Minimum TTL, 1 day

example.com.  604800  IN NS   ns1.mydomain.com.
example.com.  604800  IN NS   ns2.mydomain.com.

@                IN     MX      10      nx.example.com.
@                IN     MX      30      mail.example.com.

@               IN      A       <ip>
www             IN      A       <ip>

Это файлы уже после танцев и плясок с бубном.

У кого какие догадки?

 , головой ап стенку, гугл-недруг

leader32
()

организовать bridge без brctl

Задача: Есть раб машинка с CentOS 6.3 x64, две сетевые карты eth0 и eth1. К eth1 подключен ноут. Надо сделать бридж ноута в сеть, находящуюся за eth0. Но так, чтобы раб. станция имела два работающих интерфейса, и при соединении с ноутом, пакеты шли напрямую в eth1, а не через eth0 --->куда-то-там-дальше-по-свету ---> eth0 --->eth1.

Схема для наглядности:

Локальная сеть ---- |eth0 -раб. станция- eth1| ---ноут

Были мысли использовать ebtables, но так и не додумался назначить действие отправки пакета по интерфейсу. Потом понял, что это может iproute2, начал маркировать пакеты с маком источника на eth1 и назначения на eth0, и тут затык: какие правила добавлять в таблицы? Не работающий вариант:

ip rule add fwmark 0x2 dev eth0 table 101
ip rule add fwmark 0x3 dev eth1 table 101

 ,

leader32
()

Что-то с параметрами GConf

Вобщем, на десктопе стоит CentOS 6.4 x64, со всеми обновлениями со стандартных репов. В качестве оконного менеджера использую fluxbox, логинюсь через SLiM, ну и прочие десктопные утилиты типа tint2, conky.

До этого собирал много разных пакетов (volwheel требовал gtk3,за ним потянулось ещё много чего), всего их около 100 штук вышло, эдакий LFS вышел (наверно его и надо было собирать).

В один прекрасный момент, отключение питания, обратно врубаю, вроде всё стартанулось, запускаю gnome-terminal (который поставлен из репов), и тут выдает такое:

$ gnome-terminal
**
ERROR:terminal-app.c:1452:terminal_app_init: assertion failed: (app->default_profile_id != NULL)
Аварийный останов (core dumped)
$

на форумах советуют поставить libgnome, который решает проблему. Мне не помог. Пробовал создавать юзера, логинюсь от него, та же ошибка. Значит, что-то произошло с системой, не хватает каких-то параметров касательно GConf.

Пробовал вручную через gconftool-2 добавлять этот параметр, дальше ругается на system_font_desc != NULL

сейчас уже почти дурачусь, запустил yum reinstall *, не знаю, поможет ли это.

ребут не помогает, кстати

 , ,

leader32
()

NFSen синтаксис фильтров

Кто как настраивает фильтры на коллекторах?

Дело в том, что у меня есть список из 119 подсетей, и для просмотра графиков трафика в двух направлениях(src and dst) я указываю что-то вроде:

net 10.0.0.0/8
and net 192.168.0.0/16
and net ...

правильно?

Сам же роутер собирает статистику с серверов целой 24 подсети, и для них хочу также собирать статистику входящего и исходящего трафика до этих 119 подсетей и всех остальных. Как примерно писать наборы фильтров?

 , , ,

leader32
()

NFSen синтаксис фильтров в собственных каналах

Кто как настраивает фильтры на коллекторах?

Дело в том, что у меня есть список из 119 подсетей, и для просмотра графиков трафика в двух направлениях(src and dst) я указываю что-то вроде:

net 10.0.0.0/8
and net 192.168.0.0/16
and net ...

правильно?

Сам же роутер собирает статистику с серверов целой 24 подсети, и для них хочу также собирать статистику входящего и исходящего трафика до этих 119 подсетей и всех остальных. Как примерно писать наборы фильтров?

 , ,

leader32
()

агрегация списка в таблицу

Вобщем, в скрипте циклом на выходе получаю 2 столбца - имя количество

Вася 3
Женя 4
Петя 7
Настя 4

количество - это разные типы вещей(всего их 4)

второй заход может иметь следующий вывод:

Настя 2
Вася 2
Саша 5
Гоша 4

...

и здесь уже получаю количество другой вещи.

Мне нужно всё это объединить в таблицу примерно такой структуры:

<name> <item1> <item2> <item3> <item4>

Если вручную распарсить то что я привел, то получится примерно следующее:

Вася   3   2
Настя   4   2
Саша        5
Гоша        4
Женя   4   
Петя    7

Ну и в таком духе. Сейчас я создал рабочее решение своего же вопроса с помощью mysql + PRIMARY индекса, поля - дата и имя, т.е. на одна дату - одно имя. И потом делаю сначала

INSERT INTO table (name,item1) VALUES ('Вася', 3) ON DUPLICATE KEY UPDATE item1 = 3
затем
INSERT INTO table (name,item2) VALUES ('Вася', 5) ON DUPLICATE KEY UPDATE item1 = 3

и впринципе он все это аггрегирует, но хочется все это делать ЗА базой данных, чтобы потом тупо вставить одним запросом. Как?

 , ,

leader32
()

ProFTPd и хождение по симлинкам через mod_vroot

Есть ProFTPd 1.3.4a с mod_vroot 0.9.2 Хочу, чтобы у некоторых полезователей в их домашней папке была папка с симлинками (музыка фильмы программы на сервере), у некоторых в этой папке чтобы были симлинки только на некоторые ресурсы. Создал значит такую папку нужным пользователям, подключаюсь, а он не пускает. Аа, там же chroot'ятся все пользователи, поэтому не пускает. В гуглах есть одно решение:

mount --bind /path/to/real/folder /destination/path
Мне оно вполне подходит, вот только учитывая количество пользователей, выхлоп простой команды mount будет очень большим, да и не знаю, как оно себя поведет при нагрузке. Пробовал также mod_vroot. В конфиге что-то вроде:
<IfModule mod_vroot.c>
VRootEngine on
VRootLog /var/log/proftpd/vroot.log
VRootAlias /home/FilesAtServer /files
VRootOptions allowSymlinks
</IfModule>
Создал у пользователя папку files, захожу в нее, радуюсь, там все симлинки на папки. Но как оказалось, дольше них никуда не пускает. Дело в чем? Ведь опция указано явно - allowSymlinks

Уже думаю, создать виртуальный хост чисто с расшаренными папками, но там же данные разнесены по 3-4 HDD, так тоже не получится. Как быть, у кого есть мысли?

 , mod-vroot, ,

leader32
()

Не видит многие режимы дисплея

Debian 6. Установленные драйвера NVIDIA 295.05.03, NVIDIA GeForce 6200 Turbo Caache. Всё работало прекрасно. Cервер круглосуточно включенный, вдруг выключается. UPS, стоявший рядом, тоже не спас, батареи не хватило на час отключения электроэнергии. Прихожу, смотрю, и [censored], кто ж его, [censored] [censored], вырубил?

Ладно, придется всё заново настраивать, включаю. Загрузка идет нормально, ни на что не жалуется. Запускаются иксы. Разрешение 640х480, частота обновления - 60Гц. Лезу в nvidia-xconfig, а там из всего списка разрешений (модов) доступны только 320х240(?!?!?!?!) и 640х480. Всё! Смотрел логи, всё там success-good. Иду качать с офсайта проприетарщину, 301 версию. Убиваю иксы, сношу драйвер, ставлю новый. Всё равно, видит только 2 режима. Монитор теперь не P17-2, а Unknown-0.

В Xorg.conf поменял значение драйвера с nvidia на nouveau(вроде так было). Теперь стало 800х600, из всего списка разрешений(уже в родной утилите) доступен только этот мод.

Решил xrandr'ом пофиксить, так тот даже мод добавлять не хочет, ругается что-то вроде «unable to...gamma...», все параметры копировал с выхлопа команды cvt, или как её там.

Что делать, куда дальше копать?

 

leader32
()

[ipt_netflow] или [flow-tools] врут

Добрый день. Собрал, запустил модуль ipt_netflow на Debian 6, коллектором выбрал другой хост, допустим 10.0.0.2:9996. Соответственно, прописал это в /etc/modprobe.d/netflow.conf:

options ipt_NETFLOW destination=10.0.0.2:9996
добавил три правила в iptables:
iptables -A FORWARD -j NETFLOW
iptables -A INPUT -j NETFLOW
iptables -A OUTPUT -j NETFLOW
Правила добавились, модуль работает. На коллекторе папка с логами создана, логи создаются, но там не все данные. Коллектором выбран flow-capture. Запускается так:
flow-capture -w /var/log/flow -n 275 0/10.0.0.1/9996
10.0.0.1 - собственно сенсор с ipt_netflow. За два-три дня пользования интернетом, работой самбы на сервере, выхлоп
flow-cat /var/log/flow/ |flow-stat -f 15
Говорит мне, total MB - чуть больше 100, хотя за это время кто-то себе фильмов записал, на сервере торренты круглосуточно качаются-раздаются. После этого, стер все разрешающие правила iptables на обоих машинах, опять добавил три правила, политику поставил на ACCEPT, удалил все логи flow-captur'a, и запустил заново. Копирую файл размером 1,5 ГБ с сервера на другой комп. После копирования, опять проверяю вывод
flow-cat /var/log/flow/ |flow-stat -f 15
Так он мне теперь говорит, что всего «ходило» 0.046 МБ.

Как так? Может, что-то надо добавить в параметры ipt-netflow, либо, сам коллектор flow-capture не так обрабатывает flow-поток?

leader32
()

[iptables] в связке с ipset - блокировка зарубежного трафика

Знаю, много страниц в Сети исписано, что да как нужно делать, но там не совсем то.

Нужно: блокировать трафик на сервере. Есть список разрешенных подсетей (как RU-IX, UA-IX, у нас - TAS-IX), записанных в файле в формате 83.221.96.0/24 на каждой строке. Сервер: Debian 6 x86, интернет - через PPPoE подключение.

Вначале прописал правило

iptables -A POSTROUTING -t nat -o ppp0 -j MASQUERADE
интернет получили все, как и должно быть. Потом наваял скрипт:

IPTABLES=/sbin/iptables


ipset -N tasix nethash
IPFILE="tasix_subnets"

grep "^" $IPFILE | while read ip;
do
  if [ $ip <> NULL ]
      then `ipset -A tasix $ip`
  fi
done


$IPTABLES -N TAS-IX
# переводим всех на цепочку TAS-IX
$IPTABLES -A FORWARD -t filter -i eth0 -s 192.168.0.0/20 -j TAS-IX
# в этой цепочке возвращаем в цепочку FORWARD, если IP назначения не в зоне Tas-ix, и к ним будет применена политика по умолчанию
$IPTABLES -A TAS-IX -m set --set ! tasix src,dst -j RETURN
# задаю политику по умолчанию для FORWARD'a и tasix
$IPTABLES -P FORWARD DROP
$IPTABLES -P TAS-IX  DROP
#и дропаю всех, кто не попал под правило
$IPTABLES -A TAS-IX -j DROP
$IPTABLES -A FORWARD -j DROP

В результате, с других компов вообще перестал интернет работать. Может из-за последних двух строк? Но они же последние по вставке в список правил, хотя кто знает. Даже правило добавлял.

iptables -A FORWARD -s 192.168.0.1 -j ACCEPT
всё равно не пускал с этого ip в интернет. Сейчас доступа нет к серверу, но думаю, надо было в последнем правиле указать номер правила, чтобы пакеты проверялись на ip-источника, а потом уже дальше шли. Но вот с тем скриптом, намучался. Спасибо заранее за пожелания вкуривать маны, уже. С удовольствием выслушаю поправки/замечания.

 

leader32
()

[DHCP] Разные ip разным клиентам

Задача следующая: стоит сервер Debian 6, с настроенным dhcp-сервером, раздающим всякие адреса:и статические, и динамические. Нужно настроить(что именно?) систему так, чтобы она выдавала разные ip-диапазоны в зависимости от того, кто просит ip. Спрашивают в основном клиенты wifi, c wifi роутеров. На этих роутерах есть функция dhcp-relay. Думаю, она как-то поможет решить вопрос.

 

leader32
()

Виртуальные хосты в Debian 6

Вобщем, дело вот в чем:

Есть работающий сервак с Debian 6, раздает интернет всем, кто хочет. Пришла тут в голову мысль поднять на этом серваке виртуальные хосты простым добавлением строк в /etc/network/interfaces:

auto eth0:0
  iface eth0:0 inet static
  address 192.168.0.254
  netmask 255.255.255.0
  network 192.168.0.0
  dns-nameservers 192.168.1.254

ну и всё в таком духе. Штук 6 таких аналогичных записей добавил. Все маршруты через route add добавил. Результат - все эти айпи пингуются, с каждой подсети, на шару заходит, всё качает. НО! Пропадает интернет. Ни на каком компе не работает, даже на Дебиане. Но если дать команду

ping -I eth1 mail.ru <------ eth1 - интерфейс с выходом в инет
то всё проходит, айпи получает, пинг идет. Как только «опускаю все виртуальные интерфейсы ifdown'ом, всё опять работает, но те, новые IP, как и должно - не пингуются.

Что посоветуете? Как совместить общий доступ к Интернету и несколько IP на одной сетевой карте?

leader32
()

Kaspersky Rescue Disk - не стартует через PXE

Вобщем расклад: Стоит сервак с Debian 6 i386, на нем настроен DHCP. Когда стартует раб.станция, включаю загрузку по сети pxe boot rom. Отлично, получает ip, и грузится через уже настроенный tftpd-hpa. Загружается меню grub4dos. После выбора соответствующего пункта, в память мапится firadisk.gz, затем - сам образ KRD. После успешного маппинга, загружмет меню уже krd. Выбираю язык и графический режим. Загрузив драйвера и примонтировав, жалуется, что не найден cdroot с файлом livecd.

Смотрел в котне образа этот файл. Есть такой. Его же скопировал в корневой каталог tftp-сервера. И все равно жалуется. В чем дело?

leader32
()

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