Страницы

понедельник, 28 апреля 2008 г.

Pci sata Controller

Появилась задача: На сервер в котором отсутствует поддержка sata(нет на материнке таких портов), установить sata hdd.
Ну соответственно был приобретен sata контроллер на чипе sil3512 фирмы Silicon Images.
После его установке в материнку сервака и запуска оного, по команде lspci с радостью было обнаружен что новый контроллер в системе виден....но....винчестер к сожалению видно не было.
Порыскав по форумам почитал что вроде как контроллеры этой фирмы самые труъ для линукса и поддержка у них самая полная. Обрадовавшись, начал искать какой-же модль подгрузить чтобы наконец-то получить доступ к желанному винчестеру. Не тут-то было, нужного модуля я не обнаружил. Покопавшись в конфиге ядра, с удивлением отметил что все необходимые опции включены. На всякий случай пересобрал ядро. Однако с мертвой точки дело не сдвинулось. Мало того, что нужные мне модули не были найдены системой, так они еще и вообще отсутствовали как файлы.
Я обнаружил сорцы этих модулей в исходниках ядра, но в /lib/modules.... я их не нашел, глобальный поиск по винчестеру тоже ничего не дал.
Покопавшись в инете наткнулся на описание в котором предлагалось доавить в конфиг загрузчика следущие опции : acpi=off irqpoll ide=nodma
Ну чтож будем пробовать.
Мда...с этими опциями сервер вообще н грузится, виснет на соощениях про irq.
Данный контроллер был опробован под ubuntu 7.10; knoppix 5.0; slackware 12 и нигде он нормально не заработал lspci показывало что он вставлен в pci слот, но как устройство он так и не определился, пересборка ядра и включение опций Silicon SATA Support и подобных ничего не дало.
Контроллер будет возвращен обратно в магазин. И похоже sata винчестер придется обменивать на ide. Увы...

пятница, 18 апреля 2008 г.

Всемирный День Радиолюбителя

Ну вот и на нашей улице праздник. 18 апреля - всемирный день радиолюбителя.
Принимаю поздравления :)
Вообще праздник это специфичный и например на mail.ru в разделе открыток к праздникам, я его не нашел. Ну ничего, все кто надо меня уже поздравил, потому что сказал им об этом заранее :)
От себя же поздравлю всех коллег по этому замечательному и увлекательному хобби, пусть у вас будет поболше свободного времени чтобы заниматься нашим общим любимым делом, побольше DX-ов, конечно же крепкого здоровья, и 73!

четверг, 17 апреля 2008 г.

Самба

Сижу компилю самбу...3.0.28 новая которая.
Вообще конечно не очень люблю обновлять софт, ибо оно муторно и все такое, по мне так работает и ладно, сломается починим. Ну а тут народ кричит обновляй, там много дыр закрыли, ну хочешь не хочешь а приходится. Спасибо тому кто придумал слакбилды(видимо Патрику...), а то сидеть самомоу прописывать все параметры в configure меня не вдохновляет. Я вообще человек ленивый и вдохновить меня чем-либо очень сложно(но можно!). Хм..может пока я добрый еще чего-нибудь обновить, только не знаю чего, помню как-то решил обновить glibc...пришлось переустанавливать систему...ну это было давно...вообще конечно плохо что в Slackware нет автоматического удовлетворения зависимостей. Хотя скажу честно по началу меня это даже забавляло, типа я крутой, я и сам смогу вручную все удовлетворить. По прошествии некоторого времени я понял одну простую истину: если система что-то может сделать за тебя - пусть делает. Ибо нам самим лень.Вооот...наверно поэтому я сейчас сижу под кубунту и пишу вот это все. Тут слава богу зависимости автоматом разрешаются.До этого пробовал дебиан - круто, но там многое надо доделывать напильником, видимо со времен слаки я столько напилился этим напильником что теперь уже всякая охота пропала. Хочется дистрибутив, который установил и можешь сразу работать. Не скажу что кубунта соответствует этому на все 100, тут все равно пришлось кой-чего доработать, но по сравнению со слакой или дебианом, это ничтожно мало.
Ну вот самба скомпилилась, пойду ставить.

воскресенье, 13 апреля 2008 г.

Cq Cq Cq.....

