(βλ εντολές sysrq)
Κατεβάζουμε τον πηγαίο κώδικα από http://marek.terminus.sk/prog/ipt_sysrq.shtml
Εγκαθιστούμε τις εξαρτήσεις που θα μας χρειαστούν
aptitude install iptables-dev fakeroot
Θα κάνουμε κάποιες αλλαγές στο makefile-2.6 (κάνουμε και ένα backup καλού κακού)
cd src cp Makefile-2.6 Makefile-2.6.bak
Αφαιρούμε τις γραμμές με – και προσθέτουμε αυτές με ++
ipt_SYSRQ.ko: Makefile ipt_SYSRQ-module.c sha1.c rsysrq_protocol.c $(MAKE) -C $(KERNEL_SOURCES) SUBDIRS=$(PWD) modules --libipt_SYSRQ.o: libipt_SYSRQ.c -- gcc -Wall -DNETFILTER_VERSION=\""$(IPTVERSION)"\" -c $< -o $@ --libipt_SYSRQ.so: libipt_SYSRQ.o -- ld -shared -o $@ $< ++libipt_SYSRQ.so: libipt_SYSRQ.c ++ gcc -fpic -shared -Wall -DNETFILTER_VERSION=\""$(IPTVERSION)"\" -o $@ $< %.o: %.c gcc -Wall -O3 -o $@ -c $<
Επίσης τροποποιούμε το ipt_sysrq/for_debian/control Αλλάζουμε το
Depends: kernel-image-__KERNEL_IMAGE__
σε
Depends: linux-image-__KERNEL_IMAGE__
Εκτελούμε το παρακάτω script
./make_debian.sh cd .. dpkg -i *.deb depmod -a modprobe ipt_SYSRQ passwd="my_secret" tolerance=600 iptables -I INPUT -p udp --dport 9 -j SYSRQ
Για να στείλουμε εντολή αντιγράφουμε το εκτελέσιμο /src/send_sysrq και το καλούμε
send_sysrq -p 9 192.168.1.10 sesisub
Εγκαθιστούμε με
aptitude install sysrqd
Στην συνέχεια στο αρχείο /etc/sysrqd.secret ορίζουμε έναν κωδικό. Δυστυχώς είναι χωρίς κρυπτογράφηση οπότε πρέπει να κάνουμε το αρχείο αναγνώσιμο/εγγραψιμο μόνο από τον root
chmod 0600 /etc/sysrqd.secret
Καλό είναι να αλλάξουμε και την θύρα απομακρυσμένης σύνδεσης
Συνδεόμαστε απομακρυσμένα με
telnet <hostname> <port>
Για να αποσυνδεθούμε
sysrq> q
Καλή σειρά εντολών είναι η εξής
sysrq> s sysrq> u sysrq> s sysrq> e sysrq> s sysrq> i sysrq> b
Για να επαννεκιννηθεί ο server μετά από shutdown, από το τοπικό δίκτυο εκτελούμε
wakeonlan 00:0F:EA:A1:B5:B2
ή
etherwake -i eth0 00:0F:EA:A1:B5:B2
Εάν δεν γνωρίζουμε την mac address μπορούμε να δούμε εάν υπάρχει στο arp ιστορικό
cat /proc/net/arp
Μέσω internet χρειαζεται να ανοίξουμε την θύρα 9 (tcp/udp για σιγουριά) (δεν δουλεύει στον Linksys WAG200G)
wakeonlan -i www.mydomain.gr 00:0F:EA:A1:B5:B2