kernel panic in userspace

my own self destruction
  • Blog
  • about
  • articles
    • Virtualbox bridge
    • linux blogging
    • Gentoo on Acer Extensa 5630Z
  • code
    • @unfollowr
    • WordPress
      • WordPress-bbPress syncronization
      • IE Warning
      • PostAds
    • Callisto overlay
    • @listwatcher
  • CV
  • belarusian
  • russian
  • english

Gentoo package size checker

Nov 15 2008
Blood Red Shoes – You Bring Me Down
  • belarusian
  • russian

Калісьці вельмі даўно ў мяне быў толькі ўнутраны жорткі дыск у ноўтбуку на 80 Gb і мне было вельмі няўтульна. астаянна прыходзілася нешта выдаляць, неяк спрабаваць улезьці ў гэтую прастору. Цяпер у мяне яшчэ ёсьць зьнешні дыск на 500 Gb, на якім толькі музыкі 80 Gb (+ некалькі неразабранай) і які таксама ўжо амаль запоўнены, але які магчыма пачысьціць. Гігабайт гэтак на 100 :)

З тых самых часоў у мяне засталася спадчына ў выглядзе карнявога падзелу Gentoo на 3.5 Gb. Ясная справа, жыць на такой прасторы вельмі сумна й цесна, але магчымасьці пераразьмеціць няма, ды й часу асабліва таксама няма, каб 80 гігабайт туды-сюды цягаць. Канешне, я падключаю пры сборцы /var/tmp/portage са зьнешняга дыску, /home у мяне таксама асобным падзелам (дзе й кэш squid жыве гігабайтны), але вось усталёўваць пакеты ўсё роўна кудысьці трэба.

Для пачатку я б параіў вычышчаць лёгі з /var/log (у мяне сёньня за ноч 400 Мб скапілася, але гэта з-за губленьня зьнешняга дыску, адкуль мкзыка гралася і адкуль torrent працаваў). Усялякі хлам там скапліваецца не асабліва часта, але бываюць выпадкі. Таксама варта трымаць толькі адно дрэва зыходнікаўя ядра ў /usr/src, таму як гэта таксама нямала. Больш за тое, у выпадках асаблівага дэфіцыту месца разумна трымаць несабранае ядро. Калі пры сборцы модуляў праз гэта будуць выяўляцца праблемы, то магчыма пачаць сборку ядра і спыніцца як толькі справа дойдзе да сборкі ўнутраных модуляў, якія пайдуць пасьля стандартных сборачных працэдур. Ну й du -m вам у дапамогу.

Паміма выдаленьня невыкарыстоўваемых пакетаў час ад часу ўзьнікае жаданьне зразумець, што ў сістэме столькі месца займае. З стандартных уціліт такое ўмее equery, але неяк структуравана вывад у яе атрымаць ня выйшла, таму я напісаў асабістую прыблуду, якая сарціруе пакеты па памеры і выводзіць поўны сьпіс. Атрыманьне дадзеных можа заняць прылічны час, займіце сабе чым-небудзь прыемным :)

Спампаваць скрыпт pkgsize

Для запуска выпаўняем

chmod +x pkgsize
./pkgsize

Для адключэньня даданага вываду аб прагрэсе магчыма вызываць наступным чынам

./pkgsize 2>/dev/null

Калі ў вас шмат пакетаў у сістэме і вывад не ўмяшчаецца, то магчыма рабіць яго ў файл ці выкарыстоўваць у пайпе з less

./pkgsize 2>/dev/null | less
  • belarusian
  • russian

Когда-то очень давно у меня был только внутренний жёский диск в ноутбуке на 80 Gb и мне было очень неуютно. Постоянно приходилось что-то удалять, как-то умещаться. Теперь у меня есть ещё внешний диск на 500 Gb, на котором только музыки 80 Gb (+ несколько неразобранной) и который тоже уже почти заполнен, но который можно почистить. Гигабайт эдак на 100 :)

С тех самых времён у меня осталось наследие в виде корневого раздела Gentoo на 3.5 Gb. Ясное дело, жить на таком разделе очень тесно, но возможности переразметить нету, да и времени особо тоже нету, чтобы 80 гигабай туда-сюда тягать. Конечно, я подключаю при сборке /var/tmp/portage с внешнего диска, /home у меня отдельным разделом (где и кэш squid живёт гигабайтный), но вот устанавливать пакеты всё равно куда-то приходится.

