LINUX.ORG.RU

Сообщения BusTeR

 

iptables. Фильтрация трафика по регионам

Привет всем!
Есть задача - предоставить доступ к серверу только для адресов из, к примеру, Украины.
У меня есть список агрегированных украинских сетей.
Как мне эффективней сделать?
Я могу добавить 2500 правил с каждой сетью в iptables и там проверять пакеты на принадлежность к этим сетям.
Могу собрать модуль geoip для iptables.

Что в данном случае эффективнее в плане производительности системы?

BusTeR ()

Ищу удаленную работу. Администратор Linux

Ищу удаленную (с возможным последующим перееездом) работу администратора Linux.
Навыки:
Установка/настройка системы, сетевых сервисов (DHCP, DNS, SNMP, RADIUS и т.д.), управление потоком трафика (разработал мини-биллинговую систему), виртуализация (KVM), bash-scripting.

Построение безопасных VPN соединений, корпоративных сетей. (ipsec, openvpn)

Углублённое знание Apache, Postfix.

Построение Firewall (iptables), базовая защита от DDOS, системы обнаружения вторжений (SNORT), средства мониторинга за серверами (Nagios,cacti).

Выделенные линии, беспроводные технологии (Wi-Fi)

Проектирование и настройка средств IP-телефонии (Asterisk).

Программирование (Perl/CGI, PHP).

Администрирование баз данных (MySQL, PostgreSQL)

Английский (относительно свободно), украинский (свободно).

Наличие сертификатов «Администратор Linux», «Программирование на PHP», «Perl Developer», «Linux Administration (RHEL 5)»

Рассмотрю любые предложения.
Для связи: suppa_buster@mail.ru, icq: 46382949.

Территориально нахожусь в г. Луганск/Украина..

BusTeR ()

ipsec и динамические IP

Привет всем!
Есть Ubuntu, ipsec-tools и racoon.
Задача: построить тоннель между этим сервером и удаленным клиентом, не зная IP адреса клиента без использования сертификатов.
Возможно ли с помощью psk авторизовать пользователей, не зная с какого места это пользователь будет подключаться и через какого провайдера?

BusTeR ()

KVM и роутинг сетевого трафика

Привет всем!
Есть сервак с eth0 - 10.0.0.100 и eth1 - реальный inet адрес, выданный провайдером.
Есть выход в интернет и через шлюз на eth0 и через шлюз на eth1.

Задача: Отроутить реальный адрес в виртуальную машину.
Адрес у меня всего один. Если я подниму бридж, то мне же нужно будет 2 адреса хотя бы?

Правильно ли будет поднять бридж br0 для eth0 с адресом 10.0.0.100, а в ВМ eth0 с адресом 10.0.0.200 смотрящим в этот бридж? А на хосте средствами DNAT весь трафик, приходящий на eth1 перенаправлять на 10.0.0.200?
Меня интересует весь сетефой трафик, не только www.

BusTeR ()

оптимизация KVM

Привет всем!
Имеем следующий сервак:
1. Intel(R) Xeon(R) CPU X3330 @ 2.66GHz
2. MemTotal: 8192444 kB
3. 2x HDD SATA2 500 Gb.
Система: Ubuntu 10.04.

Прямая задача сервера - хранить базу (MySQL) и через вэб-интерфейс (apache) выдавать пользователю результаты запросов.
Запросы есть комплексные, которые обрабатываются на этом серваке около 40 секунд (в данный момент не идет речь об оптимизации запроса, просто 40 секунд и всё).

Имея в распоряжении такую конфигурацию сервера и более 70% его простоя я решил поднять на нем ещё несколько виртуальных машин.

Поставил KVM, настроил бридж. По соображением безопасности решил перенести основной вэб-сервер с базой с хост-системы на виртуальную машину, а основной хост-сервер оставить только с sshd.

В общем те же самые настройки mysql и apache2, те же самые запросы на виртуальной машине и на хост машине выполняются с очень большой разницей во времени. Памяти я выделял на хост машину 4Гб.
Запрос, который на хосте выполняется за 40 секунд на виртуалке выполняется за 101 сек.

