LINUX.ORG.RU

Сообщения gich

 

sms уведомление о e-mail

Доброго времени суток всем!
Наверняка у многих возникает необходимость получить e-mail о отказе UPS или ином железном сбое на серваке. Есть ли какие-то внятные способы реализации этого?
Пробовал использовать «МегаФон Почта». Качество работы услуги просто потрясающее! К тому времени как дойдет письмо разрядится все что можно.
Хотелось бы не использовать оутглюк и прочие видоувз :-! решения.

gich
()

igmproxy multicast

Доброго дня.
Проблема: не запускается igmpproxy
Имеется роутер. на нем igmpproxy. multicast v1 и v2 build-in в ядро. Интерфейсы говорят RUNNING MULTICAST
Я ему говорю igmpproxy:
./igmpproxy -vd /etc/igmpproxy.conf
а он мне:
MC-Router API already in use; Errno(98): Address already in use
Собственно вопрос:
Как определить что за софтина не дает ему запустится? Как ее обнаружить. Попробовал прибить quagga, bgp, netflow, snmp. Без толку.

gich
()

tc хэш таблицы

Доброго дня всем! В общем, есть вот этот ман
http://m.habrahabr.ru/post/89002/
Соответственно схема сети:

192.168.2.35 - |eth1 192.168.2.1 <-> 192.168.0.2 eth0| - 192.168.0.1 -> internet

Между eth1 и eth0 стоит шейпер.

Делаю как показано в мане через хэш таблицы на download (относительно 192.168.2.35) - все работает.
Немного модифицирую для организации upload (относительно 192.168.2.35) - траффик идет по default классу. Сутки курил маны. Подскажите, где я не прав? Часть скрипта для upload:

#«Очищаем» интерфейс eht0
/sbin/tc qdisc del dev eth0 root handle 1: htb default 15
#Создаем заново дисциплину и указываем дефолтный класс
#15 класса пока нет - отдаем все что может интерфейс
/sbin/tc qdisc add dev eth0 root handle 1: htb default 15

#Создаем корневой фильтр
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32
#Создаем 4 хеш таблицы для каждого октета
/sbin/tc filter add dev eth0 parent 1:0 handle 10: protocol ip u32 divisor 256
/sbin/tc filter add dev eth0 parent 1:0 handle 11: protocol ip u32 divisor 256
/sbin/tc filter add dev eth0 parent 1:0 handle 12: protocol ip u32 divisor 256
/sbin/tc filter add dev eth0 parent 1:0 handle 13: protocol ip u32 divisor 256

#Создаем общий для клиентов класс
/sbin/tc class add dev eth0 parent 1: classid 1:1 htb rate 10Mbit ceil 10Mbit

#Создаем корневой класс клиента
/sbin/tc class add dev eth0 parent 1:1 classid 1:10 htb rate 512kbit ceil 512kbit

#Создаем 4 подкласса для каждого из видов трафика
/sbin/tc class add dev eth0 parent 1:10 classid 1:11 htb rate 1kbit ceil 512kbit prio 1


#Создаем дисциплины шейпирования для конечных классов
/sbin/tc qdisc add dev eth0 parent 1:11 handle 11: sfq perturb 10
#Создаем фильтр направлящий весь трафик в хеш таблицу с ID 10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 ht 801:: match ip src 0.0.0.0/0 hashkey mask 0xff000000 at 12 link 10:
#Добавляем правило в 10 хеш таблицу, если первый октет равен 192, то оправляем пакет в 11 хеш таблицу
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 ht 10:c0: match ip src 192.0.0.0/8 hashkey mask 0xff0000 at 12 link 11:
#Добавляем правило в 11 хеш таблицу, если второй октет равен 168, то оправляем пакет в 12 хеш таблицу
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 ht 11:a8: match ip src 192.168.0.0/16 hashkey mask 0xff00 at 12 link 12:
#Добавляем правило в 12 хеш таблицу, если третий октет равен 2, то оправляем пакет в 13 хеш таблицу
/sbin/tc filter add dev eth0 parent 1:0 protocol ip u32 ht 12:2: match ip src 192.168.2.0/24 hashkey mask 0xff at 12 link 13:

#Добавляем правила в 13 хеш таблицу, оцениваем 4 октет и направляем в необходимый класс, в зависимости от вида трафика

