Witam w nocy dziś miałem włamanie na serwer i teraz mam problem bo nie mogę go uruchomić do końca.
A mianowicie włamanie było na konto roota poprzez bruteforce. Zainstalowano mi lOvErBoY's Private Scanner i namieszano coś w systemie.
Teraz gdy się uruchamia na jądrze 2.6.22.12 dochodzi do startu INIT i wyrzuca błędy
nie mam również dostępu do drugiego dysku SATA sdb. Wykrywa go system podczas startu. Linux go podczas uruchamiania usług wykrywa jednak po starcie na jądrze standardowym, już go nie ma w systemie i nie można go ani podejrzeć ani zainstalować.
Błędy:
INIT: version 2.86 booting
/etc/init.d/rc: line 40; 1060 Segmentation fault stty onlcr 0>&1
/etc/rcS.d/S03udev: line 23: 1116 Segmentation fault chmod 700 /dev/.static/
Mount point '/dev/shm' does not exist. Skipping mount.
/etc/rcS.d/S10checkroot.sh: line 24: 1159 Segmentation fault rm -f /lib/init/rw/rootdev
The device node /dev/sda1 for the root filesystem is missing or incorect or the is no entry for the root filesystem listed in /etc/fstab.
The system is also unable to create a temporary node in /lib/init/rw
A maintenance shell will now be started
iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --set
iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP
mozesz im pokazac palca - dodaj to do jakis skryptow startowych i od tej pory bedzie sie mozna zalogowac przez SSH tylko 3 razy na minute, co ich powaznie spowolni
#!/bin/bash
log="/var/log/auth.log"
blokujemy="/home/user/skrypty/blokowane"
#robimy dump starej bazy
cat $blokujemy > /home/user/skrypty/blokowane.backup
ILE=1
for x in $(cat $log | grep 'invalid user' | awk '{print$13}' | grep -v -f $blokujemy | sort | uniq && /
cat $log | grep 'string from' | awk '{print$12}' | grep -v -f $blokujemy | sort | uniq ); do
echo $x >> $blokujemy
ILE='expr $ILE + 1'
if [ "$x" != 0 ]
then
/etc/init.d/firewall rebotnij
exit 1
fi
done
exit 0
Skrypt powyżej wrzucony do crona np. co godzinę będzie nam sprawdzał czy nie ma prób bruta na ssh i jeśli coś znajdzie wrzuci to do blokowanych. Teraz tworzymy sobie regułkę w naszym skrypcie firewall
JarekMk pisze:A nie lepiej zmienić port na jakiś wysoki i włączyć logowanie dl SSH jedynie z naszego adresu IP?
Zamiana portu - oczywiście + do tego denyhosts. Pozwolenie na logowanie z jednego ip bywa czasami uciążliwe, kiedy trzeba dostać się na maszynę z dziwnego miejsca. Oczywiście mowa tutaj o zwykłych serwerach bez wyrafinowanych form dostępu.
Ja zawsze wyłączam roota z logowania, zmieniam port na wyższy i zabraniam logowania tylko z hasłami. Jedyna dozwolona forma logowania to klucze publiczne.
A w logach znajduje masze prób połączenia z portami 22, 222, 2222.