Добавил в конфиг виртуалки:
<driver name='qemu' type='raw' cache='none'/>
Тобишь отключил кэш (как рекомендуют в большинстве мануалов по тюнингу файловой системы в VM), но вместо этого запрос стал выполняться на 5 секунд дольше.
Пробовал добавить к строке инициализации ядра elevator=noop, также прописанный в мануалах по тюнингу, но никаках изменений.

Читал ещё про перенос вирт. диска на LVM, но пока ничего не переносил. Даст ли это существенной прирост в производительности?
Результаты dbench различаются по производительности в 2 раза.

Есть ли какие-то варианты по увеличению производительности кроме установки базы с сервером на хост, а все остальные сервисы (которые мне нужны) на виртуалки?
Заранее спасибо!

BusTeR ()

KVM и Software RAID 1

Привет всем!

Есть такая конфигурация сервака:
1. Intel(R) Xeon(R) CPU X3330 @ 2.66GHz
2. MemTotal: 8192444 kB
3. 2x HDD SATA2 500 Gb.

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

Подскажите, не сильно ли влияет на производительность программный RAID, который зеркалит инфу с одного диска на другой?

Не будут ли меша виртуальные сервера основному web-серверу и серверу MySQL.

BusTeR ()

Разрешение в консоли

Привет всем!
Такая идиотическая проблема. ubuntu-11.04, монитор TFT 17" с родным разрешением 1280х1024.
Сразу после установки системы, при загрузке меню grub2 с выбором вариантов загрузки ядра или запуском мемтеста, изображение выводится в нормальном разрешении (1280х1024), всё видно. После этого после загрузки ядра, по идее, когда должно появиться приглашение с логином, моник меняет разрешение и пишет «Out of range 47hz».
Прописал:
/etc/default/grub: GRUB_GFXMODE=800x600
/etc/grub.d/00_header: set gfxpayload=800x600x8 (сразу после set gfxmode=${GRUB_GFXMODE})

После этого всего сделал update-grub, чтобы перегенерить конф.
Не помогает ничего.
Пробовал прямо в командной строке grub прописывать разрешение - то же самое.
Кто сталкивался с таким?

P.S. по ссх все работает. Может вообще отключить графический режим? Иксов у меня нет и не будет.

BusTeR ()

Ошибки типа ata2.00: hard resetting link

Привет всем!
Система: Ubuntu 10.04.3 LTS
2 HDD Seagate Barracuda 7200 RPM, 500 Gb, объединенных в software RAID 1.
Постоянно в лог сыпятся такие сообщения:

root@spring:/# dmesg | tail -n 30
[145178.015598] ata2.00: status: { DRDY }
[145178.026491] ata2.00: hard resetting link
[145178.370014] ata2.01: hard resetting link
[145183.920009] ata2.00: link is slow to respond, please be patient (ready=0)
[145188.060008] ata2.00: SRST failed (errno=-16)
[145188.070728] ata2.00: hard resetting link
[145188.420013] ata2.01: hard resetting link
[145193.970009] ata2.00: link is slow to respond, please be patient (ready=0)
[145196.430054] ata2.00: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[145196.430065] ata2.01: SATA link down (SStatus 0 SControl 300)
[145196.490420] ata2.00: configured for UDMA/33
[145196.490426] ata2.00: device reported invalid CHS sector 0
[145196.490434] ata2: EH complete
[145425.950035] ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
[145425.960857] ata2.00: failed command: WRITE DMA EXT
[145425.971626] ata2.00: cmd 35/00:08:c0:4b:38/00:00:3a:00:00/e0 tag 0 dma 4096 out
[145425.971627] res 40/00:01:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[145426.015105] ata2.00: status: { DRDY }
[145426.025929] ata2.00: hard resetting link
[145426.370014] ata2.01: hard resetting link
[145431.920009] ata2.00: link is slow to respond, please be patient (ready=0)
[145436.060011] ata2.00: SRST failed (errno=-16)
[145436.070644] ata2.00: hard resetting link
[145436.420013] ata2.01: hard resetting link
[145441.970009] ata2.00: link is slow to respond, please be patient (ready=0)
[145444.670050] ata2.00: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[145444.670061] ata2.01: SATA link down (SStatus 0 SControl 300)
[145444.730404] ata2.00: configured for UDMA/33
[145444.730410] ata2.00: device reported invalid CHS