Для начала я бы советовал вычищать огромные логи из /var/log (у меня сегодня за ночь 400 Мб скопилось, но это из-за потери внешнего диска, откуда музыка игралась и откуда torrent работал). Всякий хлам там скапливается не особо часто, но бывают случаи. Также стоит держать только одно дерево исходников ядра в /usr/src, потому как это тоже немало. Кроме того, в случае особо сильного дефицита места разумно держать несобранное ядро. Если при сборке модулей будут проблемы, то можно начать сборку ядра и остановиться как только пойдут внутренние модули, после стандартных сборочных процедур. Ну и du -m вам в помощь.

Помимо удаления неиспользуемых пакетов иногда хочется понять, что вообще в системе сколько места занимает. Из стандартных утилит такое умеет equery, но как-то структурированно вывод у неё получить не вышло, посему я написал свою приблуду, которая сортирует пакеты по размеру и выводит полный список. Получение данных может занять приличное время, займите себя чем-нибудь полезным :)

Загрузить скрипт pkgsize

Для запуска выполняем

chmod +x pkgsize
./pkgsize

Для отключения дополнительного вывода о прогрессе можно вызывать как

./pkgsize 2>/dev/null

Если у вас много пакетов в системе и вывод не умещается, то можно либо делать его в файл, либо использовать в пайпе с less

./pkgsize 2>/dev/null | less
{ Comments : 7 Comments » }
{ Tags: bash, disks, du-m, equery, gentoo, kernel, less, logs, packages, perl, pipes, pkgsize, portage, scripts, size }

callisto overlay

Oct 13 2008
Oasis – Roll It Over
  • belarusian
  • russian

Даўно трэба было пачаць падрыхтоўчую працу, а я ўсё неяк марудзіў, цяперака вось неяк усё сумбурна атрымалася, без шампанскага і ўэбдванолевых штуковін :)
Карацей, я зрабіў акрамя bobrik-cleartype яшчэ адзін overlay для Gentoo і назваў яго callisto. Трошкі пазьней я зраблю яму і хатнюю старонку, каб зусім яго аформіць.
Да нядаўняга часу там быў толькі ebuild mitter`а, так што я не сьпяшыў рэлізіць. Але вось я аднавіўся да 2.6.27 і ў мяне не змаглі сабрацца пад новае ядро ndiswrapper і nvidia-drivers.
Няшмат разважаючы я знайшоў патч для ndiswrapper і сабраў, але вось толькі ня ўсе так могуць зрабіць (ды й ня самы зручны мэтад), так што я пакуль што выкладу працоўную вэрсію ў свой овэрлэй.
Пакуль што буду выкладаць туды свае пакеты пад нармалёвымі імёнамі, а вось да рэлізу выпраўленых буду дадаваць 1, каб ыўтаматам падхопліваліся аднаўленьні, як гэта зроблена ў bobrik-cleartype. Магчыма, у будучым будзе асобны quickfix овэрлэй для выпраўленьняў, якія не пасьпелі яшчэ ўвайсьці ў асноўную галіну, тады callisto будзе трымаць выключна мае ebuild`ы. Вось такія пляны.
Што ж рабіць, каб карыстацца овэрлэем і ягонымі плюшкамі? Спачатку трэба наладзіць (а хто не паставіў, таму і ўсталяваць) layman. У файле /etc/layman/layman.cfg выстаўляем опцыю overlays прыкладна на наступнае:

overlays  : http://www.gentoo.org/proj/en/overlays/layman-global.txt

http://bobrik.name/gentoo/overlays.xml

Другі сьпіс уключае ў сабе таксама і овэрлэй bobrik-cleartype, так што, калі вы выкарыстоўваеце яго то можна выдаліць суадносны сьпіс.
Для аднаўленьня сьпісаў овэрлэяў і даданьня callisto неабходна выканаць наступныя крокі:

layman -f
layman -a callisto

Цяпер можна аўтаматычна аднавіць ndiswrapper ці поўнасьцю сістэму, каб атрымаць жаданы рэзультат:

