четверг, 15 ноября 2012 г.

Cisco: резкое ухудшение канала без видимых причин. Лечение.

День с утра как-то не задался. То вирусы, то провайдеры.
Началась беда-беда. Которая бывает, как уже предположили, раз в пол-года - интернет-канал стал безобразно себя вести:
- скорость резко снижается, почти до нуля;
- пинги теряются пачками;
- работать невозможно.

Трассировка показывала, что потери происходят на границе наш_маршрутизатор - PPPoE_концентратор_провайдера. Приглашенный специалист технической поддержки из компании Дом.Ру подключал свой ноутбук - все было нормально, даже не обращая внимания на полностью забитый канал (запускали качаться торрент).

Кусок конфига:

interface FastEthernet0/1
 description R-Telecom
 no ip address
 duplex auto
 speed auto
 pppoe enable group 1
 pppoe-client dial-pool-number 1
 crypto map VPN-RTK
!
interface FastEthernet0/1.1537
 description R-Telecom
 encapsulation dot1Q 1537
 ip address 10.0.0.1 255.255.255.0
 no ip redirects
 no ip unreachables
 pppoe enable group 1
 pppoe-client dial-pool-number 1
 no cdp enable
 crypto map VPN-RTK
!

Решение следующее:
Удалил виртуальный канал FastEthernet0/1.1537.

Причина: либо сам канал, либо (ошибочно?) прописанный запуск звонилки Dialer1. Грешу на второе, но проверять сейчас никто не даст :)

среда, 24 октября 2012 г.

Cygwin sshd: проблемы при авторизации


Клиент после успешной авторизации отваливается с сообщением "chmod(/dev/tty1, 0622) failed: Permission denied." в дебаге.

Есть два варианта решения:
Перезапустить sshd:
    1. На сервере с cygwin'ом остановить службу cygwin sshd
    2. Поубивать все процессы sshd
    3. Запустить службу cygwin ssh
Если не помогло, то:
    1. На сервере с cygwin'ом остановить службу cygwin sshd
    2. Поубивать все процессы sshd
    3. Стереть все /etc/ssh*
    4. Заново настроить службу sshd командой ssh-host-config
Взято отсюда: http://serverfault.com/questions/375066/cygwin-sshd-fails-to-allocate-pty-for-some-users

пятница, 12 октября 2012 г.

Cisco Aironet 1131: сброс конфига.

Заметка маленькая, но полезная. Посколько Cisco Aironet 1130 не поддерживает сброс enable пароля, то приходится сбрасывать startup-config:

1. Выключаем питание;
2. Зажимаем кнопку reset;
3. Включаем питание и ждем, когда лампочка состояния станет желтого цвета;
4. Отпускаем кнопку reset и ждем перезагрузки точки доступа;
5. Заново конфигурируем.

Bacula: копирование последнего задания на ленту


Копирование последнего задания на ленту

/etc/bacula/bacula-dir.conf

Добавить:
Storage {
    Name = Tape-storage
    Address = bacula.example.org
    SDPort = 9103
    Password = "********"
    Device = LTO-4
    Media Type = LTO-4
    Maximum Concurrent Jobs = 4
}
Pool {
    Name = Tape-pool
    Pool Type = Backup
    Autoprune = yes
    Recycle = yes
    Storage = Tape-storage
}

/etc/bacula/baсula-sd.conf

Добавить:
Device {
    Name = LTO-4
    Media Type = LTO-4
    Archive Device = /dev/st0
    AutomaticMount = yes;
    AlwaysOpen = yes;
    RemovableMedia = yes;
    RandomAccess = no;
    Maximum File Size = 5GB
}

Описание клиента

