Další díl našeho společného “videocastu” je na světe, tak směle do toho, je to přeci pro Vás.
Pokud se bude líbit dejte palec nahoru a oběr bude fajn, komentáře čekají na Vaše reakci. Díky! František
Další díl našeho společného “videocastu” je na světe, tak směle do toho, je to přeci pro Vás.
Pokud se bude líbit dejte palec nahoru a oběr bude fajn, komentáře čekají na Vaše reakci. Díky! František
V jednoduchosti je krása, cloud je uvnitř složitý, navenek jednoduchý, není cílem tohoto článku popsat cloud, definovat, opakovat, na jasném popisu se neshodnout dnes ani odborníci.
Spíše než popis vnitřní krásy interní složitosti cloudu uvažujme o něm jaké o distribučním modelu vývoje informačních technologiích, platformu pro poskytování software, služeb i infrastruktury.
Dokáže Váš IT koordinátor správně uchopit celou myšlenku cloudu, využít jeho potenciál, vybrat vhodné služby pro Váš, cloud dnes nejsou jen virtuální servery a zdaleka ne každá firma poskytující virtuální servery poskytuje cloud i když to ráda tvrdí.
Klíčové je pochopení distribučního modelu, zeptejte se svého cloud poskytovatele jaký distribuční model poskytuje, pokud Vám odpoví, že všechny, buďte ostražití.
Distribuční model
Konec, shrnutí, a co Váš poskytovatel, Váš ICT koordinátor, Vaše IT, nyní máte základní přehled o modelech cloudových služeb, ptejte se jich na vhodnou volbu a proč právě to, či ono.
Typická chyba, pronájem služeb typu SaaS je dnes velmi populární, dokáže obsloužit široké spektrum požadavků, z pohledu poskytovatele je mnohdy snažší i dražší směrem k zákazníkovi poskytnout IaaS, typicky virtuální server, v silné konfiguraci, nabídnout software, licence, podporu administrace, vyřešit vzdálený přístup, vše stojí nemalé měsíční finanční prostředky.
Buďte chytří, buďte cloud!
Děkuji za Váš čas. František Havel.
Dnes to bude jednoduché, ale překvapivě se tento problém poměrně hojně vyskytuje v běžných provozních podmínkách.
Přepokládejme následující scénář, máme Linux systém schovaný za NAT , tedy na rozhraní máme neveřejnou lokální IP adresu a funkční síťování v podobě výchozí brány a DNS, přístup k mašíne je skrze ssh, neni k dispozici grafické prostředí, pouze terminál.
Jaká je naše veřejná IP adresa, jak nás vidí svět?
Jednoduše, nejčastěji používám nástroj curl, telnet bohužel, bohudík už přestává být standartní současní distribucí.
havel@havel-machine:~$ curl ifconfig.me
46.167.201.250
(používám hlavně toto neb se mi to dobře pamatuje)
Další funkční služby podobné ifconfig.me.
Nakonec pár dalších netradičních možností aneb jde to i jinak a proto Linux* milujeme.
A to je vše, dalších způsobů bude jistě na “tuny”.
Hezké je např. toto velmi jednuché API http://api.ident.me.
Díky za Váš čas. František Havel
Automatizována IT infrastruktura je hudba budoucnosti, je to klíč ke spolehlivému, efektivnímu fungování.
Moment, moment, jak budoucnosti a co pak znamenají všechny ty zkratky jako puppet, CFengine, chef, salt? Pravda, žadná budoucnost, ale realita současnosti!
Rozhodli jsme se v MOJEservery.cz už od začátku to udělat jinak, správně, nezáleží kolik serverů máte k administraci, zda-li jeden nebo 1000, inovace v podobě automatizace se vždy vyplatí.
S příchodem dvou nových zákazníků v podobě dvou virtuálních serverů s linux systémem jsme byli postavaní před rozhodnutí jak do budoucna rozumně adminovat větší množství serverů.
Po prostudování možností padla volba CMS (Configuration Management System) na nástroj puppet.
Puppet, je cms nástroj, jde o klient/server software pro popis vaši IT infrastruktury v “jednoduchém” jazyce a následné udržení infrastruktury dle přechodzí definice.
Puppet se skládá ze serveru (master) a agentů (nodů, klientů), master se snaží udržet konfiguraci dle definice na agentu či skupině agentů.
Proč puppet?
A co bylo dál? Připravili jsme puppet master server, připravili si první čistý server Debian stable v KVM virtualizaci, následoval popis instalace jednotlivých komponent pro puppet, které jsem následně spojili do jednoho celku.
A výsledek?
A co se tím dá ještě dělat? Tak se podívejte a tam směřujeme.
Doporučuji na rozjezd přečíst tuto šťavnatou diplomovou práci, Michal Bryxí FAV ZČU Plzeň 2011.
A to je vše, příště si třeba ukážeme něco praktického.
Díky za Váš čas, František Havel.
Další mini-díl našeho společného snažení, tentokrát opravdu mobilně o mobilním webu a přístupu #Google.
Pokud se Vám mini vlog bude líbit nechte k tématu komentář, dejte like nebo ještě lépe odběr.
Díky František Havel
http://havel.mojeservery.cz
Pozn.: Tento článek nepopisuje základní funkcionalitu,obsluhu ani princip fungování nástroje tcpdump.
Tcpdump je “dědeček” v oblasti paketových analyzátorů, fungující na příkazové řádce, dostupný pro většinu unix systémů i Windows, postavený na C/C++ knihovně libpcap.
Používá se pro odchycení (sniff) a analýzu komunikace v počítačových sítích, orientuje se především na protokoly tcp/ip (nikoliv výhradně), jedná se o jeden ze základních nástroj pro diagnostiku problémů, každý “síťař” ho musí znát, protože nikdo “nevidí” do kabelů.
Tcpdump vznik k roce 1987 v Berkeley Laboratory Network Research Group v USA v Kalifornii, jaká to náhoda.
Připomeňme si v rychlosti strukturu IP hlavičky.
Základní primitiva pro tcpdump filter, jsou vcelku jednoduchá (zdrojový/cílový host, síť, port, protokol) ,lze je přehlední najít v manuálových stránkých nebo online zde či manuál.
Pojďme se nyní podívat na některé záludnější konstrukce, co jsem posbíral za dosavadní činnost v oblasti síťí.
DHCP
# filtruje DHCP klienta s MAC d4:3d:7e:27:79:fc root@havel-machine:~# tcpdump -i eth0 -vvv -s 1500 '((port 67 or port 68) and (udp[38:6] = 0xd43d7e2779fc))' # filtruje DHCP DISCOVER, REQUEST, INFORM root@havel-machine:~# tcpdump -i eth0 -vvv -s 1500 '((port 67 or port 68) and (udp[8:1] = 0x1))'
Spanning tree
root@havel-machine:~# tcpdump -i eth0 -vvv ether[14:1] = 0x42 # výstup, lze vidět surová data BPDU root@havel-machine:~# tcpdump -i eth0 -vvv -e -l -xX -ttt -c 3 multicast
VLAN/CDP/LLDP
# běhá nám tam správná vlan/cdp
root@havel-machine:~# tcpdump -i eth0 -n -vvv -s 1500 -c 1 'ether[20:2] == 0x2000'
# pro LLDP použijte ether proto 0x88cc
TCP příznaky (flags)
#URG příznak root@havel-machine:~# tcpdump 'tcp[13] & 32 != 0' # ACK příznak root@havel-machine:~# tcpdump 'tcp[13] & 16 != 0' # PSH příznak root@havel-machine:~# tcpdump 'tcp[13] & 8 != 0' # RST příznak root@havel-machine:~# tcpdump 'tcp[13] & 4 != 0' # SYN příznak root@havel-machine:~# tcpdump 'tcp[13] & 2 != 0' # FIN příznak root@havel-machine:~# tcpdump 'tcp[13] & 1 != 0' # SYN-ACK příznak root@havel-machine:~# tcpdump 'tcp[13] = 18'
HTTP POST
root@havel-machine:~# tcpdump tcp[2:2] = 80 and \(tcp[20:4] = 1347375956
or tcp[24:4] = 1347375956 or tcp[28:4] = 1347375956 or tcp[32:4] = 1347375956 or tcp[36:4] = 1347375956 or tcp[40:4] = 1347375956 or tcp[44:4] = 1347375956 or tcp[48:4] = 1347375956 or tcp[52:4] = 1347375956 or tcp[56:4] = 1347375956 or tcp[60:4] = 1347375956\)
Pro filtrování IPSEC použijte v protokolech esp či ah, multicast lze odfiltrovat pomoci proto igmp nebo pim.
Ucelený přehled filtrů pro tcpdump v TXT formátu naleznete např. zde.
A nakonec dáme jednu škaredou, podobných kouskem jsem se v dřevních dobách bavili na průmyslové škole v době kdy switche nebyly vůbec standardem a huby s koaxem kralovaly, bohužel za to přišlo podmínečné vyloučení, ale to jsme jinde.
root@havel-machine:~# tcpdump port http or port ftp or port smtp or port imap or port pop3 -l -A | egrep -i 'pass=|pwd=|log=|login=|user=|username=|pw=|passw=|passwd=|password=|pass:|user:|username:|password:|login:|pass |user ' --color=auto --line-buffered -B20
Díky za Váš čas. František Havel
APG – Advanced Password Generator
APG používam řadu let k plné spokojenosti, instalace je standartní součastí repositářů Debian/Ubuntu serveru, RPM distribuce mají k dispozici EPEL.
Co umí APG?
Bezpečnost stojí a pádá z velké časti na použití silných hesel, pokud již je nutné hesla použít, připomeňme si pár zásad tvorby silných hesel.
Malá ukázka?
havel@havel-machine:~$ apt-get install apg
havel@havel-machine:~$ apg
Please enter some random data (only first 16 are significant)
(eg. your old password):>
aiclopCuak7 (aicl-op-Cu-ak-SEVEN)
5bledItJap2 (FIVE-bled-It-Jap-TWO)
PeefIcPylt0 (Peef-Ic-Pylt-ZERO)
lezRajOfcul9 (lez-Raj-Of-cul-NINE)
cesVabtyriv7 (ces-Vab-ty-riv-SEVEN)
yanEjOddob3 (yan-Ej-Odd-ob-THREE)
havel@havel-machine:~$ apg -a 1 -m 32 -n 1
“OPEPQEz2L-N[v%Mumb)e+Gm>|T,\$~^
( velmi hezká a silná hesla o déllce 32 znaků)
havel@havel-machine:~$ apg -a 0 -M sncl -n 6 -x 10 -m 16 -n 1
EmKodhaidtinyit1
Zájemce odkazuji na “man apg”.
A to je vše přátelé, a jak generujete hesla vy?
Děkuji za pozornost. František Havel
Blokovat nežádoucí IP adresy v přístupu na Váš server nemusí být vždy snadné, zvláště v případě kdy se bavíme o samostatných IP adresách (/32) bez společného CIDR prefixu.
Klasický nástroj netfilter/iptables dokáže tento problém snadno řešit.
root@havel-machine:~# iptables -A INPUT -s 1.1.1.1 -p TCP -j DROP root@havel-machine:~# iptables -A INPUT -s 2.2.2.2 -p UDP -j DROP
Snadné! A když se seznam rozroste na 10000 položek? V systému bude 10000 iptables pravidel? Takto to nelze škálovat.
Zde na pomoc přichází IPset framework v kombinaci s iptables, co to umí?
Instalace Debian
root@havel-machine:~# apt-get install ipset root@havel-machine:~# ipset create banlist hash:net root@havel-machine:~# ipset list Name: banlist Type: hash:net Revision: 4 Header: family inet hashsize 1024 maxelem 65536 Size in memory: 16760 References: 0 Members: (maxelem lze změnit parametrem maxelem při volání create)
root@havel-machine:~# ipset add banlist 1.1.1.1/32 root@havel-machine:~# ipset add banlist 2.2.2.2/32 root@havel-machine:~# ipset add banlist 3.3.3.3/32 root@havel-machine:~# ipset add banlist 4.4.4.4/24 root@havel-machine:~# ipset list Name: banlist Type: hash:net Revision: 4 Header: family inet hashsize 1024 maxelem 65536 Size in memory: 16888 References: 0 Members: 4.4.4.0/24 3.3.3.3 1.1.1.1 2.2.2.2
Máme připraven ipset, zavedem ho do iptables pravidla, zde si ukážeme blokaci pro port 80 (www server) a port 25 (smtp).
root@havel-machine:~# iptables -I INPUT -m set –match-set banlist src -p tcp –destination-port 80 -j DROP
root@havel-machine:~# iptables -I INPUT -m set –match-set banlist src -p tcp –destination-port 25 -j DROP
root@havel-machine:~# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP tcp — 0.0.0.0/0 0.0.0.0/0 match-set banlist src tcp dpt:25
DROP tcp — 0.0.0.0/0 0.0.0.0/0 match-set banlist src tcp dpt:80
V kombinaci s ipset se přímo nabízí nějaká služba proautomatické blokování, zkuste se mrknout iblocklist.com.
Další info, man ipset.
Díky za Váš čas. František Havel
Přátelé, kamarádi, kolegové, dámy, pánové, široká veřejnosti.
Čekali jste, snažili jsme se a už je to tady, místo keců, další video našeho malého mini seriálu, velké poděkování za veškeré veřejné i soukromé komentáře.
Další díl na světě, ke shlédnutí právě teď a tady.
František Havel: #2 Historie operačního systému GNU/Linux
Oceňte naši snahu můžete-li, dejte like, nejlépe odběr kanálu či sdílejte, děkujeme.
Díky, za Tachovsko lepší.
František Havel
https://www.youtube.com/user/fahacz
http://havel.mojeservery.cz