Кроме компьютеров и локальных сетей есть у меня еще одно замечательное хобби: Радиолюбительство
Люблю я в общем собирать, конструировать различную радиоэлектронную аппаратуру. Но больше всего люблю собирать приемники и передатчики. Усилители и многоголосные звонки это конечно хорошо, но мне кажется, что нет ничего лучше когда устройство бывшее когда-то грудой деталей начинает работать и ты слышишь из наушников или динамика звуки радиостанций. Возникает ни с чем не сравнимое чувство...
Кроме конструирования я так же увлекаюсь любительской радиовязью. Подробнее об этом можно почитать на замечательном сайте www.qso.ru
Если кому интересно мой позывной RA9MLR
В данный момент работаю в основном на 144МГц, на кв тоже есть аппарат, но он пока находится в состоянии отладки, на прием работает, но вот стабильность ГПД никакая, да и кварцевый фильтр неплохобы подстроить, в общем работы хватает.
Антенное хозяйство тоже незамысловатое: на КВ диполь, на УКВ 5 элементов на 144МГц.
Фотки всего этого добра обязательно выложу...если не забуду.
А пока все....have fun :)

Случилось мне как-то стать админом в домашней сетке

Случилось мне как-то стать админом в домашней сетке :)
Сетка наша состоит из 4-х сегментов. Ничего кроме обыкновенных неуправляемых свитчей у нас нет, а вирусы/хакеры/броадкаст и прочая ерунда уже начинают доставать. Благо интернет у нас в сегменте уже появился, и вот одной из бессоных летних ночей набрел я на инфу, которая гласила, что для решения нашей проблемы нужен фильтрующий мост.
В двух словах это комп с 2-мя сетевухами, к одной подключен наш сегмент, а к другой остальная сеть, и мост фильтрует трафик на предмет броадкаста, смены айпи и прочего.
Буквально на следущее утро был найден P2 533MHz 64RAM 1.5Gb HDD. На него был установлен мой любимый Slackware, на тот момент 11 версии. Для реализации задумки необходимы были следущие пакеты:
Первые два уже были установлены вместе с дистрибутивом, а последний пришлось ставить с исходников.
Понемногу обо всех пакетах: ну iptables в представлении не нуждается, а вот bridge-utils как раз таки и является ключевым звеном в мосте, так как именно он реализует виртуальный мост между интерфейсами. Пакет с немного неблагозвучным для русского человека названием :) ebtables служит для той же цели что и iptables, но только работает на более низком уровне управления пакетами(подробнее описывать не буду, кому надо - гоу на домашнюю страницу проекта).
Так вот после того как все это было установлено, а в свежеустановленной системе были произведены минимально необходимые настройки, началось самое интересное, а именно написание конфигов.
В процессе штудирования манов было написано 2 конфига. Один rc.brige в нем находятся правила для поднятия виртуального интерфейса br0 который объединяет в себе 2 интерфейса eth0 и eth1 (первая и вторая сетевухи соответственно).
Второй rc.firewall в нем прописаны все необходимые правила для фильтрации трафика, проходящего через мост. Конфиги были положены в их законное место /etc/rc.d/
Собсно сами конфиги приведены ниже:
rc.bridge

#!/bin/sh

ifconfig eth0 0.0.0.0
ifconfig eth1 0.0.0.0

brctl addbr br0

brctl addif br0 eth0
brctl addif br0 eth1

ifconfig br0 192.168.3.104 netmask 255.255.252.0

brctl stp br0 off

ip link set br0 up
ip link set eth0 up
ip link set eth1 up

Небольшие пояснения: Первые две строки убирают с интерфейсов eth0 и eth1 айпи адреса для того чтобы использовать их в виртуальном мосте. br0 это название интерфейса моста, 192.168.3.104 это адрес под которым мост будет виден в сети, адрес можно и не писать, но тогда не будет доступа по ssh.
Теперь rc.firewall

#!/bin/sh

IPT=/usr/sbin/iptables
EB=/usr/local/sbin/ebtables



$IPT -F INPUT
$IPT -F FORWARD
$IPT -F OUTPUT
$EB -F INPUT
$EB -F FORWARD
$EB -F OUTPUT

/sbin/modprobe ipt_conntrack
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp

# Deny for change ip's

$EB -A FORWARD -i eth1 -p IPv4 --ip-src 192.168.3.0/24 -j DROP
$EB -A FORWARD -i eth0 -p IPv4 --ip-src 192.168.3.0/24 -j ACCEPT
$EB -A FORWARD -i eth0 -p IPv4 --ip-dst 192.168.3.0/24 -j DROP
$EB -A FORWARD -i eth0 -p IPv4 -j DROP

# Deny for any INPUT traffic from eth1

$EB -A INPUT -i eth1 -p IPv4 -j DROP



# *******iptables rules for virtual brige interface*******


# DROP bradcast's and open some port's for games

# Open CS

$IPT -A FORWARD -p udp -m multiport --ports 27015:27020 -j ACCEPT

# Open UT2004

$IPT -A FORWARD -p udp -m multiport --ports 7777:7780 -j ACCEPT

# Drop all broadcast

$IPT -A FORWARD -m pkttype --pkt-type broadcast -j DROP