Винты нормальные, почти новые. Тест поверхности никаких сбоев не показал. Файловая система ext4.

Что это может быть? Шлейфы дергал, менял.

Проявляются проблемы в тормозах при файловых операциях, таких как, к примеру, mysqldump или OPTIMIZE TABLE xxx в MYSQL.

BusTeR ()

Опять шейпинг трафика

Привет всем! Случайно нажал ctrl+enter. Проблема такая. Имеем следующую конфигурацию: Linux - сервер с двумя сетевыми платами: eth0 - внутренняя сеть, eth1 - провайдер. Задача: ограничить входящзий и исходящий трафик. Насколько я знаю, то мы можем ограничивать только исходящий трафик без использования ifb устройств.

Делаем: /sbin/tc qdisc add dev eth0 root handle 1: htb default 900 /sbin/tc class add dev eth0 parent 1: classid 1:1 htb rate 100Mbit burst 15k /sbin/tc class add dev eth0 parent 1:1 classid 1:100 htb rate 2Mbit burst 15k /sbin/tc class add dev eth0 parent 1:1 classid 1:200 htb rate 512Kbit burst 15k #tc class add dev eth0 parent 1:1 classid 1:900 htb rate 128kbit burst 15k /sbin/tc class add dev eth0 parent 1:200 classid 1:201 htb rate 1Mbit ceil 2Mbit /sbin/tc filter add dev eth0 protocol ip parent 1: u32 match ip src 192.168.10.20 flowid 1:201

Тем самым пытаясь ограничить исходящий от пользователей из локальной сети трафик, но он не ограничивается, без поднятия устройства ifb и редиректа всего трафика на него, но при такой конфигурации, при изменении фильтра на dst 192.168.10.20 отлично ограничивается входящий трафик.

Вопрос: Я чего-то не понимаю? или смотрб не с той стороны на интерфейс?

BusTeR ()

2 реальных IP из разных сетей

Привет всем!
Подскажи плиз такую вещь.
Есть сервер с тремя интерфейсами:
eth0 - LAN (локалка для пользователей)
eth1 - первый провайдер
eth2 - второй провайдер.

Этот сервер выполняет функции шлюза.

Есть второй сервер, к которому был доступ только из сети LAN.

Второй провайдер выделил ещё один реальный IP адрес для второго сервера.
В итоге у меня 2 сети /30 для разных сервером с двумя разными шлюзами этого провайдера.

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

Можно ли, при такой конфигурации, зарулить весь траф на первый сервер, там фильтровать трафик и уже затем отправлять его на второй сервер?

BusTeR ()

Системы обнаружения вторжений

Привет всем!
Такой вопрос.
Есть сервер. В нем 3 интерфейса:
1. eth0 - LAN (юзера из локалки, которые пользубтся интернетом через NAT)
2. eth1 - провайдер 1
3. eth2 - интерфейс, через который по pppoe поднимается ppp0 второго провайдера.

Есть iptables с политикой DROP по всем цепочкам.
Разрешены только определенные адреса и порты.
На этом сервере в мир открыты только 2 сервиса: ssh и openvpn.

Стоит ли использовать какие-либо системы обнаружения вторжений либо ставиить какой-либо софт по обнаружению сканирования портов.

У всех мнения расходятся. Кто говорит, что если стоит фаервол с политикой по умолчанию дроп - то не нужно заморачиваться с такими системами.

Если нужно - то посоветуйте пожалуйста систему.
На данный момент поставил snort...настроил....не не вижу особого смысла пока использования её.