emerge -uND world -av

Не забывайцеся з аднаўленьнем дрэва portage аднаўляць і овэрлэі камандаў layman -S ;)
p.s.: адпішу потым, як аформлю овэрлэй канчаткова, прапановы і фідбэк вітаюцца

  • belarusian
  • russian

Давно надо было начать подготовительную работу, а я всё как-то медлил, теперь вот всё как-то несколько сумбурно, без шампанского и вебдванолевых штуковин :)
В общем, я сделал помимо bobrik-cleartype ещё один overlay для Gentoo и назвал его callisto. Чуть позже я сделаю ему и домашнюю страничку, чтобы окончательно оформиться.
До недавнего времени там было только ebuild mitter`а, так что я не спешил релизить. Но вот я обновился до 2.6.27 и у меня не смогли собраться под новое ядро ndiswrapper и nvidia-drivers.
Недолго думая я нашёл патч для ndiswrapper и собрал, но вот только не все так могут сделать (да и не слишком удобно), так что я пока что выложу рабочую версию в свой оверлей.
Пока что буду выкладывать туда свои пакеты под нормальными именами, а вот к релизу исправленных буду добавлять 1, дабы автоматом подхватывались обновления, как это сделано в bobrik-cleartype. Возможно, в будущем будет отдельный quickfix оверлей для исправлений, которые не успели ещё попасть в основную ветку, тогда callisto будет содержать исключительно мои ebuild`ы. Вот такие планы.
Что же делать, для того, чтобы пользоваться оверлеем и его плюшками? Для начала стоит настроить (а кто не поставил, тем и поставить) layman. В файле /etc/layman/layman.cfg выставляем опцию overlays примерно на следующее:

overlays  : http://www.gentoo.org/proj/en/overlays/layman-global.txt

http://bobrik.name/gentoo/overlays.xml

Второй список включает в себя также и оверлей bobrik-cleartype, так что, если вы используете его то можно удалить соответствующий список.
Для обновления списков оверлеев и добавления callisto необходимо выполнить следующие шаги:

layman -f
layman -a callisto

Теперь можно автоматом обновить ndiswrapper или полностью систему, чтобы получить желаемый результат:

emerge -uND world -av

Не забывайте с обновлением дерева portage обновлять и оверлеи командой layman -S ;)
p.s.: отпишу потом, как оформлю оверлей окончательно, предложения и фидбэк приветствуются

{ Comments : No Comments » }
{ Tags: 2.6.27, bobrik-cleartype, callisto, gentoo, kernel, layman, linux, nvidia-drivers, overlays, portage, updates }

preserved libs

Aug 20 2008
Broken Iris – Beautiful Girl
  • belarusian
  • russian

Тыя карыстальнікі Gentoo, каторыя не баяцца карыстацца нестабільнай веткай пакетаў (накшталт ~x86), пасьля не такіх ужо даўніх аднаўленьняў на portage-2.2 маглі час ад часу пачаць заўважаць наступныя паведамленьні:

!!! existing preserved libs:
>>> package: media-libs/libdvdread-9999
* – /usr/lib/libdvdread.so.3
* – /usr/lib/libdvdread.so.3.2.1
Use emerge @preserved-rebuild to rebuild packages using these libraries

Страшэннага ў іх нічога няма, зараз я распавяду, штэ гэта азначае. Я ж таксама люблю bleeding edge, чаго ўжо там хаваць.
Дык вось, preserved libs – файлы, якія павінны былі быць выдаленыя сістэмай portage зь сістэмы, як файлы, якія належаць старой вэрсіі пакету. Напрыклад: у мяне стаіць (дакладней стаяў) libdvdread-9999. Заставім незамаскіраванасьць вэрсіі пакету на сумленьні гаспадароў овэрлэю berkano. Пры аднаўленьні са звычайнай вэрсіі ў libdvdread зьмянілася api, што аўтаматычна застаўляе распрацоўшчыкаў зьмяніць адну з апошніх лічбаў у назове файла бібліятэкі. У звычайнай вэрсіі быў libdvdread.so.3, а ў svn вэрсіі стаў libdvdread.so.4. Праграма, якія выкарыстоўвалі старую вэрсію api па ідэі павінны згубіць сваю апору, таму што libdvdread.so.3 павінен быць выдалены зь сістэмы як састарэўшы. Але ня так усё галіма, як падаецца, таму што новая фіча portage менавіта тым і займаецца, што вышуквае падобнага рожу праблемы і застаўляе старыя вэрсіі бібліятэк нараўне з новымі.
Portage таксама складае набор праграмаў, якія залежаць ад старой бібліятэкі і параіць іх перасабраць. Вельмі верагодна, што лінкоўка атрымаецца і з новай вэрсіяй. Для гэтага існуе каманда
emerge @preserved-rebuild
Згадзіцеся, даволі карысная фіча ;) Пасьля выкананьня ўсех залежнасьцяў старая вэрсія бібліятэкі будзе выдалена зь сістэмы. Праблема накшталт паломкі сістэмы праз аднаўленьне expat (больш-менш сталыя карыстальнікі павінны памятаць) вырашана, шыкоўна!
У мяне ня выйшла перасабраць k3b, таму я проста замаскіраваў libdvdread:

echo '=media-libs/libdvdread-9999' >> /etc/portage/package.mask
  • belarusian
  • russian

Те пользователи Gentoo, которые не брезгуют пользоваться нестабильной веткой пакетов (вроде ~x86), после не таких уж давних обновлений на portage-2.2 могли начать иногда замечать следующие сообщения:

!!! existing preserved libs:
>>> package: media-libs/libdvdread-9999
* – /usr/lib/libdvdread.so.3
* – /usr/lib/libdvdread.so.3.2.1
Use emerge @preserved-rebuild to rebuild packages using these libraries

Страшного в них ничего нету, сейчас я расскажу, что это значит. Я ведь тоже люблю bleeding edge, чего греха таить.
Так вот, preserved libs – файлы, которые должны были быть удалены системой portage из системы, как принадлежащие старой версии пакета. Например: у меня стот (точнее, стоял) libdvdread-9999. Оставим незамаскированность версии пакета на совести хозяев оверлея berkano. При обновлении с обычной версии у libdvdread сменилось api, что автоматически заставляет разработчиков изменить одну из последних цифр в названии файла библиотеки. В обычной версии был libdvdread.so.3, а в svn версии стал libdvdread.so.4. Программы, использовавшие старую версию api по идее должны были лишиться своей опоры, ибо libdvdread.so.3 должен быть удалён из системы как устаревший. Но не тут-то было, ведь новая фича portage именно тем и занята, что выискивает подобного рода проблемы и оставляет старые версии библиотек наравне с новыми.
Portage также создаст набор программ, зависящих от старой библиотеки и предложит пересобрать их. Очень может быть, что линковка получится и с новой версией. Для этого есть команда
emerge @preserved-rebuild
Согласитесь, не самая бесполезная фича ;) После соблюдения всех зависимостей старая версия библиотеки будет удалена из системы. Проблема типа поломки системы из-за обновление expat (более-менее старые пользователи должны помнить) решена, шикарно!
У меня не вышло пересобрать k3b, посему я просто замаскировал libdvdread:

echo '=media-libs/libdvdread-9999' >> /etc/portage/package.mask
{ Comments : No Comments » }
{ Tags: berkano, emerge, expat, gentoo, k3b, libdvdread, masking, overlays, portage, preserved libs, upgrade }

ruby overlay and building

Jul 29 2008
7раса – Куклы становятся старше
  • belarusian
  • russian

В Gentoo до недавнего времени насладиться прелестями ruby ветки 1.9 могли только разработчики самого дистрибутива (ну и постоянные читатели багзиллы). Но буквально на днях overlay был выпущен для всеобщего использования. Точнее, сегодня, потому что сразу после объявления в списке мне его найти не удалось, даже пришлось писать письмо ответсвенному человеку.
Теперь можно просто добавить оверлей, размаскировать пакет и обновиться:

layman -L && layman -a ruby
echo >=dev-lang/ruby-1.9.0 >> /etc/portage/package.unmask