Добавить (на примере client):
Job{
    Name = "client-copy"
    Type = Copy # Обязательно для копирования
    Level = Full
    Pool = client-pool # Обязательно для копирования
    Storage = client-storage # Обязательно для копирования
    Client = client-fd
    FileSet = "Empty Set"
    Schedule = client-copy-schedule
    Selection Type = SQL Query
    Selection Pattern = "
        SELECT DISTINCT Job.JobId,Job.StartTime FROM Job,Pool
        WHERE Pool.Name = 'client-pool' AND Pool.PoolId = Job.PoolId
        AND Job.Type = 'B' AND Job.JobStatus IN ('T','W')
        AND Job.jobBytes > 0
        AND Job.JobId NOT IN
            (SELECT PriorJobId FROM Job
            WHERE Type IN ('B','C')
            AND Job.JobStatus IN ('T','W')
            AND PriorJobId != 0)
        ORDER BY Job.StartTime
    "
    Spool Data = yes
    Maximum Concurrent Jobs = 4
    Messages = Daemon
}

Пул клиента

Изменить (на примере client):
Pool {
    Name = client-pool
    Pool Type = Backup
    Recycle = yes
    AutoPrune = yes
    Volume Retention = 31 days
    Maximum Volumes = 31
    LabelFormat = "client-"
    Next pool = Tape-pool # Обязательно для копирования
}

Расписание копирования

Добавить (на примере client):
Schedule {
    Name = client-copy-schedule
    Run = daily at 00:20
}

среда, 8 августа 2012 г.

WCCP: Cisco 1841 + Squid

Cisco
interface Vlan2
 ip address 192.168.100.250 255.255.255.0
 ip access-group STUFF in
 ip wccp web-cache redirect in
 ip flow ingress
 ip flow egress
 ip nat inside
 ip virtual-reassembly
 ip tcp adjust-mss 1380
ip nat inside source list WCCP_Server interface Dialer0 overload
ip wccp web-cache redirect-list WCCP_Redirect password foobar
ip access-list standard WCCP_Server
 permit 192.168.100.6
ip access-list extended WCCP_Redirect
 remark ACL for WCCP proxy access
 remark Squid proxies bypass WCCP
 deny   ip host 192.168.100.6 any
 remark LAN clients proxy port 80 only
 permit tcp 192.168.100.0 0.0.0.255 any eq www
 remark all others bypass WCCP
 deny   ip any any

Linux:
ip tunnel add wccp0 mode gre remote 192.168.100.250 local 192.168.100.6 eth0
ifconfig wccp0 192.168.100.6 netmask 255.255.255.255 up
echo 0 >/proc/sys/net/ipv4/conf/wccp0/rp_filter
echo 0 >/proc/sys/net/ipv4/conf/eth0/rp_filter
echo 1 >/proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -i wccp0 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A POSTROUTING -j MASQUERADE

Squid:
http_port 3128 intercept
wccp2_router 192.168.100.250
wccp2_forwarding_method gre
wccp2_return_method gre
wccp2_service standert 0 password=foobar
Основа взята сдесь: http://wiki.squid-cache.org/Features/Wccp2


пятница, 6 июля 2012 г.

Полноценный Elantech touchpad

Дано бук с Debian Wheezy, XFCE4, Elantech Touchpad, который в иксах работает на уровне обычной мышки: нет мультитача, и, соответственно, скрола двух/трех пальцевого тапа. И самое страшное - нет даже одиночного тапа.

Мое решение:
# Xorg -configure
# cp /root/xorg.conf.new /etc/X11/xorg.conf

В /etc/X11/xorg.conf добавил

Section "InputDevice"
        Identifier "Touchpad" # required
        Driver "synaptics" # required
        Option "MinSpeed" "0.5"
        Option "MaxSpeed" "1.0"
        Option "AccelFactor" "0.075"
        Option "TapButton1" "1"
        Option "TapButton2" "2" # multitouch
        Option "TapButton3" "3" # multitouch
        Option "VertTwoFingerScroll" "1" # multitouch
        Option "HorizTwoFingerScroll" "1" # multitouch
        Option "VertEdgeScroll" "1"
        Option "CoastingSpeed" "8"
        Option "CornerCoasting" "1"
        Option "CircularScrolling" "1"
        Option "CircScrollTrigger" "7"
        Option "EdgeMotionUseAlways" "1"
        Option "LBCornerButton" "8" # browser "back" btn
        Option "RBCornerButton" "9" # browser "forward" btn
