Oneliner

Aus dem IServ-Wiki
Version vom 4. Januar 2012, 11:10 Uhr von Dominik Scholz-Schulze (Diskussion | Beiträge) (Änderungen von Reverse22 (Diskussion) rückgängig gemacht und letzte Version von Martin von Wittich wiederhergestellt)
Zur Navigation springen Zur Suche springen

Benutzer/Gruppen

Die Gruppen mit den meisten Mitgliedern auflisten
befehl
cat /etc/group | perl -ne 'my @p = split(/:/, $_); print scalar (split(/,/, $p[3])) . " " . $p[0] . "\n";' | sort -n | tail
Benutzer mit Standardpasswort auflisten
root
perl -e '$_[1] eq "*undef*" and print $_[0].$/ while @_ = getpwent'

System

Aktuelleren Kernel (> 2.6.30) auf Lenny-Servern installieren
root
aptitude install -t lenny-backports linux-image-2.6-686-bigmem
initramfs entpacken
befehl
cd
mkdir initrd
cd initrd
zcat /boot/my-initramfs.cpio.gz | (while true; do cpio -i -d -H newc --no-absolute-filenames || exit; done)
initramfs packen
befehl
cd initrd
find | cpio -H newc -o | bzip2 -c > /boot/my-initramfs.cpio.bz2
Pakete finden, die in ihrer aktuellen Version nicht herunterladbar sind[1]
befehl
aptitude search '?narrow(?not(?archive("^[^now]{3}.*$")),?version(CURRENT))'

Spamfilter

SpamAssassin-Statistiken ausgeben
root
HOME=/var/lib/spamassassin sudo -u spamassassin sa-learn --dump magic
Mail vom Spamfilter untersuchen lassen
root
cat mail.txt | spamassassin-test -D

Netzwerk/Internet

Downloads auflisten lassen, die die DSL-Bandbreite des Servers verstopfen
befehl
tail -f /var/log/apache2/access.log | awk '{if ($10 > 1000000) { print $10 "\t" $7}}'
squidGuard testen, ob eine bestimmte URL von einem bestimmten Rechner aus erreichbar ist
befehl
echo "http://rotten.com 192.168.0.51/- - GET" | squidGuard

Liefert folgende Ausgabe, wenn die Seite gesperrt ist:

datei
302:http://mein-iserv.de/idesk/inet/block.php?grp=porn&url=http://rotten.com 192.168.0.51/- - GET

Liefert eine leere Zeile, wenn die Seite abgerufen werden darf.

Fortlaufende IP-Ranges in die Rechnerverwaltung eintragen und freischalten
root
for i in $(seq -f '%02g' 1 39); do psql -tc "INSERT INTO hosts (name, room, ip, display, route) VALUES ('VerwaltungWLAN-$i', 'Verwaltung', '192.168.10.160'::INET + $i, false, true);"; done
/usr/lib/iserv/newhosts
Port 25 überwachen, um Spambots zu finden (Interface und IP vom IServ ggf. anpassen)
root
tshark -t ad -li eth0 "port 25 and not host 10.0.0.1" -R smtp | tee smtp.log

Datenbank

In psql die Tabellen auflisten, die den meisten Speicher belegen
datei
SELECT nspname || '.' || relname AS "relation",
    pg_size_pretty(pg_total_relation_size(C.oid)) AS "total_size"
  FROM pg_class C
  LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
  WHERE nspname NOT IN ('pg_catalog', 'information_schema')
    AND C.relkind <> 'i'
    AND nspname !~ '^pg_toast'
  ORDER BY pg_total_relation_size(C.oid) DESC
  LIMIT 20;
In psql Rechner auflisten, deren Namen sich nur durch Groß- und Kleinschreibung unterscheiden
datei
SELECT name,mac,ip FROM hosts WHERE LOWER(name) IN
  (SELECT LOWER(name) FROM HOSTS GROUP BY LOWER(name) HAVING COUNT(*) > 1);

Windows

System-Ereignisprotokoll in der Konsole ausgeben (Alle Ereignisse, ohne Details)
befehl
cscript %systemroot%\system32\eventquery.vbs /l system
System-Ereignisprotokoll in der Konsole ausgeben (Nur die 10 neuesten Ereignisse, mit Details)
befehl
cscript %systemroot%\system32\eventquery.vbs /l system /r 10 /v
Anwendung-Ereignisprotokoll in der Konsole ausgeben (Nur die 10 neuesten Ereignisse, mit Details)
befehl
cscript %systemroot%\system32\eventquery.vbs /l application /r 10 /v

Manchmal auch:

befehl
cscript %systemroot%\system32\eventquery.vbs /l anwendung /r 10 /v



  1. Ja, der Hack ist so dreckig, wie er aussieht. Quelle: [1]