Спасибо!

BusTeR ()

mc и подсветка директорий

Привет всем!
Кто-нибудь знает как включить подсветку директорий и файлов в midnight commander?
Дело в том, что всю жизню использовал altlinux и centos, а сейчас поставил ubuntu, а там по умолчанию подсветки нет. В консоли файлы подсвечиваются (ls).
Спасибо!

BusTeR ()

Трафик Шейпинг

Привет всем!
Запутался я совсем.
Есть сервак.ALTLinux Server 4.0. в нем 3 интерфейса:
1. eth0 - сеть 10.0.0.0/24 (сюда входят все клиенты)
2. eth1 - Провайдер 1 (предоставляет 5/5 Мбит)
3. eth2 - Провайдер 2. (Хост интерфейс, на котором поднимается pppoe сессия. 12/1 Мбит.)

На данный момент все клиенты ходят через один канал через NAT.
Далее клиенты будут рулиться по разным каналам примитивно по ip rule add from...

Задачи:
1. Ограничить клиентам трафик до 512/512Kbit
2. Ограничить админам трафик до 12/12Mbit
3. Ограничить локальный трафик от сервера (и к серверу) до 100Mbit.
4. Приоритезировать трафик.

Реализация:
Мною принято решение ограничивать весь траф на интерфейсе пользователей, т.е. eth0.

#!/bin/bash

TC=/sbin/tc
DEV=eth0

# Очистка
$TC qdisc del dev $DEV root

# создаем базовую дисциплину и указываем, что неопознанный траф. посылать в 980й класс.
$TC qdisc add dev $DEV root handle 1: htb default 980
# создаем основной класс, равный пропускной способности интерфейса eth0
$TC class add dev $DEV parent 1: classid 1:1 htb rate 100Mbit ceil 100Mbit
# делаем класс для локальных ресурсов
$TC class add dev $DEV parent 1:1 classid 1:100 htb rate 50Mbit ceil 50Mbit
# класс, равные пропуской способности канала первого провайдера. DOWNLOAD
$TC class add dev $DEV parent 1:1 classid 1:200 htb rate 11Mbit ceil 11Mbit
# класс, равные пропуской способности канала первого провайдера. UPLOAD
$TC class add dev $DEV parent 1:1 classid 1:300 htb rate 900Kbit ceil 900Kbit
# класс, равные пропуской способности канала второго провайдера. DOWNLOAD
$TC class add dev $DEV parent 1:1 classid 1:400 htb rate 5Mbit ceil 5Mbit
# класс, равные пропуской способности канала второго провайдера. DOWNLOAD
$TC class add dev $DEV parent 1:1 classid 1:500 htb rate 5Mbit ceil 5Mbit
# весь неопознанный трафик будет послан именно в этот класс
$TC class add dev $DEV parent 1:1 classid 1:980 htb rate 128kbit ceil 128kbit
# создаем дисциплины для классов локального трафика и дефолтного. (Sfq - делим общую пропускную способность на всех, кто участвует)
$TC qdisc add dev $DEV parent 1:100 handle 100: sfq
$TC qdisc add dev $DEV parent 1:980 handle 980: sfq


## BusTeR 10.0.0.130 DOWNLOAD
IP_BUSTER=«10.0.0.130»
RATE_BUSTER=«512kbit»
CEIL_BUSTER=«3Mbit»
##########################################################################################
# создаем основной класс для клиента, который берёт bandwidth от класса 400 (класс DOWNLOAD второго провайдера, который равен 5Mbit) и задаем скорость для клиента
$TC class add dev $DEV parent 1:400 classid 1:410 htb rate $RATE_BUSTER ceil $CEIL_BUSTER

