Erinevus lehekülje "Kasutaja:Jj" redaktsioonide vahel
(→NB Mitte puududa) |
|||
| 35. rida: | 35. rida: | ||
Loeme tulemust | Loeme tulemust | ||
| + | |||
| + | peaks nt -s 1600 võtmega kogu paketi sisu salvestama | ||
<source lang=bash> | <source lang=bash> | ||
Redaktsioon: 26. august 2010, kell 16:18
Personaalne jj arendusnurk ehk sodinurk kuutõrvajas
Mõte! Kuutõrvaja keskendunud liiga internetile
NB Mitte puududa
Must materjal
- jj sodinurk testimiseks ja kiireteks ideedeks
- pppoe kiire
- Haldustarkvara
- terminal server FreeBSD näitel
- atacontrol
- Promtpt
- apache ssl täiendust vajav
- apache suexec php freebsd
- vinum gvinum ja geom
- rrdool snmp ja süsteemse info alusel graafikute joonistamine
- nagios monitooring - vaja neist kahest kokku panna midagi
# tcpdump 'tcp port 25'
või
# tcpdump host zoo.tartu.ee
anname käsu
# echo test| jj@eenet.ee
Loeme tulemust
peaks nt -s 1600 võtmega kogu paketi sisu salvestama
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on nge0, link-type EN10MB (Ethernet), capture size 96 bytes
16:36:35.742819 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [S], seq 2077958786, win 65535, options [mss 1460,nop,wscale 5,sackOK,TS val 3381712014 ecr 0], length 0
16:36:35.743068 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [S.], seq 3622317289, ack 2077958787, win 65535, options [mss 1440,nop,wscale 3,sackOK,TS val 1252212263 ecr 3381712014], length 0
16:36:35.743113 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [.], ack 1, win 2052, options [nop,nop,TS val 3381712015 ecr 1252212263], length 0
16:36:35.744127 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 1, win 8326, options [nop,nop,TS val 1252212264 ecr 3381712015], length 37
16:36:35.744349 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [P.], ack 38, win 2052, options [nop,nop,TS val 3381712016 ecr 1252212264], length 23
16:36:35.744589 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 24, win 8326, options [nop,nop,TS val 1252212265 ecr 3381712016], length 140
16:36:35.746232 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [P.], ack 178, win 2052, options [nop,nop,TS val 3381712018 ecr 1252212265], length 10
16:36:35.746436 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 34, win 8326, options [nop,nop,TS val 1252212266 ecr 3381712018], length 30
16:36:35.747158 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [P.], ack 208, win 2052, options [nop,nop,TS val 3381712019 ecr 1252212266], length 120
16:36:35.750071 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 154, win 8326, options [nop,nop,TS val 1252212270 ecr 3381712019], length 1386
16:36:35.769312 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [P.], ack 1594, win 2052, options [nop,nop,TS val 3381712041 ecr 1252212270], length 198
16:36:35.771595 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 352, win 8326, options [nop,nop,TS val 1252212292 ecr 3381712041], length 59
16:36:35.772487 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [P.], ack 1653, win 2052, options [nop,nop,TS val 3381712044 ecr 1252212292], length 53
16:36:35.772714 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 405, win 8326, options [nop,nop,TS val 1252212293 ecr 3381712044], length 181
16:36:35.772879 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [P.], ack 1834, win 2052, options [nop,nop,TS val 3381712044 ecr 1252212293], length 69
16:36:35.773088 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 474, win 8326, options [nop,nop,TS val 1252212293 ecr 3381712044], length 53
16:36:35.773654 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [P.], ack 1887, win 2052, options [nop,nop,TS val 3381712045 ecr 1252212293], length 69
16:36:35.774446 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 543, win 8326, options [nop,nop,TS val 1252212294 ecr 3381712045], length 85
16:36:35.774935 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [P.], ack 1972, win 2052, options [nop,nop,TS val 3381712047 ecr 1252212294], length 597
16:36:35.875501 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [.], ack 1140, win 8326, options [nop,nop,TS val 1252212396 ecr 3381712047], length 0
16:36:35.875556 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [P.], ack 1972, win 2052, options [nop,nop,TS val 3381712147 ecr 1252212396], length 37
16:36:35.876447 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 1177, win 8326, options [nop,nop,TS val 1252212396 ecr 3381712147], length 69
16:36:35.877268 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [P.], ack 2041, win 2052, options [nop,nop,TS val 3381712149 ecr 1252212396], length 37
16:36:35.877522 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 1214, win 8326, options [nop,nop,TS val 1252212398 ecr 3381712149], length 53
16:36:35.877912 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [F.], seq 1214, ack 2094, win 2052, options [nop,nop,TS val 3381712149 ecr 1252212398], length 0
16:36:35.878104 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [P.], ack 1215, win 8326, options [nop,nop,TS val 1252212398 ecr 3381712149], length 37
16:36:35.878150 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [R], seq 2077960001, win 0, length 0
16:36:35.878157 IP muheleja.eenet.ee.smtp > ymiseja.eenet.ee.58869: Flags [F.], seq 2131, ack 1215, win 8326, options [nop,nop,TS val 1252212398 ecr 3381712149], length 0
16:36:35.878165 IP ymiseja.eenet.ee.58869 > muheleja.eenet.ee.smtp: Flags [R], seq 2077960001, win 0, length 0
Proovime korrata mida tegime
Paneme tcpdumbi uuesti kuulama ja seekord salvestame faili ning saadame uuesti maili
# tcpdump -w port.25.send.txt 'tcp port 25' tcpdump: listening on nge0, link-type EN10MB (Ethernet), capture size 96 bytes 29 packets captured 1462 packets received by filter 0 packets dropped by kernel
Saime fali mis sisaldab kogu sessiooni infot
Saadame selle edasi
# bittwist -i nge0 port.25.send.txt sending packets through nge0 trace file: port.25.send.txt 29 packets (5249 bytes) sent Elapsed time = 0.268020 seconds
http://www.cyberciti.biz/faq/tcpdump-capture-record-protocols-port/
salvestatud info tagasi võrku http://tcpreplay.synfin.net/
# tcpdump -n -c 30 -w port.80.debug.txt tcpdump: listening on nge0, link-type EN10MB (Ethernet), capture size 96 bytes 30 packets captured 308 packets received by filter 0 packets dropped by kernel
-c Exit after receiving count packets.
# bittwist -i nge0 port.80.debug.txt sending packets through nge0 trace file: port.80.debug.txt 30 packets (24057 bytes) sent Elapsed time = 0.170292 seconds
# bittwist -v -i nge0 port.25.send.txt sending packets through nge0 trace file: port.25.send.txt 16:42:12.252747 #1 (74 bytes) 16:42:12.255318 #2 (74 bytes) 16:42:12.258315 #3 (66 bytes) 16:42:12.261313 #4 (103 bytes) 16:42:12.264312 #5 (89 bytes) 16:42:12.267314 #6 (206 bytes) 16:42:12.271313 #7 (76 bytes) 16:42:12.274313 #8 (96 bytes) 16:42:12.277313 #9 (186 bytes) 16:42:12.282329 #10 (1452 bytes) 16:42:12.304316 #11 (264 bytes) 16:42:12.309314 #12 (125 bytes) 16:42:12.312316 #13 (119 bytes) 16:42:12.315314 #14 (247 bytes) 16:42:12.318317 #15 (135 bytes) 16:42:12.321313 #16 (119 bytes) 16:42:12.324314 #17 (135 bytes) 16:42:12.327312 #18 (151 bytes) 16:42:12.330320 #19 (663 bytes) 16:42:12.433337 #20 (66 bytes) 16:42:12.436316 #21 (103 bytes) 16:42:12.499345 #22 (135 bytes) 16:42:12.502314 #23 (103 bytes) 16:42:12.505315 #24 (119 bytes) 16:42:12.508317 #25 (66 bytes) 16:42:12.511317 #26 (103 bytes) 16:42:12.514315 #27 (54 bytes) 16:42:12.517315 #28 (66 bytes) 16:42:12.520316 #29 (54 bytes) 29 packets (5249 bytes) sent Elapsed time = 0.267831 seconds
http://bittwist.sourceforge.net/doc/bittwist.1.html saadab pcap faili tagasi kust tuli
http://danielmiessler.com/study/tcpdump/
Tüütute ussitavate ipde blokeerimiseks võib anda ka käske stiilis
# route add -host 84.15.122.115 gw 127.0.0.1
või terve subneti puhul
# route add -net 64.202.165.0/24 gw 127.0.0.1
rakendamisel viskas praeguse (normaalse) koormuse juures loadi 20-le. Siis kommenteerisin välja suure hulga reegleid, mis spämmisaatmise vastu võitlevad (regexpi kontrollid) ja load jäi 1 ja 1.5 kanti.
Ilmselt on mõistlik badips.conf fail küljes hoida, et vähendada DDoSi võimalust pisutki, põhireeglid rules.conf kah ilmselt mõistlik. Hetkel küljes ka rootkits.conf, mis peaks tõkestama kõiksugu failide includemised jmt.
/var/log/httpd/modsec_audit.log failist saab jälgida, kelle ta ära blokib. Tundub, et üsna hoogsalt üritatakse mingit spämmi vms edastada.
Apache 1.3 puhul tasub mod_security kompileerida libpcre abil ja panin apache libpcre sisse laadima - nii ei kasutata enam apache 1.3 seesmist regexi mootorit mis on pcre-st kordades aeglasem.
Ühtlasi jätsin alles reeglid: rules.conf ja rootkits.conf (badips oli 7000 rida IP numbreid, mida võiks põhimõtteliselt tulemüüri või kuhugi toppida ja ei pea apache regexides kasutama).
Seejärel on masina load 0.4 - 0.8 kandis püsinud. Ehk võib siis käima jätta niimoodi.
PS. Kui keegi kurdab, et tal asjad ei tööta, siis tuleks auditi logist uurida ja vajadusel /etc/apache/modsecurity/exclude.conf-is sealsete näidete alusel vastavad ID-d välja lülitada (per LocationMatch või Directory vms).
Reegleid saab mõne veebi piires keelata ka näiteks .htaccess fail sisuga
SecFilterEngine Off SecFilterScanPOST Off
http://www.faqs.org/docs/iptables/newnotsyn.html
Lühikokkuvõte: MS Windowsi vigane TCP stack saadab peale lõpetatud ühendust veel ühe paketi, mis siis meie tulemüüris kinni jääb. Arvatavalt see ühenduseprobleeme ei tekita.
iperf minu masinast katsetaja vastu annab tulemuseks [ 3] 0.0-10.0 sec 112 MBytes 94.2 Mbits/sec
hdparm näitab iscsi ketta kohta järgmisi nubreid
# hdparm -tT /dev/sdc
/dev/sdc: Timing cached reads: 1670 MB in 2.00 seconds = 834.83 MB/sec Timing buffered disk reads: 34 MB in 3.11 seconds = 10.92 MB/sec
Tõstaks õige masina gigabitivõrku, siis peaks limiteerivaks saama ketta mitte võrgu kiirus.
Katsetaja iscsi targeteid saab külge haakida väga lihtsalt:
# iscsiadm -m discovery -t sendtargets -p 193.40.0.194:3260 193.40.0.194:3260,1 katsetaja.eenet.ee:storage.disk1 193.40.0.194:3260,1 katsetaja.eenet.ee:storage.disk4 193.40.0.194:3260,1 katsetaja.eenet.ee:storage.disk3 193.40.0.194:3260,1 katsetaja.eenet.ee:storage.disk2
# iscsiadm -m node -T katsetaja.eenet.ee:storage.disk1 -p 193.40.0.194:3260 -l
iscsi target ilmub seejärel /dev/sdX seadmena, millega on võimalik opereerida nagu tavalise kettaga. Lahtihaakimiseks:
# iscsiadm -m node -T katsetaja.eenet.ee:storage.disk1 -p 193.40.0.194:3260 -u
# dd if=/dev/sdb of=/dev/null bs=1024k count=1024 1073741824 bytes (1.1 GB) copied, 8.17863 s, 131 MB/s
Zopenurk
Instants tuleks tekitada /srv kataloogi, katsetasi natuke nendega ja võtsin praegu enda proovid maha /usr/local/etc/rc.d/zope210 restart abil toimub nende restart /etc/rc.conf'i saab lisada zope210_instances reale täisrajaga neid vajadusel lisaks või muuta midagi vajadusel.
Uut zope instantsi saab luua minnes kausta /usr/ports/www/zope210 ja andes käsu make instance ZOPEINSTANCEBASE=/home/mingikataloog
Praegu on make.conf'i kirjutatud sisse PYTHON_DEFAULT_VERSION=python2.4, kui oleks vaja uuemad pythonit kasutada tuleb see rida sealt /etc all olevast failist kustutada
Vana zope serveri sisu asub kaustas /X/Z-Instance1/ arvatavasti sealt muud vaja ei lähegi kui ainult /X/Z-Instance1/var/Data.fs faili ? Mul on seal katsetamiseks vanem data.fs versioon mis 43G suur, hetkel on nimetatud fail paisunud producion serveris 60G ringi.
Pisikesed asjad
The default timeout for fully established TCP connections in pf is 24 hours:
# pfctl -st tcp.established 86400s
You can change this value in pf.conf with
set timeout { tcp.established 86400 }
When you establish an SSH connection, you should see a state like
# pfctl -vvss | grep -A 3 ":22 "
sis0 tcp 213.3.30.1:22 <- 83.77.96.2:57802 ESTABLISHED:ESTABLISHED [574539409 + 66576] wscale 0 [303632633 + 16656] wscale 3 age 00:04:03, expires in 23:57:10, 932:894 pkts, 73171:153576 bytes, rule 106
The last part of the first line should read "ESTABLISHED:ESTABLISHED", otherwise the connection is not considered fully established by pf for some reason, and the 24 hour timeout is not applied.
The "expires in" part on the third line should equal 24 hours minus the current idle time. If it reaches zero, the state will be removed. Any activity of the connection should reset it to 24 hours.
du -h | sort -n -r
http://www.askapache.com/htaccess/apache-ssl-in-htaccess-examples.html
Hea näide vanast programeerimise õpikust, ehk kulub kuskil ära
//Näärivana1
Korrata kuni kell pole veel 18.00
oodata üks minut
Siseneda ruumi; pidada tervituskõne
//kingituste jagamine
korrata kui kotis 1 on veel pakk
võtta kotist 1 mingi pakk
Käesoleva pakiga seotud tegevus
kui pakil pole nime siis
panna pakk kotti 2
muidu
lugeda pakil olev nimi
//paki kätteandmine
kui pakk on näärivanale siis
tänada saadud paki eest; panna pakk kotti 2
muidu
kutsuda nimetu; nõuda pala
kui pala esitati siis
valida nimestikust M mingi kõne
pidada valitud kõne; anda pakk
Pidada lahkumiskõne; väljuda ruumist
iconv -f ISO-8859-1 -t UTF-8 filename.txt utf8 to latin
ImportError: No module named ImplPython User's solution This works! +0 Vote Up Vote Down +0 Vote Up
Start with a new site-packages folder
cd Python-2.4.4/lib/python2.4 mv site-packages/ site-packages_old mkdir site-packages
Move over some of the stuff needed
mv site-packages_old/PIL site-packages
http://cb.vu/unixtoolbox.xhtml
Ketaste liigutamine linuxist
http://fritzthomas.com/overall/491-how-to-cleaning-up-gentoo-to-get-more-free-disk-space/
http://www.brandonhutchinson.com/Moving_Linux_to_a_new_hard_disk.html
Graafilised menüüd whiptail mis kasutatav linuxis nt debianis kohe ja bsd's asub paketis newt
sarnane on ka dialog mis bsd's vaikimisi
#!/bin/sh
dialog --inputbox text 10 30 2> /tmp/input.dialog
if [ $? = 1 ]; then
clear
exit 0
fi
ANS=`cat /tmp/input.dialog`
echo "You typed: $ANS";
http://manpages.ubuntu.com/manpages/intrepid/man1/whiptail.1.html
http://stackoverflow.com/questions/1562666/bash-scripts-whiptail-file-select
http://www.rhyolite.com/dcc/ spämmiõrjet
lanis olevate arvutite liikluse joonistamiseks bandwithd, paistab ainult kaua arendamata seisnud projekt http://bandwidthd.sourceforge.net/
Selinux nsa toel arendatud http://www.nsa.gov/research/selinux/
Mingi programm screeni
/usr/local/bin/screen -dmS rtorrent /usr/local/bin/pebrot
Failimuudatuste jooksev vaatamine
http://en.wikipedia.org/wiki/Inotify
#spam viirus content_filter = smtp-amavis:[127.0.0.1]:10024
ja faili master.cf lõppu lisada
smtp-amavis unix - - n - 5 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes 127.0.0.1:10025 inet n - n - - smtpd -o content_filter= -o local_recipient_maps= -o relay_recipient_maps= -o smtpd_restriction_classes= -o smtpd_client_restrictions= -o smtpd_helo_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o mynetworks=127.0.0.0/8 -o strict_rfc821_envelopes=yes -o smtpd_error_sleep_time=0 -o smtpd_soft_error_limit=1001 -o smtpd_hard_error_limit=1000
mpt
do sysctl -a | grep nonoptimal_volumes this should find an oid somewhere under mpt branch, and it should reflect the number of raid volumes in state other than "optimal". in most cases this means that a disk has gone bad.
FreeBSD all erinevate raidide monitooringud
http://www.nico.schottelius.org/docs/freebsd-raid-monitoring/
http://www.freebsdwiki.net/index.php/Megarc
Monitooring smartmontoolsiga
http://smartmontools.sourceforge.net/docs/raid-controller_support.html
Nagu nimi jutustab
http://nixify.blogspot.com/2009/10/getting-reports-on-intrusion-attempts.html
viiskümmend suurimat kausta sorteerituna
du -k . | sort -nr | head -50
Paging http://en.wikipedia.org/wiki/Paging
pagesize
Mõned regexpi mustrid
as 112233 sdf asd 0.0232 ads
Muster: \s(0\.)?[0-9]+\s
Selgitus:
\s - tühik (0\.)? - luba numbrijada ees 0. [0-9]+ - vähemalt 1 number
Nt rida
OUTPUT="HTTP OK HTTP/1.0 200 OK - 3376 bytes in 0.093 seconds"
Selle analoogia põhjal proovi äkki sellist:
"output:tm:/- (\\d+) bytes/" "output:tma:/in = (\\d+\\.?\\d*) seconds/"
Nimelt, kuna originaalis ilmselt on kirjutatud \\d, siis tähendab see, et \ tuleb veel topelt escapeda, ehk \\, millest võis minu esialgne rida mitte töötada. Teine asi on nende sulgudega - sulgude sees olev regexi osa on see, mis pannakse väljundisse, seega peab sulge õigesti panema.
Pikk lohisev käsk abiks liiga pikkade vanade rippuvate protsesside tarbeks
for P in `links --dump http://nw.eenet.ee/server-status | egrep "space:+Kspace:+digit:\.digit:{2}space:+digit:{3,}" | cut -c 6- | cut -d ' ' -f 1`; do echo "$P tapetakse"; kill -USR2 $P; done
http://www.gtkpod.org/about.html linux/bsd ipod kasutus
http://www.cgsecurity.org/wiki/PhotoRec failide taastamine ntfs/fat/ext
http://www.mastershaper.org/index.php/Main_Page linuxil powertool neti koormuste kontrolliks
http://l7-filter.sourceforge.net/ filtreerida teenuseid ja nt muula, torrentit blokeerida
õpetussõnu
https://help.ubuntu.com/community/Servers lugeda ja kirjutada ka ise huvitavatest ideedest
http://www.defcon1.org/html/articles.html
http://www.freebsd.org/cgi/url.cgi?ports/www/rt36/pkg-descr
http://wiki.bestpractical.com/view/FreeBSDInstallGuide
RIPE aadressid LIRidel
ftp://ftp.ripe.net/pub/stats/ripencc/membership/alloclist.txt
Lingid
http://geektechnique.org/projectlab/796/how-to-build-a-fully-encrypted-nas-on-openbsd
http://akadeemia.kakupesa.net/VR1/loengud
http://www.openmaniak.com/inline_final.php
http://www.bsdcan.org/2007/schedule/track/Tutorial/index.en.html
http://sourceforge.net/projects/snoop/
http://wiki.wifi.ee/index.php?title=Eri:Allpages
Mõned samba lingid
http://www.freebsddiary.org/samba-pam.php
FreeBSD lingid
http://www.freebsd.org/projects/ideas/
http://blizzard.rwic.und.edu/~nordlie/miniwulf/ Beowulf cluster running under FreeBSD
Raua lingid
Võrk
http://www.routeviews.org/dynamics/
http://en.wikipedia.org/wiki/Border_Gateway_Protocol
http://www.cyberciti.biz/tips/howto-monitor-and-restart-linux-unix-service.html
iconv -t utf-8 /etc/passwd
iconv -t latin /etc/passwd
iconv --from-code= --to-code=UTF-8 ./fail1 > ./fail2
/usr/sbin/apache-modconf apache enable mod_info vaja uurida kas uuel töötab ka