>>>1. Обновить ssh демон не получается, и вообще обновить установленные приложения, ssh
>>>что то не видно в установленных портах как он может обзыватся
>>
>>SSH установился при инсталяции фри и его в списке установленных программ ты
>>не увидишь. Тут вариант такой: ставишь из портов новый sshd, вешаешь
>>его на другой порт (например 2222). Проверяешь работу, старый отключаешь, новый
>>перевешиваешь на 22 порт.
>Если я буду ставить с портов, он же сам на 22 и
>сядет или как его к др. прикрутить порту?
>
>
>>обнови сначала порты cvsup -g -L2 /путь/до/supfile
>>Заходишь в /usr/ports/sysutils/portupgrade
>>делаешь make deinstall
>>далее make install
>>Потом апгрейдь что надо.
>
>Сделал, не получается :(
>Я так пнимаю ноужно Makefile другой или INDEX какойто кривой cvsup делает
>:(
>После переустановки portupgrade..
>
># portsdb -Uu
>Updating the ports index ... Generating INDEX.tmp - please wait.."Makefile", line 61:
>warning: String comparison operator should be either == or !=
>"Makefile", line 61: Malformed conditional (defined(PHP_VERS) && ${PHP_VERS} < 420)
>"Makefile", line 61: Need an operator
>"Makefile", line 63: if-less endif
>"Makefile", line 63: Need an operator
>make: fatal errors encountered -- cannot continue
>===> databases/pear-MDB2 failed
>*** Error code 1
>1 error
>
>********************************************************************
>Before reporting this error, verify that you are running a supported
>version of FreeBSD (see http://www.FreeBSD.org/ports/) and that you
>have a complete and up-to-date ports collection. (INDEX builds are
>not supported with partial or out-of-date ports collections -- in
>particular, if you are using cvsup, you must cvsup the "ports-all"
>collection, and have no "refuse" files.) If that is the case,
>then
>report the failure to ports@FreeBSD.org together with relevant
>details of your ports configuration (including FreeBSD version,
>your architecture, your environment, and your /etc/make.conf
>settings, especially compiler flags and WITH/WITHOUT settings).
>
>Note: the latest pre-generated version of INDEX may be fetched
>automatically with "make fetchindex".
>********************************************************************
>
>*** Error code 1
>
>Stop in /usr/ports.
>*** Error code 1
>
>Stop in /usr/ports.
>failed to generate INDEX!
>portsdb: index generation error
нужно воспользоваться sockstat или lsof из портов чтобы посмотреть
что запущено и что генерит траффик, trafshow - тоже из портов.
Если установлен RELEASE, можно воспользоваться готовыми пакетами для
него: trafshow, lsof и кое-что из security и sysutils
Если же, допустим, произошла подмена ps и других важных системных
утилит -> самый правильный подход взять КОМПАКТ или ДИСТРИБУТИВ с которого
вы ставили свой release и развернуть оттуда заново sources ПОВЕРХ
текущих (на случай если вам изменили что-то прямо в sources - /usr/src),
после чего перезагрузиться в single-user mode, и пересобрать МИР:
boot -s (грузимся в single-user)
производим проверку всех необходимых FS (файловых систем)
# cat /etc/fstab
# fsck -y /
# fsck -y /usr
# fsck -y ...
после того как "продули" все нужные FS, монтируем их на RW:
# mount -w /
# mount -w /usr
...
# cd /usr/src
# make buildworld
# make installworld
# reboot
Снова грузимся в single-user mode (boot -s)
Все как и раньше: fsck, затем mount, ПОСЛЕ ЧЕГО:
- меняем рутовый пароль и ищем в /root ВСЕ что может дать доступ,
проверка например .rhosts и .ssh/auth* файлов и тд и тп, затем
смотрим кто входит в группу wheel и блокируем им вход, или меняем
пароли, тоже самое и с sudo - если использовалось. Далее смотрим
запускается ли у нас inetd и что в нем, затем содержимое скриптов в
/usr/local/etc/rc.d, затем сравниваем ВСЕ md5 скриптов /etc/rc* и
/etc/rc.d/* с суммами их оригиналов из /usr/src/etc
После верхних действий и устранения найденных проблем, поднимаем машину
в multiuser mode:
теперь у нас 100% уверенность в ЧИСТОТЕ самой системы и системных
утилит, далее начинаем искать ПОДЦЕПЛЕННОЕ или ВКЛЯЧЕННОЕ гавно,
если конечно его воткнули в автозапуск и завуалировали.
Если нет такого в автозапуске, запуск скриптов из периодиков для
проверки ГОВНА содержащего SUID bit там где их не должно быть, если
нашли - изучаем с помощью strings и трассировщиков, отладчиков и
перекладываем или копируем в ЛИЧНЫЙ архив (действия зависят от того
ЧТО мы хотим - найти взлом или только устранить)
Если ничего не нашли - продолжаем искать у пользователей и в разных
"далеких" уголках FS :)
Главное что после пересборки ВСЕЙ системы из оригинальных sources - сама
система будет чистая и значит проще найти проколы.
Ну и как всегда использовать логи, если их не почистили совсем или
не вычистили из них моменты вторжения и последующих действий