# PRIO
# создаем классы для приоритезации трафика
# prio 1 icmp
# prio 2 udp
# prio 3 tcp из инета от 80х портов
# prio 4 весь остальной трафик
$TC class add dev $DEV parent 1:410 classid 1:411 htb rate 1kbit ceil $CEIL_BUSTER prio 1
$TC class add dev $DEV parent 1:410 classid 1:412 htb rate 1kbit ceil $CEIL_BUSTER prio 2
$TC class add dev $DEV parent 1:410 classid 1:413 htb rate 1kbit ceil $CEIL_BUSTER prio 3
$TC class add dev $DEV parent 1:410 classid 1:414 htb rate 1kbit ceil $CEIL_BUSTER prio 4
# QDISC
# создаем дисциплины (не знаю зачем, но в мануалах нашел)
$TC qdisc add dev $DEV parent 1:411 handle 411: sfq
$TC qdisc add dev $DEV parent 1:412 handle 412: sfq
$TC qdisc add dev $DEV parent 1:413 handle 413: sfq
$TC qdisc add dev $DEV parent 1:414 handle 414: sfq

#фильтры
#локальный трафик (здесь только ssh (scp))
$TC filter add dev $DEV parent 1:0 protocol ip u32 match ip protocol 6 0xff match ip sport 22 0xff flowid 1:100
$TC filter add dev $DEV parent 1:0 protocol ip u32 match ip protocol 6 0xff match ip dport 22 0xff flowid 1:100

#разбрасываем трафик по приорителтам и по классам
$TC filter add dev $DEV parent 1:0 protocol ip prio 1 u32 match ip dst $IP_BUSTER \
match ip protocol 1 0xff flowid 1:411

$TC filter add dev $DEV parent 1:0 protocol ip prio 2 u32 match ip dst $IP_BUSTER \
match ip protocol 17 0xff flowid 1:412
$TC filter add dev $DEV parent 1:0 protocol ip prio 3 u32 match ip dst $IP_BUSTER \
match ip protocol 6 0xff match ip sport 80 0xffff flowid 4:413
$TC filter add dev $DEV parent 1:0 protocol ip prio 4 u32 match ip dst $IP_BUSTER flowid 1:414


Все. Сконфигурировали. Запустили скрипт.
Да, действительно скорость закачки регулируется.
НО!
Скорость локального трафика, в данном случае скорость закачки по scp - остается на минимуме. Почему? не могу понять? Если добавить ssh в prio 1, тогда проблем нет с этим протоколом и скоростью, но не отрабатывается следующий фильтр на prio 1.

Что я делаю не так и как грамотно ограничить юзерам скорость, без зажимания локального трафика?

Резать скорость на исходящих интерфейсах?
eth1 и ppp1 ?

Как сделать это всё грамотней?

BusTeR ()

потери в локалке

Привет всем!
Есть сервер Ubuntu Server 9.10. К нему через eth2 по PPPoE подключен инет от кабельного провайдера.
Поднимается сессия. ПРобую пинговать ya.ru - пингуется без потерь....с рабочих станций в сети 192.168.2.0/24 пингуется то же самое с потерями 10-12%.
До самого сервера потерь нет.
На серваке работает маскарадинг для всей сети 192.168.2.0/24.
Никаких шейперов не установлено.

Никакого тюнинга ОС не было.
Я специфику Убунты не знаю, я вообще первый раз столкнулся с данным дистром. Может есть какие-то нюансы?

BusTeR ()

Замена почте

Привет всем! Сейчас в нашей организации общение между филиалами происходит по жлектронной почте...весь документооборот тоже... Хотелось бы заменить это всё на вэб-интерфейс... Может есть какие-нибудь уже готовые простые системы для обмена корреспонденцией и файлами (php,perl). Спасибо!

BusTeR ()

роутинг

Товарищи!
Подскажите плиз такую тему...
Есть сеть: http://img694.imageshack.us/img694/3457/tables.jpg

Роутер, куда подключено 2 интерфейса ppp0 & ppp1. eth0 - 10.0.0.1
И Шлюз для пользователей сети 10.0.0.0/24 с eth0 10.0.0.2.

Всё это , включая клиентов подключены в общий свитч.
У клиентов прописан шлюз 10.0.0.2.