EndSection
И в секции ServerLayout заменил
InputDevice    "Mouse0" "CorePointer"
на
InputDevice "Touchpad" "CorePointer"


Оригинал с минимальными правками взят здесь: http://wiki.debian.org/SynapticsTouchpad

среда, 4 июля 2012 г.

USB-Flash, Syslinux и загрузка c образа

Была флешка с установленным SystemRescueCD. Захотел добавить пару ISO-образов и грузиться с них.
Потребовалось добавить в /syslinux/syslinux.cfg:

LABEL Kaspersky Boot-CD 10.0 (ISO)
  LINUX memdisk
  INITRD /rescue/rescue.iso
  APPEND iso raw
Это самый простой способ.

четверг, 7 июня 2012 г.

Cisco: откат настроек

Команда copy startup-config running-config довольно лукава. Дело в том, что она не заменяет текущую конфигурацию, а лишь выполняет все команды, записанные в startup-config. А это не то же самое! Например, на интерфейсе была выполнена команда shutdown, а в стартовой конфигурации интерфейс был включен – копирование конфигурации в этом случае приведёт к тому, что интерфейс по-прежнему будет в состоянии administratively down, ведь команды no shutdown подано не было (т.к. она не сохраняется в конфигурации). Чтобы не тратить время на перезагрузку и не отлавливать блох вручную, стоит выполнить в привилегированном режиме configure replace nvram:startup-config, что приведёт к честному копированию с полной заменой текущих настроек.

Взято отсюда: http://habrahabr.ru/post/129542/

Как смотреть трафик на интерфейсе, кто больше всех грузит интерфейс

Качающие вообще

На физическом интерфейсе включаем netflow:
interface fa0/0
ip address 10.0.0.1 255.255.255.252
ip flow ingress
ip flow egress
...и смотрим состояние командой 
sh ip cache flow

 И десятка самых качающих в частности

ip flow-top-talker
  top 10
  sort-by bytes
  cache-timeout 100
...и смотрим состояние командой 
sh ip flow top-talkers

вторник, 5 июня 2012 г.

Если меняется имя ethernet-интерфейса

После установки Debian на свежекупленный ноутбук выяснилась одна очень неприятная вещь: при каждой загрузке имя ethernet-интерфейса менялось на eth(N+1). Причина - все время новый MAC-адрес. Причем, wlan-интерфейс такой беде подвержен не был.
На форумах мысли были разные: одни писали, что нагнулся eeprom, в котором хранился  MAC-адрес, другие же сетовали на udev и его желание сверить MAC с производителем (напомню, что это первые 3 байта адреса), а при несовпадении выдавать случайный адрес.

Костыли оказались довольно простыми:

  1. Смотрим /sys/class/net/текущее_имя_интерфейса/ifindex - в моем случае ifindex был равен 2
  2. Правим /etc/udev/rules.d/70-persistent-net.rules:
    1. удаляем все лишние интерфейсы кроме рабочих (у меня это были wlan0 и eth230)
    2. строчку описания eth приводим к виду SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{ifindex}=="2", NAME="eth0"
  3. Прибиваем mac-адрес к интерфейсу в /etc/network/interfaces
pre-up ifconfig eth0 hw ether 00:00:d3:d1:77:ea

PPPoE-сервер на 2691

aaa new-model
aaa authentication ppp default local
aaa authorization network default local 
!
ip dhcp pool PPPoEpool
   network 10.100.10.0 255.255.255.252
   domain-name example.com
   default-router 10.100.10.1 