Установку необходимо проводить с FEATURES=”-sandbox”, иначе рискуете не собрать, получив ошибку:
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb -I. -rrbconfig ./tool/compile_prelude.rb ./prelude.rb ./enc/prelude.rb ./gem_prelude.rb prelude.c
:0:in `require': no such file to load -- rbconfig (LoadError)
make: *** [prelude.c] Ошибка 1
make: *** Ожидание завершения заданий...
rbconfig.rb updated

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

Компиляция encoding.c может занять много времени и системных ресурсов, не удивляйтесь, оно того стоит (см. ниже)

Со сборкой стандартного ruby из portage у меня были проблемы, если указан USE флаг doc. При сборке скрипт создания документации съедал всю память. Видимо, старые, уже сгенерированные документы не высвобождали память. С новым рубином такого замечено не было, что приятно.
Ну и немножно приятного, чего мне и хотелось от нового ruby. Имеем файл test-unicode.rb следующего содержания:

# coding:utf-8

str = "Руби - отличный язык высокого уровня!"
puts str.length
puts str[3]
puts str.split('').inspect

Заметили костыль в виде # coding:utf-8? Он и будет заниматься тем, что все символы будут корректно обрабатываться. Немножко не так просто, как хотелось бы, но уже что-то :)
Выполнение ruby18 test-unicode.rb выдаст нам следующую лабуду:
67
131
["\320", "\240", "\321", "\203", "\320", "\261", "\320", "\270", " ", "-", " ", "\320", "\276", "\321", "\202", "\320", "\273", "\320", "\270", "\321", "\207", "\320", "\275", "\321", "\213", "\320", "\271", " ", "\321", "\217", "\320", "\267", "\321", "\213", "\320", "\272", " ", "\320", "\262", "\321", "\213", "\321", "\201", "\320", "\276", "\320", "\272", "\320", "\276", "\320", "\263", "\320", "\276", " ", "\321", "\203", "\321", "\200", "\320", "\276", "\320", "\262", "\320", "\275", "\321", "\217", "!"]

Запуск же свежесобранного ruby19 test-unicode.rb покажет следующее:
37
и
["Р", "у", "б", "и", " ", "-", " ", "о", "т", "л", "и", "ч", "н", "ы", "й", " ", "я", "з", "ы", "к", " ", "в", "ы", "с", "о", "к", "о", "г", "о", " ", "у", "р", "о", "в", "н", "я", "!"]

Что ж, куда лучше, не правда ли? :) Очень советую тем, кто ищет что изучить, попробовать ruby, будете приятно удивлены элегантностью и гибкостью ;)
p.s.: заметки по портированию с 1.8 на 1.9 (англ.)

  • belarusian
  • russian

У Gentoo да нядаўніх часоў атрымаць асалоду ад фішак ruby галіны 1.9 маглі толькі распрацаўшчыкі самаго дыстрыбутыву, (ну й пастаянныя чытачы багзіллы). Але буквальна на днях overlay быў выпушчаны для агульнага карыстаньня. Дакладней, сёньня, бо пасьля абвесткі адразу ў сьпісе мне яго знайсьці не атрымаласа, нават ліставаў адказнаму чалавеку
Цяпер можна дадаць овэрлэй, размаскіраваць пакет і аднавіцца:

layman -L && layman -a ruby
echo >=dev-lang/ruby-1.9.0 >> /etc/portage/package.unmask

Усталёўку неабходна праводзіць зь FEATURES=”-sandbox”, інакш маеце рызыку не сабраць, атрымаўшы памылку:
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb -I. -rrbconfig ./tool/compile_prelude.rb ./prelude.rb ./enc/prelude.rb ./gem_prelude.rb prelude.c
:0:in `require': no such file to load -- rbconfig (LoadError)
make: *** [prelude.c] Ошибка 1
make: *** Ожидание завершения заданий...
rbconfig.rb updated

Але, памылку можна і не атрымаць, тут ад надвор’я залежыць. У дождж сабралося і бяз гэтага кастыля. Праўда, на тым жа тэрмінале, магчыма, запомніла пераменныя.
Ruby будзе ўсталяваны ў новы слот, так што застанецца яшчэ і ветка 1.8.

Кампіляцыя encoding.c можа заняць шмат часу і сістэмных рэсурсаў, не зьдзіўляцеся, яно таго вартае (гл. ніжэй)