Мне нужно как-то идентифицировать трафик клиентов, чтобы маршрутизировать пакеты по разным таблицам.
Когда шлюзом установлен 10.0.0.1 то проблем нет...iptable -t mangle -A PREROUTING --dport 25 -j MARK --set-mark 1
ip rule add fwmark 1 table t1

Но по тех. причинам нужно сделать шлюзом 10.0.0.2.
Как мне идентифицировать траф?

BusTeR ()

apache2 + mod_рhp5

Привет всем!
Может кто-нибудь сталкивался с такой проблемой.
Стоит ALT Linux 4 server.
[root@spring conf]# rpm -qa | grep apache2
apache2-common-2.2.6-alt2
apache2-2.2.6-alt2
apache2-mod_ssl-2.2.6-alt2
apache2-mod_php5-5.2.2-alt1
apache2-httpd-worker-2.2.6-alt2
apache2-manual-2.2.6-alt2
apache2-devel-2.2.6-alt2

[root@spring conf]# rpm -qa | grep php
php-base-2.2-alt1
php5-libs-5.2.2-alt1
php5-5.2.2-alt1
php5-curl-5.2.2-alt1
php5-dom-5.2.2-alt1
php5-mbstring-5.2.2-alt1
php5-mysqli-5.2.2-alt1
php5-rrdtool-5.2.2-alt1
php5-zip-5.2.2-alt1
apache2-mod_php5-5.2.2-alt1
php5-suhosin-0.9.19-alt1
php5-calendar-5.2.2-alt1
php5-dba-5.2.2-alt1.1
php5-exif-5.2.2-alt1
php5-gd2-5.2.2-alt1
php5-mysql-5.2.2-alt1
php5-openssl-5.2.2-alt1
php5-simplexml-5.2.2-alt1

При попытке стартовать apache...он вываливается и пишет:
[root@spring conf]# /etc/init.d/httpd2 start
\Starting httpd2 service: [Thu Nov 19 19:02:23 2009] [crit] Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP.
Pre-configuration failed



Есть ли какие-нибудь варианты без пересбора php вручную?

BusTeR ()

проблемы с PPPoE

Привет всем!

Имею след. конфы в etcnet:

[root@localhost ~]# cat /etc/net/ifaces/ppp0/options
ONBOOT=yes
PPPTYPE=pppoe
HOST=eth2
PPPOE_EXTRA_OPTIONS="-T 80"
PPPPERSIST=on
PPPMAXFAIL=0

[root@localhost ~]# cat /etc/net/ifaces/ppp0/pppoptions
noipdefault
noauth
default-asyncmap
defaultroute
hide-password
mtu 1492
mru 1492
noaccomp
noccp
nobsdcomp
nodeflate
nopcomp
novj
novjccomp
user USER
password PASS
lcp-echo-interval 20
lcp-echo-failure 3

Интерфейс поднимается, но при обрыве связи он не респаунится.
Как мне сделать, чтобы интерфейс при обрыве - заново подключался?
Нашёл в доках такую фразу:

"Побочным положительным эффектом будет то, что этот интерфейс будет при необходимости
автоматически подниматься (см. ##FTN requires##)."

Но никакой информации по этому параметру я не нашёл.
Что можно сделать?

BusTeR ()

iptables ftp

Привет всем!

Что-то я совсем уже запутался.
Сижу 2 дня не могу придумать как грамотно выпустить клиентов на
внешний фтп-сервер...
открываю 20 и 21 порт...что-то не чильно работает.

НЕ затруднит ли кого-нить скинуть пару строчек из вашего iptables
для доступа на внешний фтп для активного и пассивного соединения...

Сенкс!

BusTeR ()

Несколько PPPoE на одном сервере

Привет всем!
Подскажите пожалуйста иожно ли стандартными способами, без написания собственных скриптов запустить несколько ПППлЕ сессии(2 шт) от разных провайдеров на одноом сервере?
AltLinux Server 4, rp-pppoe.
Спасибо.

BusTeR ()

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