!
username pppoeuser privilege 0 password 0 pppoepassword
!
bba-group pppoe global
 virtual-template 1
 sessions max limit 100
 sessions per-mac limit 1
 sessions auto cleanup
!
!
interface FastEthernet0/0
 ip address 10.100.0.1 255.255.255.252
 ip virtual-reassembly
 duplex auto
 speed auto
 pppoe enable group global
!         
interface Virtual-Template1
 ip address 10.100.10.1 255.255.255.252
 ip virtual-reassembly
 peer default ip address dhcp-pool PPPoEpool
 ppp authentication chap

четверг, 24 мая 2012 г.

Консерватория


Консерватория, аспирантура, мошенничество, афера, суд, Сибирь.
Консерватория, частные уроки, еще одни частные уроки, зубные протезы, золото, мебель, суд, Сибирь.
Консерватория, концертмейстерство, торговый техникум, зав. производством, икра, крабы, валюта, золото, суд, Сибирь.

Может, что-то в консерватории подправить?

(c) М. Жванецкий

понедельник, 21 мая 2012 г.

Восстановление счетчиков Windows Performance Monitor


Если в perfmon'е и в реестре HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perfmon\009 или 019 вместо текста имен и описаний счетчиков цифры, то вылечить это можно следующим образом:
lodctr /r c:\windows\system32\axperf.ini
http://support.microsoft.com/kb/300956/ru

среда, 16 мая 2012 г.

Заметки про aptitude



Проблема с обновлением
Reading package lists... Error!E: Wow, you exceeded the number of versions this APT is capable of.E: Problem with MergeList /var/lib/apt/lists/mirror.yandex.ru_debian_dists_unstable_main_binary-i386_PackagesE: The package lists or status file could not be parsed or opened.E: Couldn't rebuild package cacheE: Wow, you exceeded the number of versions this APT is capable of.E: Problem with MergeList /var/lib/apt/lists/mirror.yandex.ru_debian_dists_unstable_main_binary-i386_PackagesE: The package lists or status file could not be parsed or opened.
У меня эта ошибка возникала в тот момент, когда я совсем старенький stable хотел обновить и до обновления добавил в /etc/apt/source.cionf еще и unstable репозиторий.

Для того, чтобы победить эту дрянь, надо всего лишь отключить unstable-репозиторий и обновить  систему до актуального состояния.

Не может проверить ключи
W: GPG error: ftp://ftp.debian.org/ testing Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 010908312D230C5F W: There is no public key available for the following key IDs: 010908312D230C5F
В таком случае просто насильно импортируем ключи:
gpg --keyserver pgpkeys.mit.edu --recv-key 010908312D230C5F
gpg -a --export 010908312D230C5F | sudo apt-key add - 

scsi_tape из offline в running

После обновления и перезагрузки системы устройство st0 (scsi_tape) при обращении к нему из утилиты mt сообщало:
mt: /dev/st0: сбой rmtopen: Нет такого файла или каталога
В логе имеется дамп:
[   85.816029] st 14:0:3:0: Attempting to queue an ABORT message:CDB: 0x12 0x0 0x0 0x0 0xfe 0x0

[   85.816621] scsi14: At time of recovery, card was not paused



[   85.816631] >>>>>>>>>>>>>>>>>> Dump Card State Begins <<<<<<<<<<<<<<<<<


[   85.816633] scsi14: Dumping Card State at program address 0x31 Mode 0x11


и
[  115.830032] st 14:0:3:0: Device offlined - not ready after error recovery


Положение осложнялось еще и тем, что в момент обнаружения проблемы было запущено пробное резервное копирование с сервера БД на сервер резервных копий, а потому резких движений с сервером backup'ов делать не хотелось-бы.

На помощь пришла следующая команда:
# echo running > /sys/devices/pci0000\:00/0000\:00\:1c.1/0000\:05\:00.0/0000\:06\:04.0/host14/target14\:0\:3/14\:0\:3\:0/scsi_tape/st0/device/state
Т. е. принудительное выставление флага running