# Nassy must die

$IPT -A FORWARD -p tcp --dport 56003 -j DROP
$IPT -A FORWARD -p tcp --dport 50138 -j DROP
$IPT -A FORWARD -p tcp --dport 50139 -j DROP
$IPT -A FORWARD -p udp --dport 56003 -j DROP
$IPT -A FORWARD -p udp --dport 50138 -j DROP
$IPT -A FORWARD -p udp --dport 50139 -j DROP
$IPT -A FORWARD -p tcp --dport 50160 -j DROP
$IPT -A FORWARD -p udp --dport 50160 -j DROP

# Vypres must die

$IPT -A FORWARD -p tcp --dport 8165 -j DROP
$IPT -A FORWARD -p tcp --dport 8166 -j DROP
$IPT -A FORWARD -p tcp --dport 8167 -j DROP
$IPT -A FORWARD -p tcp --dport 8168 -j DROP
$IPT -A FORWARD -p tcp --dport 8169 -j DROP
$IPT -A FORWARD -p udp --dport 8165 -j DROP
$IPT -A FORWARD -p udp --dport 8166 -j DROP

# Allow ssh and telnet for Me, deny from all

$IPT -A INPUT -p tcp --source 192.168.3.1 --dport 22 -j ACCEPT
$IPT -A INPUT -p tcp --source 192.168.3.1 --dport 23 -j ACCEPT
$IPT -A INPUT -p tcp --destination 192.168.3.104 --dport 22 -j DROP
$IPT -A INPUT -p tcp --destination 192.168.3.104 --dport 23 -j DROP

# Deny ssh and telnet connect from Big Lan to our network

$IPT -A FORWARD -p tcp --destination 192.168.3.0/24 --dport 22 -j DROP
$IPT -A FORWARD -p tcp --destination 192.168.3.0/24 --dport 23 -j DROP

####--- The packet forwarding part ---####



# Enable ip packet forwarding

echo 1 > /proc/sys/net/ipv4/ip_forward

# Kill the invalid packet's

$IPT -A INPUT -m state --state INVALID -j DROP
$IPT -A FORWARD -m state --state INVALID -j DROP

# Allow the ESTABLISHED packet's

$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# SYN storm

$IPT -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
$IPT -A OUTPUT -p tcp ! --syn -m state --state NEW -j DROP
$IPT -A FORWARD -p tcp ! --syn -m state --state NEW -j DROP

# UDP storm

$IPT -A INPUT -p udp --destination-port 113 -j REJECT
$IPT -A INPUT -p udp --source-port 67 --destination-port 68 -j ACCEPT
$IPT -A INPUT -p udp -j RETURN
$IPT -A OUTPUT -p udp -j ACCEPT
$IPT -A FORWARD -p udp --destination-port 113 -j REJECT
$IPT -A FORWARD -p udp --source-port 67 --destination-port 68 -j ACCEPT
$IPT -A FORWARD -p udp -j RETURN
$IPT -A FORWARD -p udp -j ACCEPT


# ICMP - redirect

$IPT -A INPUT --fragment -p icmp -j DROP
$IPT -A OUTPUT --fragment -p icmp -j DROP
$IPT -A FORWARD --fragment -p icmp -j DROP

# Allow ping out, control the ping to me

$IPT -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 2 -j ACCEPT
$IPT -A INPUT -p icmp --icmp-type echo-request -j DROP
$IPT -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 2 -j ACCEPT
$IPT -A FORWARD -p icmp --icmp-type echo-request -j DROP
$IPT -A INPUT -p icmp -j ACCEPT
$IPT -A FORWARD -p icmp -j ACCEPT

Небольшие пояснения для этого конфига:
В eth0 подключен наш сегмент, адреса 192.168.3.1-254
В eth1 подключена большая сеть, адреса 192.168.0.1-192.168.2.254
Мой адрес 192.168.3.1
В данном конфиге рубится весь броадкаст, разрешается он лишь для контры и ут2004.
Так же запрещается доступ по ssh и telnet из большой сети в нашу, а так же полностью закрыт доступ из большой сети на сам мост(они его просто не видят).
Реализована защита от смены айпи, таким образом если кто-то из большой сети пропишет себе адрес с нашего поддиапазона, то он просто не увидит ни одного компьютера нашего сегмента, так как мост все это блокирует.
Данный мост работает уже больше года и никаких сбоев в работе отмечено не было, со своими обязанностями он справляется, и почти никто из юзеров даже и не догадывается о его существовании.
Вот и все, если что-то не понятно, постараюсь разъяснить....have fun :)

А вот и я!

Хммм....я его таки завел :)
Ну что же, надеюсь буду сюда писать чаще чем раз в месяц.