/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 4 u32 ht 13:23: match ip src 192.168.2.35/32 flowid 1:11

Если сменить eth0 на eth1, src на dst и стартовый байт at 12 на at 16 то получается скрипт на download. Он работает. Очень буду благодарен если подскажите, почему на выгрузку не работает

gich
()

tc шейпинг. Использование fw и u32 вместе.

Доброго дня всем!
Есть это:
/sbin/tc filter d dev eth1 parent 1:0 protocol ip prio 1 handle 10 fw flowid 1:100
И это:
/sbin/tc filter a dev eth1 parent 1:0 protocol ip prio 1 u32 ht 9:23: match ip dst 192.168.2.35/255.255.255.255 hashkey mask 0x0 at 16 flowid 1:100
По отдельности работает. А как это соединить между собой, чтобы в правиле фильтрации одновременно учитывались метки iptables и u32 селектор?

Фаервол метки делает:
[root@hoochine tc]# iptables -L -t mangle -vxn

8 480 MARK icmp — * eth1 0.0.0.0/0 0.0.0.0/0 length 28:1500 limit: avg 2/sec burst 5 MARK xset 0xa/0xffffffff

gich
()

Изменение внутри AWK перменных bash

Доброго времени суток всем! И так. есть примерно следующая задача:
Есть большой кусок кода написанный на awk, разбирающий mysql запрос.
Есть внутри awk кода переменная счетчик. Но ее вывод отконвертировать в 16ричный вид. Знает кто-нибудь как это сделать? Есть метод такой:
ASA1=1024;
awk'{
................
class_id=255;
class_id_hex=«'`echo »'$ASA1 16 o p" | dc`'";
................
}'
Само собой в таком виде внутри class_id_hex нормальное откновертированное значени. А как запихнуть внутрь конвертера вместо $ASA1 допустим, переменную счетчика class_id? Либо изменить $ASA1 внутри awk скрипта?

gich
()

tc шейпинг и преоритезация

Доброго времени суток! Есть такая задача: преоритезировать
общий трафик, уходящий в внешний канал. Преоритезация для каждой подсети
не делается, а используется правило шейпирования конечных классов sfq.
Подскажите пожалуйста, как это лучше организовать, если кто с этим
сталкивался. Схема того как мне видится этот процесс ниже. Там же правила tc.
Как можно организовать узел filter на схеме, или же есть какие-то
более простые варианты?

http://x.caver.ru/s.txt (схема тут)

tc qdisc del dev eth1 root 2> /dev/null > /dev/null
tc qdisc del dev eth1 ingress 2> /dev/null > /dev/null
tc qdisc add dev eth1 root handle 1: htb default 1:12
tc c a dev eth1 parent 1: classid 1:1 htb rate 20mbit burst 6k
tc class a dev eth1 parent 1:1 classid 1:2 htb rate 1024kbit 2048kbit burst 6k prio 1
tc class a dev eth1 parent 1:1 classid 1:3 htb rate 2048kbit 10mbit burst 6k prio 2
tc class a dev eth1 parent 1:1 classid 1:4 htb rate 2048kbit 18mbit burst 6k prio 3
tc class a dev eth1 parent 1:1 classid 1:5 htb rate 128kbit 18mbit burst 6k prio 4
tc class a dev eth1 parent 1:5 classid 1:10 htb rate 6000kbit ceil 18mbit
tc class a dev eth1 parent 1:5 classid 1:11 htb rate 6000kbit ceil 18mbit
tc class a dev eth1 parent 1:5 classid 1:12 htb rate 6000kbit ceil 18mbit
tc qdisc a dev eth1 parent 1:10 handle 10: sfq perturb 10
tc qdisc a dev eth1 parent 1:11 handle 11: sfq perturb 10
tc qdisc a dev eth1 parent 1:12 handle 12: sfq perturb 10
tc f a dev eth1 parent 1:0 protocol ip prio 10 u32 match ip dst 192.168.0.0/24 flowid 1:10
tc f a dev eth1 parent 1:0 protocol ip prio 10 u32 match ip dst 192.168.1.0/24 flowid 1:11
tc f a dev eth1 parent 1:0 protocol ip prio 10 u32 match ip dst 192.168.2.0/24 flowid 1:12