Са зборкай стандартнага ruby з portage у мяне были праблемы, калі указаны USE флаг doc. Пры зборцы сцэнар стварэньня дакумэнтацыі зьядаў ўсю памяць. Магчыма, старыя, ужо згенераваныя дакуманты не вызвалялі памяць. З новым рубінам такога заўважана не было, што прыемна.
Ну і трошкі прыемнага, чаго мне і хацелася ад новага ruby. Маем файл test-unicode.rb наступнага зьместу:

# coding:utf-8

str = "Рубі - выдатная мова высокага ўзроўню! ?yko?naja!"
puts str.length
puts str[3]
puts str.split('').inspect

Заўважылі кастыль ў выглядзе # coding:utf-8? Ён і будзе займацца тым, што ўсе сымбалі будуць карэктна апрацоўвацца. Трошкі ня так проста, як хацелася б, але ўжо штосьці :)
Выкананьне ruby18 test-unicode.rb выдасьць нам наступную лабуду:
82
131
["\320", "\240", "\321", "\203", "\320", "\261", "\321", "\226", " ", "-", " ", "\320", "\262", "\321", "\213", "\320", "\264", "\320", "\260", "\321", "\202", "\320", "\275", "\320", "\260", "\321", "\217", " ", "\320", "\274", "\320", "\276", "\320", "\262", "\320", "\260", " ", "\320", "\262", "\321", "\213", "\321", "\201", "\320", "\276", "\320", "\272", "\320", "\260", "\320", "\263", "\320", "\260", " ", "\321", "\236", "\320", "\267", "\321", "\200", "\320", "\276", "\321", "\236", "\320", "\275", "\321", "\216", "!", " ", "\305", "\240", "y", "k", "o", "\305", "\255", "n", "a", "j", "a", "!"]

Запуск сьвежасабранага ruby19 test-unicode.rb адлюструе наступнае:
49
і
["Р", "у", "б", "і", " ", "-", " ", "в", "ы", "д", "а", "т", "н", "а", "я", " ", "м", "о", "в", "а", " ", "в", "ы", "с", "о", "к", "а", "г", "а", " ", "ў", "з", "р", "о", "ў", "н", "ю", "!", " ", "?", "y", "k", "o", "?", "n", "a", "j", "a", "!"]

Ну што, куды лепей, ці ня так? :) Вельмі раю тым, хто жадае нешта вывучыць, паспрабаваць ruby, будзеце прыемна зьдзіўленыя элегантнасьцю і гнуткасьцю ;)
p.s.: нататкі па партаваньню з 1.8 на 1.9 (ангельская)

{ Comments : 2 Comments » }
{ Tags: bugs, coding, emerge, features, gentoo, howto, overlays, portage, ruby, unicode, use }

block ssh bastards

Jul 21 2008
Radiohead – Videotape
  • belarusian
  • russian

Захотелось немножко защитить свой нынче безащитный ноутбук, хостящийся по адресу bobrik.homelinux.org (ftp, http & ssh) от атак навязчивых эмокидов, стремящихся захватить меня в ботнет. FTP только анонимный, http вообще пока не для того висит, поэтому надо было защитить ssh. После недолгих раздумий и проб вариантов мой выбор пал на denyhosts. С первоначальной настройкой были сложности, потому считаю не лишним поделиться и разбавить социалку в блоге :-)
Для установки denyhosts в Gentoo необходимо выполнить следующие действия:
bobrik ~ # echo 'net-misc/openssh tcpd' > /etc/portage/package.use
emerge net-misc/openssh
/etc/init.d/sshd restart
emerge app-admin/denyhosts

Без tcp-wrappers, которые ставятся благодаря USE=”tcpd”, sshd будет просто игнорировать /etc/hosts.deny.
После неудачных попыток залогиниться с хоста не с тем паролем, получаю такое сообщение:
bobrik@voldemar:~$ ssh bobrik.homelinux.org
ssh_exchange_identification: Connection closed by remote host

Теперь почему denyhosts. Во-первых, тут очень неплохой функционал и настройка через конфиг, варианты запуска (daemon или cron). Во-вторых, blocksshd мне не подходит, потому что тянет кучу перловых модулей, а sshguard отказался блокировать навязчивые попытки моего брутфорса.
p.s.: есть подозрения, что в /etc/sshd_config выставление
SyslogFacility AUTH
LogLevel INFO

