Перейти к содержанию

handler

Members
  • Постов

    286
  • Зарегистрирован

  • Посещение

    Никогда

Весь контент handler

  1. Здравствуйте! По роду своей деятельности пытаюсь администрировать сервер в локальной сети с выходом в интернет. Теперь у меня возникла задача обеспечить работу веб-сервера в сети интернет со статическим внешним адресом. Некоторые ньюансы работы с фаерволом в локальной сети мне известны, а вот насчет работы с внешним миром у меня опыта ноль. Потому прошу Вашего совета в написании фаервола. iptables -A INPUT -i $EXT_IF -p tcp -dport 80 -j ACCEPT iptables -A INPUT -i $EXT_IF -j DROP iptables -A OUTPUT -o $EXT_IF -p tcp -dport 80 -j ACCEPT iptables -A OUTPUT -o $EXT_IF -p tcp -j DROP Полагаю, этих правил достаточно для доступа к серверу извне? Кроме этих правил я напишу правиля для доступа локальных приложений в интернет, и, возможно, форвардинг для нескольких машин изнутри. Меня интересует вопрос по поводу отказоустойчивости фаервола в случае атак извне: возможно, необходимо добавить правила в цепочку инпут, ограничивающие число запросов с одного ип? Заранее благодарен. Алексей. Днепр.
  2. ifup не нашел у меня команды adsl-sart - пришлось заменить на pppoe-connect в самом скипте. Теперь ifup ppp0 поднимает интерфейс, но ifdown ppp0 некорректно завершает его - отваливаются маршруты. И еще надо реконнектиться в случае обрыва
  3. Cейчас на rp-pppoe поднял один интерфейс eth1. http://wiki.opennet.ru/Linux_ppp-oe_%28ADSL%29_Balance - описана настройка нескольких бриджей. Создал согласно статьи файлы ppp0 - ppp4 После этого выполняю команду ifup ppp0 , интерфейс не поднимается, к тому же отваливается вся таблица маршрутизации, приходится перезагружать машину. Кто-нибудь поднимал рррое на произвольном количестве интерфейсов, более одного?
  4. Здравствуйте! ОС - FC10 5 адсл-модемов, которые нужно поднять в режиме моста rp-pppoe предназначен для работы с одним модемом, а как быть с несколькими модемами?
  5. Конечно же стоит нат - это же подсеть. А логи приведены сквида, который дает выход в мир моему роутеру
  6. Здравствуйте! имеется сеть (192.168.0.0/24) со шлюзом (192.168.0.1/24) на базе SuSE11.2, которая, в свою очередь, получает доступ в интернет ч\з сквид (192.168.51.1/24). На шлюзе 192.168.0.1 стоит фаерволл (iptables), днс, и пр. для работы сети. Проблема: С внутренней сети 192.168.0.0/24 идет вирус-рассылка днс-запросов ч/з роутер 192.168.0.1 на сквид сервер 192.168.51.1 Задача: определить, с какого адреса были отосланы запросы 19-Feb-2010 14:46:46 http://www.cd4b4b03.com/97924996.htm 19-Feb-2010 14:46:46 http://www.c9423e05.com/D091130C.htm 19-Feb-2010 14:46:46 http://www.90500a02.com/D76009A2.htm 19-Feb-2010 14:46:46 http://www.76b8ee50.com/B0C664A2.htm 19-Feb-2010 14:46:47 http://www.1daf1940.com/93EF38E4.htm 19-Feb-2010 14:46:47 http://www.c92e4e0c.com/37478613.htm 19-Feb-2010 14:46:47 http://www.55fbd9c8.com/85CB152B.htm 19-Feb-2010 14:46:47 http://www.75916910.com/773351E3.htm Возможно, днс-сервер ведет логи обращений к себе, тогда мы сможем выяснить, кто генерирует эти запросы
  7. handler

    tftp-сервер

    Здравствуйте! SuSE 11.2 tftp - все из коробки /etc/xinetd.d/tftp service tftp { socket_type = dgram protocol = udp wait = yes flags = IPv6 IPv4 user = root server = /usr/sbin/in.tftpd server_args = -s /tftpboot/dsl disable = no } /tftpboot/dsl - содержит все файлы для РХЕ-загрузки service xinetd restart netstat -a|grep ftp tcp 0 0 *:ftp *:* LISTEN tcp 0 0 *:ftp *:* LISTEN udp 0 0 *:tftp *:* dhcpd.conf ddns-update-style none; authoritative; option domain-name-servers 192.168.0.20; allow bootp; allow booting; subnet 192.168.0.0 netmask 255.255.255.0 { option routers 192.168.0.21; group { next-server 192.168.0.21; filename "pxelinux.0"; host comp01 { hardware ethernet 00:13:d4:42:34:51; fixed-address 192.168.0.1; } } } Далее запускаем машину с адресом 192.168.0.1. Она получает адрес а от тфтп-сервера ответа нет tcpdump -i eth1 -vvv host 192.168.0.1 10:11:14.192546 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has linux.kkkt.com tell 192.168.0.1, length 46 10:11:14.192579 ARP, Ethernet (len 6), IPv4 (len 4), Reply linux.kkkt.com is-at 00:0e:2e:d8:fa:7c (oui Unknown), length 28 10:11:14.192646 IP (tos 0x0, ttl 20, id 3, offset 0, flags [none], proto UDP (17), length 55) 192.168.0.1.ah-esp-encap > linux.kkkt.com.tftp: [udp sum ok] 27 RRQ "pxelinux.0" octet tsize 0 10:11:16.219260 IP (tos 0x0, ttl 20, id 4, offset 0, flags [none], proto UDP (17), length 55) 192.168.0.1.acp-port > linux.kkkt.com.tftp: [udp sum ok] 27 RRQ "pxelinux.0" octet tsize 0 10:11:20.228913 IP (tos 0x0, ttl 20, id 5, offset 0, flags [none], proto UDP (17), length 55) 192.168.0.1.msync > linux.kkkt.com.tftp: [udp sum ok] 27 RRQ "pxelinux.0" octet tsize 0 10:11:26.215914 IP (tos 0x0, ttl 20, id 6, offset 0, flags [none], proto UDP (17), length 55) 192.168.0.1.gxs-data-port > linux.kkkt.com.tftp: [udp sum ok] 27 RRQ "pxelinux.0" octet tsize 0 10:11:34.180290 IP (tos 0x0, ttl 20, id 7, offset 0, flags [none], proto UDP (17), length 55) 192.168.0.1.vrtl-vmf-sa > linux.kkkt.com.tftp: [udp sum ok] 27 RRQ "pxelinux.0" octet tsize 0 10:11:44.125492 IP (tos 0x0, ttl 20, id 8, offset 0, flags [none], proto UDP (17), length 60) 192.168.0.1.newlixengine > linux.kkkt.com.tftp: [udp sum ok] 32 RRQ "pxelinux.0" octet blksize 1456 10:12:20.153961 IP (tos 0x0, ttl 20, id 9, offset 0, flags [none], proto UDP (17), length 60) 192.168.0.1.newlixconfig > linux.kkkt.com.tftp: [udp sum ok] 32 RRQ "pxelinux.0" octet blksize 1456 10:13:32.162897 IP (tos 0x0, ttl 20, id 10, offset 0, flags [none], proto UDP (17), length 60) 192.168.0.1.tsrmagt > linux.kkkt.com.tftp: [udp sum ok] 32 RRQ "pxelinux.0" octet blksize 1456 10:15:20.148830 IP (tos 0x0, ttl 20, id 11, offset 0, flags [none], proto UDP (17), length 60) 192.168.0.1.tpcsrvr > linux.kkkt.com.tftp: [udp sum ok] 32 RRQ "pxelinux.0" octet blksize 1456 10:17:44.111789 IP (tos 0x0, ttl 20, id 12, offset 0, flags [none], proto UDP (17), length 60) 192.168.0.1.idware-router > linux.kkkt.com.tftp: [udp sum ok] 32 RRQ "pxelinux.0" octet blksize 1456 10:21:32.322331 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.0.1 tell 192.168.0.1, length 46 10:21:33.311140 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.0.1 tell 192.168.0.1, length 46 10:21:34.311151 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.0.1 tell 192.168.0.1, length 46 10:22:00.877863 IP (tos 0x0, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 96)
  8. так-то оно так, только пришлось идти к клиенту и писать статику. Почему - остьается загадкой
  9. остановка службы явилась следствием отсутствия электрического тока в здании, оповещенный админ бегал по электрикам, пока не вызвали аварийку. перезагрузка и тому подобные высокотехнологические приемы не помогут, т. к. сетевой адаптер сам себе назначает адрес автонастройки(не путать с ип-адресом) из подсети 169.254/16 и вы его уже ничем не исправите: лечится прямым прописыванием адресов
  10. фс раздела - фат16 сделай раздел загрузочным и используй syslinux
  11. Насчет передачи пакетов по сети можно использовать либо: 1. tc - создать фильтр на локальном интерфейсе по адресу-источнику(не знаю, как насчет количества пакетов, я ставил ограничение на скорость передечи пакетов, но тем не менее) 2. сквид может ставить барьер на объем файла(тогда надо все запросы фтп и самба порт заворачивать на сквид) Как вариант можно через пхп - там тоже есть ограничение на объем файла (по-умолчанию то ли 2 то ли 20 метров)
  12. Поговорим о сетевых сервисах, и их роль в жизни сетевых администраторов, в частности, про dhcp. dhcp - рай для сисадмина, т. к. отпадает необходимость бегать к клиентам и назначать им адреса. Клиенты, в основном, виндузячие, хотя, для дхцп нет разницы, под чьим управлением клиент в сети. Так-то оно так, да только не приведи случай вашему дхцп-серверу "умереть" (у меня он молчал 17 часов). Но вот мы все исправили, и наш сервер опять обслуживает запросы. Но что это? Клиенты звонят и говорят, что нет связи с сервером. Как так? Ведь мы же все починили! Все дело в том, что на сайте Microsoft, цитирую: "В данной статье рассмотрено использование функции автоматического назначения адресов (APIPA) TCP/IP (Transmission Control Protocol/Internet Protocol) при отсутствии в сети сервера DHCP (Dynamic Host Configuration Protocol). С помощью данной функции компьютер под управлением Windows может назначить себе IP-адрес, если сервер DHCP отсутствует в сети или отключен. Использование данной функции значительно упрощает настройку и поддержку небольшой локальной сети (LAN), использующей протокол TCP/IP.. Вот и получается, что ближайшее время Вам придется сбегать к каждому клиенту и ручками прописать адрес машины (или изменить реестр, но все равно идти придется) Спасибо майкрософт, что заботится о спортивной форме сисадминов
  13. handler

    почта

    Здравствуйте! Имеем: выход в тнтернет ч/з адсл-модем Локальная сеть. Роутер на базе ОС - fedora 10 postfix 2.5.5 апач 2.2.10 bind 9.2.1 Вэб-страница с участком php-кода: mail( "fake@mail.ru" , "Message body" , "From" , "Head:" ) Задача: Настроить почтовый сервер таким образом, чтобы такая конструкция работала (На худой конец "echo "hello" | mail fake@mail.ru") В main.cf редактировал поля: myhostname = host.domain.com mydomain = domain.com mynetworks_style = host mynetworks = 192.168.0.0/16 , 127.0.0.0/8 relayhost = [relay.ukrpost.ua] Я так понимаю,должна быть еще привязка к днс. такая конструкция у меня работает на хостинге, предоставленном hosted.in.ua , а на роутере не работает. Тут влияют настройки почты или днс?
  14. Сейчас весь скрипт выглядит следующим образом: #!/bin/bash COUNT = 2 SRV = 2ip.ru ADSL1 = eth1 ADSL2 = eth2 IP_ADSL1 = 192.168.1.1 ping -c $COUNT -I $ADSL1 $SRV > /dev/null if [ $? -ne 0 ]; then echo 'BAD' wget -q --user='user' --password='password' http://$IP_DSL1/rebootinfo.cgi rm -f rebootinfo.cgi else echo "1 - OK" fi ping -c $COUNT -I $ADSL2 $SRV > /dev/null if [ $? -ne 0 ]; then echo 'BAD' ./tel2 else echo "2 - OK" fi ./tel2 #!/bin/bash expect <<eof log_user 1 set timeout 3 spawn telnet 192.168.2.1 expect "Password:" send -- "password\r" expect "ADSL>" send "wan adsl reset\r" send "exit\r" expect eof sleep 120 done exit 0 Все работает. Спасибо за помощь
  15. handler

    bash+expect

    И снова здравствуйте! Имеется два адсл-модема: один перезагружается командой wget ip_addr_adsl_modem/reboot.cgi второй - командой telnet ip_addr_adsl_modem ... Задача: написать один скрипт перезагрузки обоих модемов. Задача тривиальная и по отдельности для каждого модема решается просто: script_1.sh #!/bin/sh wget 192.168.1.1/reboot.cgi script_2.sh #!/usr/bin/expect spawn telnet 192.168.1.2 expect "Password:" send "Blah-Blah-Blah\r" expect "ADSL>" send "wan adsl reset\r" Опытный админ сразу заметит, что заголовки скриптов несовместимы, т. е. просто объединить их нельзя. Пробовал в один скрипт вставить другой командой exec: script_1.sh #!/bin/sh wget 192.168.1.1/reboot.cgi exec ./script_2.sh #another code here Так все работает за исключением того, что управление из второго скрипта возвращается командной строке, а не первому скрипту, а нам необходимо вернуться в первый скрипт! Какие будут предложения?
  16. Во втором цикле опечатка - начиная с 2 ( это написано в исходниках ) В спецификации удф написано, что указатель на файловый дескриптор находится в секторе 256. Чтение 0:5:31 (5*75+31-150 = 256) ioctl(fd , CDROMREADMODE1 , &arg) возвращает -1. Думаю, стоит сначала переместить указатель при помощи CDROMSEEK(...)
  17. В исходниках сказано: lba : 0 - 40xxx msf : 0:2:0 - 89:59:74 превод lba -> msf ( ( ( m * 60) + s ) * 75 + f )- 150 написал три вложенных цикла: for ( m = 0; m <= 89 : m++ ) { for ( s = 0 ; s <= 59 ; s++ ) { for ( f = 0 ; f <= 47 ; f++ ) { arg.msf.cdmf_min0 = m; arg.msf.cdmf_sec0 = s; arg.msf.cdmf_frame0 = f; ret = ioctl( fd , CDROMREADMODE1 , &arg ); } } } Только вот возвращает удачных 2-3 чтения из 10 Может, я что-то напутал в адресации секторов?
  18. Пришлось прибегнуть к программированию. Воспользовался вызовом ioctl: В исходниках вот это: CDROMREADRAW read data in raw mode (2352 Bytes) (struct cdrom_read) usage: union { struct cdrom_msf msf; /* input */ char buffer[CD_FRAMESIZE_RAW]; /* return */ } arg; ioctl(fd, CDROMREADRAW, &arg); inputs: cdrom_msf structure indicating an address to read. Only the start values are significant. outputs: Data written to address provided by user. error return: EINVAL address less than 0, or msf less than 0:2:0 ENOMEM out of memory notes: As of 2.6.8.1, comments in <linux/cdrom.h> indicate that this ioctl accepts a cdrom_read structure, but actual source code reads a cdrom_msf structure and writes a buffer of data to the same address. MSF values are converted to LBA values via this formula: lba = (((m * CD_SECS) + s) * CD_FRAMES + f) - CD_MSF_OFFSET; Остается загадкой способ инициализации msf-cтруктуры для последовательного считывания секторов диска. К стати, формат - UDF
  19. Вот за это спасибо - насчет формата создаваемых Windows дисков. Однако, команда: dd if=/dev/cdrom of=/mnt/cd.iso conv=sync,noerror которую мне подсказали, создала файл на диске, размером с образ диска, пустой, содержащий в начале: СD-ROM is NOT in ISO 9660 format Правда, есть сомнения в компетентности данной программы. Возможно, что не iso, но и не факт, что udf, возможно, есть еще альтернатива? Проблема также и в том, что я не могу повторно получить снимок диска ни командами dd, ни ddrescue - первый экземпляр затерся самодельным парсером Насчет невысказанных попыток монтирования я надеялся на Вашу догадливость: что бы Вы стали делать, (я бы даже сказал, что Вам еще остается делать) сняв образ с диска - выбор действий и инструментов небогат. В общем, пока что нам не удается извлечь данные с диска даже в испорченном виде - мне это начинает нравится
  20. По поводу монтирования: Вам уже сказали, что все попытки безуспешны, или Вы полагаете, что я, читая спецификации различных ФС, как сказку про колобка, не в состоянии прикрутить образ? По поводу системы: в описании темы предельно ясно указано, на какой платформе и какими инструментами записан носитель, или Вы можете определить тип ФС по номеру версии Windows и номеру сервис пака? Тогда удивите нас: WindowsXP SP2 И контрольный в голову всем мудрым советчикам howto и backup: Трактуйте название темы буквально - нас не интересует не причина, а пути решения проблем. Спасибо за сотрудничество, Всех с Новым Годом!
  21. Здравствуйте! Имеем: Оптический диск CD-RW c pdf-файлами на нем. Данный диск был заполнен файлами следующим образом: Под управлением ОС Windows файлы копировались на CD-RW диск при помощи <Ctrl+C> <Ctrl+V> или Drag'n'Drop (как на флешку). На определенном этапе диск перестал читаться. Задача: извлечь содержимое диска. Попытка решить задачу: Для этого нужно ответить на три вопроса: 1. Предполагаемый формат ФС (iso-9660, UDF, CDFS) и его спецификация 2. Спецификация PDF-файлов 3. Не помню Восстановление проводится под управлением ОС Линукс. Для этой цели был установлен пакет ddrescue (45Kb.), т. к. dd отказался его читать: dd if=/dev/cdrom /tmp/cd.iso bla - bla - bla I/O error Про остальные инструменты можно не упоминать. Что касается первого вопроса, то предполагается, что это iso-9660, однако спецификации данной ФС я не нашел, разве только "Вика" сказала, что первые 32 КБ не используются, а о дальнейшей структуре написано пространно - мол, есть там такие-то структуры, насчет смещений и размеров молчок. Данная информация нам понадобится в том случае, если подручными инструментами прочесть не получится. Тогда берем в руки ассемблер, грузимся в ДОС, и счастливые 90-е снова оживают. ddrescue /dev/cdrom /tmp/cd.iso Носитель прочитала (ушло более суток, подумал, зависла, сделал <Ctrl+C>. Размер файла вышел 600 Мб из 736 Мб). Созданный файл просмотрел в текстовом режиме - присутствуют структуры каталогов с искомыми файлами. Выдвинуто предложение написать парсер на С++ , который будет искать сигнатуры pdf-файлов и копировать их оттуда (файлы). Вот тут нам и нужен ответ на второй вопрос - толковой спецификации тоже не нашел, кроме, разве, сигнатур: %PDF - начало файла, %EOF - конец файла. В принципе, этого достаточно, но нам нужна гарантия того, что файлы на носителе не фрагментированы (спецификация ФС оптических дисков вроде гарантирует это). Другие инструменты мне под руку не попадались. Возможно, Вы посоветуете мне, какие пути решения этой задачи Вам известны?
  22. Здравствуйте! Администрирую сеть с роутером на базе линукс, который, в свою очередь, сам стоит за роутером, на котором стоит прокси. Таким образом, в вверенной мне сети все клиенты и сам роутер в том числе (имеется в виду приложения, работающие с веб-трафиком) приходится настраивать на прокси, к примеру: 192. 168.100.100:8080 На роутере поднят нат и форвардинг, чтобы машины из сети могли ходить в интерент. Но мне не хочется на каждой машине настраивать прокси, потому я добавил правило в фаервол: iptables -t nat -A PREROUTING -s $LOCAL_NET -p tcp --dport 80 -j DNAT --to 192.168.100.100.8080 Но такая конструкция не работает. Возможно ли написать правило для всей сети, чтобы не настраивать каждого клиента? ВАЖНО: сам роутер также стоит за прокси и также требует настройки
  23. Карточка на базе чипа Realtek 8169. Собрал модуль r8169 , загрузил - все равно не определяется...
  24. ]# lspci 00:00.0 Host bridge: Intel Corporation 82915G/P/GV/GL/PL/910GL Memory Controller Hub (rev 0e) 00:01.0 PCI bridge: Intel Corporation 82915G/P/GV/GL/PL/910GL PCI Express Root Port (rev 0e) 00:1b.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 05) 00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 05) 00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 05) 00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 05) 00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 05) 00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 05) 00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 05) 00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev d5) 00:1f.0 ISA bridge: Intel Corporation 82801FB/FR (ICH6/ICH6R) LPC Interface Bridge (rev 05) 00:1f.1 IDE interface: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 05) 00:1f.2 IDE interface: Intel Corporation 82801FB/FW (ICH6/ICH6W) SATA Controller (rev 05) 00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 05) 01:09.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) 01:0a.0 Ethernet controller: Intel Corporation 82557/8/9/0/1 Ethernet Pro 100 (rev 08) 03:00.0 VGA compatible controller: ATI Technologies Inc RV380 0x3e50 [Radeon X600] 03:00.1 Display controller: ATI Technologies Inc RV380 [Radeon X600] (Secondary)
×
×
  • Создать...