Возможно ли сделать, чтобы если на пример, по сети проходит пакет с
протоколом icmp он перебрасывался из 1:5 в 1:1 , или если порт 1723
происходил переброс из 1:5 в 1:2?

gich
()

Переключение между узлами в домене

Здравствуйте, возникла такая задача:

Как сделать, чтобы при отказе master сервера все соединения уходили на rezerv сервер, без каких-либо шаманских действий над DNS? А при восставновление master-a запросы снова шли бы на него.

Есть основной и резервный сервера. Резервы ведутся в реальном времени путем реплицирования баз данных и отслеживания изменений в ФС.

Имеется домен mydomain.net
и соответственно 2 IP адреса:
master 10.20.30.40
rezerv 10.20.30.50

Имеется конфиг bind вида:
$ttl 38400
mydomain.net.   IN   SOA   solitary.gov. admin.solitary.gov. (
         1240549863
         10800
         3600
         604800
         38400 )
mydomain.net.    IN   NS   solitary.gov.
mydomain.net.    IN   A   10.20.30.40
master.mydomain.net. IN   A   10.20.30.40
rezerv.mydomain.net.   IN   A   10.20.30.50

gich
()

mysqldump по маске

Собственно Всем известен mysqldump
Типа mysqldump dbase table > file.dmp
А ваот если надо таблицу дампить по маске, типа то что укладывается маску - в дамп - остальное не трогать. Известно ли как задать маску для таблицы?

gich
()

iptables и размер пакета

И так. tcpdump говорит что-то типа
10.218.72.91.263 > 10.4.33.60.263: UDP, length 1
10.218.72.91.263 > 10.4.33.60.263: UDP, length 1
10.218.72.91.263 > 10.4.33.60.263: UDP, length 1
И так непрерывно.
Если более подробнее -
IP (tos 0x0, ttl 117, id 7024, offset 0, flags [none], proto UDP (17), length 29) 10.218.72.91.263.263 > 10.4.33.60.263: UDP, length 1
IP (tos 0x0, ttl 117, id 7025, offset 0, flags [none], proto UDP (17), length 29) 10.218.72.91.263.263 > 10.4.33.60.263: UDP, length 1
IP (tos 0x0, ttl 117, id 7026, offset 0, flags [none], proto UDP (17), length 29) 10.218.72.91.263.263 > 10.4.33.60.263: UDP, length 1

Рабочий размер пакета не может быть менее 50 байт
Пытаюсь загасить это через iptables в соответствующей цепочке, куда проваливаются входящие пакеты по 263 порту так:
-A dttserv -m length --length 0:30 -j DROP

Не отрезает в итоге. Пакет доходит до соответствующей службы. Заблокировать этот адрес я не могу по ряду причин. Нужно как-то отфильтровать пакет по его размеру - от 0 до 30 - отбросить. Больше - принять. Сейчас все принимает в итоге. Подскажите, в чем я не прав, почему не отбрасывает мелкие пакеты?

gich
()

pptp vpn client автоматическое восстановление соединения

Доброго времени суток всем! Подскажите, как заставить pptp vpn client автоматически восстановливать соединение при обрыве связи? persist в конце конфига не помогает. Тоннель используется для подключения к провайдеру.

gich
()

Postfix и подделка имен.

Здравствуйте. Вот такой вопрос:
Мой адрес mydmain.ru
Приходит спамовое письмо:
Кому: mydmain.ru
От кого: mydmain.ru

Само собой в "От кого: mydmain.ru" имя домена поддельное. Как заставить постфикс проверять, соответствует ли имя домена отправителя его IP адрему? Это вот так делается?
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_non_fqdn_recipient, reject_unknown_recipient_domain

gich
()

Postfix на НЕ локальном сервере. Отправка почты от недоверенных сетей

И так, приветствую всех.

1) Ситуция:
Сервак стоит в датацентре. Он должен принимать почту по SMTP от почтовых клиентов типа оутлука и the bat. С возможностью отврпаки допустим на mail.ru yandex.ru и прочие.

2) Проблема:
Постфикс отправляет только в пределах своего домена. Как ему разрешить отправлять почту кроме как к себе? Допустим домекн привязанный к машине mydomain.ru, по нему почта из оутлука ходит, а как разрешить отправку на yandex.ru и прочие? Мне the bat пишет error 5.7.1 relay access deny
Если в mynetworks = 0.0.0.0/0 то это открытый релэй. Как сделать чтобы авторизация была?