не будут лишним

  • belarusian
  • russian

Захацелася мне трошкі абараніць свой безахоўны ноўтбук, які зараз зосьціцца па адрасе bobrik.homelinux.org (ftp, http & ssh) ад атак навязьлівых эмакідаў, якія хочуць захапіць мяне ў ботнэт. FTP толькі ананімны, http увогуле пакуль не дзеля таго вісіць, таму трэба было абараніць ssh. Пасьля нядоўгіх роздумаў і спроб варыянтаў мой выбар паў на denyhosts. З першапачатковай наладкай былі цяжкасьці, таму лічу ня лішнім падзяліцца і разбавіць сацыялку ў блёгу :-)
Для ўсталёўкі denyhosts у Gentoo неабходна выканаць наступныя дзеяньні:
bobrik ~ # echo 'net-misc/openssh tcpd' > /etc/portage/package.use
emerge net-misc/openssh
/etc/init.d/sshd restart
emerge app-admin/denyhosts

Бяз tcp-wrappers, якія ставяцца дзякуючы USE=”tcdp”, sshd будзе проста ігнараваць /etc/hosts.deny.
Пасьля няўдалых спроб залёгініцца з хосту ня з тым паролем, атрымліваю наступнае паведамленьне:
bobrik@voldemar:~$ ssh bobrik.homelinux.org
ssh_exchange_identification: Connection closed by remote host

Тяпер чаму denyhosts. Па-першае, тут вельмі неблагі функцыянал і наладка праз конфіг, варыянту запуску (daemon ці cron). Па-другое, blocksshd мне не падыходзіць, таму што цягне кіпу пярловых модуляў, а sshguard адмовіўся блякаваць навязьлівыя спробы майго брутфорсу.
p.s.: ёсьць падазрэньні, што ў /etc/sshd_config выстаўленьне
SyslogFacility AUTH
LogLevel INFO

ня будзе лішнім

{ Comments : 7 Comments » }
{ Tags: blocksshd, denyhosts, gentoo, homelinux, hosts.deny, howtos, installation, notebook, perl, portage, securyty, ssh, sshguard, tcp-wrappers, tcpd, use }

« Previous Entries

RSS antisocial feeling

  • Ворачиваться в страну шпрот собираешься?
  • (via priskorbno) хочу. давно хотел. где купить?
  • ??
  • "((foldl (+) 0 [1..100]) ^ 2) - (foldl (+) 0 (map (^ 2) [1..100]))"
  • ?

Tags

bash belarus blog blogs bugs coding concerts download friends fun gentoo google images internet javascript kde language life links linux livejournal me money music overlays perl photos php plugins portage projects rss school shell social social networks ssh studying tests twitter ubuntu univer vkontakte wifi wordpress

links

  • asocial feeling
  • Callisto overlay
  • daThumbs
  • last.fm
  • twitter
  • Vkontakte
  • ~idioteque

Recent Comments

  • Daniil.Cravetz on drafts
  • neagaoleg on Hide Mentions in Twitter Web Interface
  • neagaoleg on about
  • Martina Bella on @unfollowr
  • gamersroute.com on WordPress-bbPress syncronization
  • gamersroute.com on WordPress-bbPress syncronization
  • JohnnyBCool on @unfollowr
  • bobrik on @listwatcher
  • Alper on @listwatcher
  • itomi on WordPress-bbPress syncronization

Archives

  • January 2010 (1)
  • November 2009 (2)
  • October 2009 (5)
  • September 2009 (2)
  • August 2009 (2)
  • July 2009 (3)
  • June 2009 (1)
  • April 2009 (2)
  • March 2009 (1)
  • February 2009 (1)
  • January 2009 (2)
  • December 2008 (12)
  • November 2008 (17)
  • October 2008 (20)
  • September 2008 (13)
  • August 2008 (25)
  • July 2008 (18)
  • June 2008 (15)
  • May 2008 (7)
  • March 2008 (1)
  • February 2008 (9)
  • January 2008 (11)
  • December 2007 (24)
  • November 2007 (27)
  • October 2007 (21)

Meta

  • Log in
  • Entries RSS
  • Comments RSS
  • WordPress.org

Creative Commons License rss comments rss valid xhtml