P.S.: с проблемами при загрузке мы еще разберемся!

P.P.S.: только что проверил - стриммер работает нормально. Стирает/пишет. Ошибок нет.

суббота, 5 мая 2012 г.

SOHO97, финал

Раннее я уже писал (http://diesel594.blogspot.com/2012/05/soho97.html) о проблемах с Cisco SOHO97 (32-мегабайтная версия), на которой я должен был запустить поверх ADSL PPPoE-клиента, NAT, DHCP-сервер, IPIP-тоннель. И, вроде, все было нормально, пока я не запускал одновременно NAT и PPPoE-клиент. После поднятия интерфейсов, PPPoE отваливался и не в какую не хотел подключаться. Диагностика выявила следующее:
1. При поднятии интерфейс VirtualAccess тихо-мирно отваливался, вслед за чем отваливался и Dialer
2. С помощью debug sss errors и debug sss events удалось увидеть ошибку, гласящую что-то вроде "low free memory".
3. С помощью просмотра состояния памяти (show memory statistic) увидел, что процессы PPPoE-клиента и NAT "отъедают" от свободной памяти от 470K до 700K и при включении их в паре получаем сообщение о нехватке памяти.
4. Обновление прошивки до более новой версии 12.4 проблему не решило.
5. Отключение практически всего лишнего (насколько смог найти) также не решало вопроса.
6. Downgrade до прошивки 12.2(8)YN (soho97-k9oy1-mz.122-8.YN.bin) спас положение: вместо свободных 470-1800KB, show memory statistic показывал стабильно 14000K. Ну и все сервисы работают нормально.

Только вернулся с полей. Переключал всю сеть на ту самую многострадальную Cisco SOHO97, удаленно переключал тоннель на центральном маршрутизаторе.
Итог: все идеально и замечательно работает. Uptime уже почти 9 часов.

четверг, 3 мая 2012 г.

Пилоты

"Рассказал 2-й пилот Боинга-757 компании Транс Аэро. Дальше с его слов: - Аэропорт Гамбурга. Мы только приземлились и рулим к терминалу, за нами в ожидании посадки 4 самолёта: Люфтганза (Германия), Фидекс (грузовик), Бритиш Айрвейс (Англия), и в верхнем эшелоне опоздавший на 4 часа ИЛ-86 Аэрофлота.

Очередь Люфтганзы, но посылая на х.. диспетчера наш ИЛ-86, чтобы сэкономить топливо, начинает снижение. Служба наземного контроля, грозя всеми карами земными и понимая, что русским всё пох..., пытается развести самолёты и пропустить ИЛ. Бритиш и Фидекс на посадку ещё не зашли, подчиняясь диспетчеру пропускают ИЛ. А пилот Люфтганзы, уже видя полосу, вступает в перепалку с русскими, мол кагого х.., он немец, на немецком самолёте, в родной Германии, должен заходить на 2-й круг и пропускать грёб..ных русских?
Получив ответ: - Потому что вы, суки, войну проиграли!", затихает.
И бросает фразу: "Хорошо ещё жидов в воздухе нет!" На что пилот Бритиша, на идеальном английском, предупреждает немца, что это "не корректно", так о евреях...

Все благополучно сели, а через час к нам в комнату отдыха зашли сотрудники авиационной безопасности и вежливо попросили пройти с ними на опознание, т.
к. пилота Люфганзы, который ругался с русскими отх...или в туалете, выбили пару зубов и спустили в унитаз удостоверение пилота. И кроме русских это сделать никто не мог. Отх...ли героя знатно... Морда в крови, передних зубов нет... Но облом, из экипажа Аэрофлота он не узнал никого. А остальные "цивилизованные" ни причём..

Мы готовимся к вылету, рядом с нами тот самый сокол из Люфганзы. Как тут, без команды диспетчера в очередь на взлёт (отличительная черта наших лётчиков), вместо Люфганзы встаёт Бритиш. Немца прорывает, орёт диспетчеру,
что это не аэропорт, а пи...ец, что сесть ему мешают русские, а взлететь англичане... То, что мы с первым пилотом услышали на частоте Бритиша от их командира экипажа, повергло нас в шок.
На русском языке, с явным одесским акцентом, мы услышали:
- Ребята, скажите этому фашисту, пусть таки заткнёт е...ник. А то мы с Фимой (второй пилот) ещё раз ему пи...ды дадим от всего еврейского народа!.."

среда, 2 мая 2012 г.

Настройка SOHO97: PPPoE + NAT + DHCPD + IPinIP + SSH

Невероятно расстраивает отсутствие протокола PPPoE в vpdn-group. Не появляется строчка в конфиге и все тут! А если и появляется, то со всем этим хламом взлететь тоже не удается :(


четверг, 26 апреля 2012 г.

Outlook: невозможно просмотреть или сохранить вложение.

Появляется сообщение об ошибке: "...невозможно открыть/сохранить файл..."

В реестре открываем ветку HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Outlook\Security\ и удаляем папку, которая указана в ключе реестра.

http://support.microsoft.com/kb/305982

вторник, 17 апреля 2012 г.

Анализ трафика по протоколам

На интерфейсе включаем анализ трафика:
ip nbar protocol-discovery
Просматриваем статистику по протоколам:
show ip nbar protocol-discovery [interface type number]
Добавляем свой протокол передачи данных:
ip nbar custom name [offset[format value]] [variable field-name field-length] [source | destination] [tcp |udp ] [range start end | port-number ]
ip nbar custom torrents 1 ascii BitTorrent source tcp range 6881 7881 

пятница, 13 апреля 2012 г.

Удаленное выполнение с использованием SSH

Выполняем скрипт...
ssh db2 "cmd.exe /C dir /B /S c:\\\\backup" |tr "\\\\" "/" | iconv -f cp866 -t utf-8 | grep `date --date="yesterday" +"%Y%m%d"`
... из bacula
File = "|/bin/bash /usr/local/bin/get-files_db2.sh"

четверг, 12 апреля 2012 г.

Блокировка vkontakte на маршрутизаторе cisco

ip inspect name VKONTAKTE http urlfilter alert on
ip urlfilter allow-mode on
ip urlfilter cache 0
ip urlfilter exclusive-domain deny .vk.com
ip urlfilter audit-trail


В настройке наружного интерфейса
ip inspect VKONTAKTE out

среда, 11 апреля 2012 г.

вторник, 10 апреля 2012 г.

Принудительные запросы о доставке и прочтении

При использовании roundecube потребовалась принудительная отправка запросов о доставке и прочтении. Решилось правкой внутренностей RC.

/usr/share/roundcube/program/steps/mail/sendmail.inc:

меняем

if (!empty($_POST['_receipt']))
{
  $headers['Return-Receipt-To'] = $identity_arr['string'];
  $headers['Disposition-Notification-To'] = $identity_arr['string'];
}

на

//if (!empty($_POST['_receipt']))
//{
$headers['Return-Receipt-To'] = $identity_arr['string'];
$headers['Disposition-Notification-To'] = $identity_arr['string'];
//}

Чистка почтовых корзин у всех пользователей

Потребовалось почистить папку "удаленные" во всех почтовых ящиках.
# find /var/mail/ type f -path "/var/mail/klassika-apt.ru/*/Maildir/\&BCMENAQwBDsENQQ9BD0ESwQ1-/cur/*" -delete
...и сообщения старше 4 дней в папке "нежелательная почта"
find /var/mail/ -path "*sunduk*&BB0ENQQ2BDUEOwQwBEIENQQ7BEwEPQQwBE8- &BD8EPgRHBEIEMA-*/cur/*" -mtime +4