Собственно всюду в нете есть статьи о настройке постфикса как почтовика корпоративной сетки, который принемает почту от 127. или 192.168.0. и ТП. Но случай то не тот.

Ниже конфиг.

queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
mail_owner = postfix

unknown_local_recipient_reject_code = 550
mynetworks = 127.0.0.0/8
debug_peer_level = 2
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
ddd $daemon_directory/$process_name $process_id & sleep 5

sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/local/man
sample_directory = /etc/postfix
readme_directory = no

>>>

gich
()

pptpd VPN. Не видно виндовских рабочих групп.

И так. Здравствуйте.
Такая проблема. Есть сервер линуксовый 192.168.0.1 и сеть 192.168.0.0/24. В этой сети виндовые машины. У сервера внешний интерфейс в 10.0.2.14

Есть удаленный клиент виндовый 10.1.4.112
Удаленный виндовый клиент соединяются по VPN с сервером 10.0.2.14, все нормально, ему присваивается IP 192.168.0.20. От удаленного клиента сервер пингуется, инет работает, web страницы сервера с клиента открываются.

НО! ВОТ В ЧЕМ ТРАБЛ: тот комп, который подключился по VPN не видит виндовые компы и их рабочие группы. Хотя сами они пингуются от него.
Делаю следующее за клиентом пуск - поиск - компьютеры. Там Linserv (netbios name сервера), его находит. Далее нормально захожу, вижу папки, все нормально. Нажмиаю "наверх" вижу компы рабочей группы. Но ни в один не войти. Из этой сетки, приджонивший по VPN комп тоже не видно, хотя он прекрасно из нее пингуется. Подскажите, что делать?

Конфиги ниже. В логах ничего подозрительного

--------------------------------------------
/etc/pptpd.conf
========================
option /etc/ppp/options.pptpd
logwtmp
localip 192.168.0.1
remoteip 192.168.0.20-30
speed 1048576

-----------------------------------------
/etc/ppp/options.pptpd
========================
name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 192.168.0.1
ms-wins 192.168.0.1
nobsdcomp
novj
novjccomp
nodeflate
nologfd
mtu 16384
mru 16384
auth
login
proxyarp

>>>

gich
()

Postfix и smtp

Здравствуйте. До сего момента с постфиксом особо не приходилось возится. Сменили ось, старый etc сохранил, из него вытащил etc/postfix. Но на новой оси не все пошло. При отправке писем через башмак, на адрес не относящийся к тем для которых postfix принемает почту получается 5.7.1 relay access deny

Подскажите, как заново настроить SMTP, или куда пнуть существующую конфигурацию, конффайло могу выложить.

>>>

gich
()

Хитрость с шлюзом

И так.
Что на настроящий момент есть:
0) Машина под линями.
1) Сетевой интерфейс eth0. Он идет к провайдеру. Адрес этого интерфейса 10.0.3.6. Шлюз у провайдера - 10.0.3.7
2) Сетевой интерфейс eth1. Идет на локалку 192.168.0.0/24 адрес этого интерфейса 192.168.0.1
3) Default getway обозначен 10.0.3.7
4) в iptables добавнена NAT источника в POSTROUTING

На машинах в локалке в качестве шлюза обозначен адрес 10.0.3.7
Результат: из локалки инет пашет, все пучком.

ВОПРОС:
Как сделать чтобы на машинах в локалке указывать не 10.0.3.7 - шлюз провайдера, а 192.168.0.1 ?

>>>

gich
()

Маршрутизация

Здравстувуйте. Такая проблема: Есть линуксовский комп, в котором 2 интерфейса. iptables присутствует. Правил пока никаких. На eth1 висит 192.168.0.1 Локалка. 192.168.0.0/24 На eth0 Bыход в инет. Адрес этого формируется DHCP сервера провайдера.

Нужно настриоть роутинг. Что было сделано: 1) ipforwarding=1 2) Destination default Route назначен eth0 3) Destination 192.168.0.0 Getway none Маска 255.255.255.0 интерфейс eth0

С линуксового компа пингуется и внутренняя сетка и инет.

Из локалки пингуется сервер, но в инет не выйти.

Подскажите, в чем я не прав и что нужно переделать? Пердполагаю, что с маскарадом что-то надо натварить?

>>>

gich
()

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