Alix s debianem klfree kendyedition
/dev/sdd je pro vzor a predstavuje zapojenou cfkartu v systemu.
Obsah
- 1 Aktualni verze
- 2 Stahnuti image disku
- 3 Upload image na CFkartu
- 4 Když nemám linux? .. Instalace pomocí physdiskwrite z windows
- 5 Zvetseni prvni partisny
- 6 Prvni boot
- 7 apt-get
- 8 Vzorove skripty pro start wifi:
- 9 Zabezpeceni WIFI
- 10 DHCP server
- 11 iptables
- 12 V dalsi verzi pripravuji:
- 13 Postřehy z instalace (C-R-E-A-T-I-V-E)
Aktualni verze
- Aktualni verze se nachazi zde: aktualni_verze
Stahnuti image disku
kendy temp # wget http://igw.hkfree.org/download/cf2gb_20091122.img --2009-05-11 19:56:40-- http://igw.hkfree.org/download/cf2gb_20091122.img Překládám igw.hkfree.org… 89.248.240.28 Navazuje se spojení s igw.hkfree.org|89.248.240.28|:80… spojeno. HTTP požadavek odeslán, program čeká na odpověď… 200 OK Délka: 563200000 (537M) [text/plain] Ukládám do: „cf2gb_20091122.img“. 100%[===================================================>] 563 200 000 3,17M/s za 3m 39s 2009-05-11 20:00:19 (2,46 MB/s) – „cf2gb_20091122.img“ uloženo [563200000/563200000]
Upload image na CFkartu
kendy temp # cat cf2gb_20091122.img > /dev/sdd
Misto cat lze pouzit dd if=soubor.img of=/dev/sdd
Když nemám linux? .. Instalace pomocí physdiskwrite z windows
Stáhnu si prográmek physdiskwrite, který umí zapisovat obraz disku fyzicky na disk (bez ohledu na formát disku disk natvrdo přepíše). Program physdiskwrite funguje když je CF karta zasunuta do CF IDE adaptéru (CF se hlásí jako hard disk už v BIOSu) nebo když je CF karta zasunuta do USB-CF čtečky nebo PCMCIA-CF adaptéru (disk "poznají" až Windows). Physdiskwrite pak spolu s obrazem disku nahraj do jedné složky a zadej příkaz skrz CMD:
physdiskwrite.exe název image (příklad physdiskwrite.exe cf2gb_20091122.img)
physdiskwrite má i svoji GUI verzi, je lepší použít právě tu physdiskwrite download
potom vyber správný disk (rozhodně to nebude 0 !!! ve čtečce jsem ho měl jako disk 2) a physdiskwrite ti na něj zapíše obraz disku (chvíli to trvá). Na CF kartě máš nahranej systém a v pc routeru/alixu ho můžeš z CF karty nabootovat.
pozn.: Pokud nemám linux, rovnou můžu přeskočit na Boot, zvetseni partyšny bez linuxu nejde.
Zvetseni prvni partisny
Jelikoz je image velky, tak aby se vesel na 512MB kartu, budem asi pri dnesnich podminkach pri pouziti 1 ci 2GB karte chtit roztahnout prvni partisnu. To lze v nekolika krocich:
- donutit kernel načíst nové rozdělení CF karty
Pro znovunačtení rozdělení CF karty ji vyjmeme ze čtečky a vložíme zpět. Jinak se nepodaří v následujícím kroku uložit správná data. Pro ověření že je vše v pořádku provedeme testovací připojení svazku:
[root@boudicka klfree-kendy]$mount /dev/sda2 /media/usbdisk [root@boudicka klfree-kendy]$df -h /media/usbdisk Filesystem Size Used Avail Use% Mounted on /dev/sda2 47M 24M 21M 54% /media/usbdisk [root@boudicka klfree-kendy]$mount|grep sda2 /dev/sda2 on /media/usbdisk type ext3 (rw) [root@boudicka klfree-kendy]$umount /media/usbdisk/
- sejmuti conf partisny do souboru
kendy temp # dd if=/dev/sdd2 of=cf2gb_20090110-config.img 98304+0 vstoupivších záznamů 98304+0 vystoupivších záznamů 50 331 648 bajtů (50 MB) zkopírováno, 7,75824 s, 6,5 MB/s
- zvetseni /dev/sdd1
spustime cfdisk:
kendy temp # cfdisk /dev/sdd
vidime ze volne misto je 502,27MB z celkoveho 1014MB, conf partisna zabira(la) 50,34MB
proto odstranime /dev/sdd2 i /dev/sdd1 a bez ukladani ihned vytvorime novou /dev/sdd1.
Novy, primarni s velikosti 964MB, zbyde 50,60MB, na tomto zbylem mistu udelame druhou primarni partisnu s nabizenou velikosti. Nakonec dame ulozit.
Rozdeleni bude vypadat priblizne, tak jako na tomto obrazku:
- Provedem resiznuti filesystemu (data nam tam zustala)
kendy temp # e2fsck /dev/sdd1 e2fsck 1.41.2 (02-Oct-2008) /dev/sdd1: obnovuji žurnál /dev/sdd1: čistý, 12396/114240 souborů, 227135/451184 bloků kendy temp # resize2fs /dev/sdd1 resize2fs 1.41.2 (02-Oct-2008) Resizing the filesystem on /dev/sdd1 to 941424 (1k) blocks. Systém souborů na /dev/sdd1 je nyní 941424 bloků dlouhý.
- vraceni conf partisny na /dev/sdd2
kendy temp # cat cf2gb_20090110-config.img > /dev/sdd2 kendy temp # resize2fs /dev/sdd2 resize2fs 1.41.2 (02-Oct-2008) Resizing the filesystem on /dev/sdd2 to 49408 (1k) blocks. Systém souborů na /dev/sdd2 je nyní 49153 bloků dlouhý.
opet misto cat soubor > partisna lze pouzit dd if=soubor.img of=/dev/sdd2
- Priprava hotova, muzem cfkartu zasunout do Alixe a bootovat.
Prvni boot
Defaultni ip v tomto image je 192.168.2.2/24
uzivatel: root
heslo: root
- pristup na konzoli pres seriovy port:
rychlost serioveho portu je 38400. Pro pristup napr. pres /dev/ttyS0 a prikaz screen:
screen /dev/ttyS0 38400
Pozor, pokud pujdete napoprve ihned pres ssh, tak pocitejte s tim, ze login bude hodne zdlouhavy, protoze v zakladu router ma ip 192.168.2.1 a nebude nikam routovat, tj. nebude resolvovat. Ten dlouhy login bude zpusoben timeoutem pri prekladu. Staci pak nastavit IP/masku/branu/dns server tak, aby router resolvoval, a dalsi login na ssh bude uz standartni rychlosti.
- boot v PC-like routeru
Pro boot v PC routeru je treba zmenit vystup kernelu do VGA, to je treba upravit soubor /boot/grub/menu.lst odstraněním "console=ttyS0,38400" z popisu kernelu, který bootuje
Defaultne je nastaven boot tak,ze kernel hlasky jsou presmerovany do serioveho portu a na VGA bude videt jen uncompressing Linux
- uzamykani/odemykani cf karty
Jelikoz toto je upravena distro pro beh z CF karty, je na ni defaultne system v rezimu RO, pro zapis configu je treba si partisny remonuntit na RW a to takto:
remountovat / partition na RW: mount -o remount rw,noatime /
premountovat config partition na RW: mount -o remount rw,noatime /conf/perm
po ulozeni configu premountovat nazpet na RO:
remountovat / partition na RO: mount -o remount,ro /
premountovat config partition na RO: mount -o remount,ro /conf/perm
apt-get
- Pro stazeni baliku pres apt-get, je treba si zvetsit /var, aby se tam vesly listy. Duvod proc je /var pro bezne pouzivani malej, je ten, ze bezi v RAM a aby nebylo zabrano zbytecne moc RAM => zbylo neco na samotny system.
[root@alix ~]# df -h /var Filesystem Size Used Avail Use% Mounted on tmpfs 35M 15M 20M 43% /var [root@alix ~]# umount -l /var/
- Edituju /var/fstab a přepíšu velikost u adresáře /var na požadovanou velikost např.:
tmpfs /var tmpfs size=63000k,defaults 0 0
- A pokračuju dále
[root@alix ~]# mount /var/ [root@alix ~]# df -h /var Filesystem Size Used Avail Use% Mounted on tmpfs 62M 0 62M 0% /var [root@alix ~]# cp -a /conf/perm/skel/var/ / [root@alix ~]# df -h /var Filesystem Size Used Avail Use% Mounted on tmpfs 62M 14M 49M 22% /var [root@alix ~]#
- Zmente si datum na aktualni, aby debian nevypisoval chyby s gpg.
[root@alix ~]# date Sun Jan 2 07:12:47 CET 2000 [root@alix ~]# ntpdate -v ntp.hkfree.org 2 Jan 07:18:09 ntpdate[24522]: ntpdate 4.2.0a@1:4.2.0a+stable-2-r Fri Aug 26 10:30:13 UTC 2005 (1) 28 Jun 03:24:32 ntpdate[24522]: step time server 10.107.3.1 offset 330894382.268481 sec [root@alix ~]# date Mon Jun 28 03:24:39 CEST 2010 [root@alix ~]#
- Nyni je vse pripraveno pro pouziti apt-get
[root@alix root]# apt-get update Get:1 http://ftp.cz.debian.org etch Release.gpg [394B] Get:2 http://ftp.cz.debian.org etch Release [67.8kB] Get:3 http://security.debian.org etch/updates Release.gpg [197B] Get:4 http://security.debian.org etch/updates Release [37.6kB] Ign http://ftp.cz.debian.org etch Release Ign http://security.debian.org etch/updates Release Get:5 http://ftp.cz.debian.org etch/main Packages [4282kB] Get:6 http://security.debian.org etch/updates/main Packages [329kB] Get:7 http://security.debian.org etch/updates/contrib Packages [7805B] Get:8 http://security.debian.org etch/updates/non-free Packages [3614B] Fetched 4728kB in 21s (221kB/s) Reading package lists... Done
- po skonceni prace s apt-get je treba si zazalohovat databazi apt/dpkg protoze /var bezi z RAM a pri bootu se kopiruje jeho obsah z /conf/perm/skel/var:
cp -p /var/cache/apt/pkgcache.bin /conf/perm/skel/var/cache/apt/ cp -a /var/lib/dpkg/ /conf/perm/skel/var/lib/
Vzorove skripty pro start wifi:
- Mod Client
#Zrusit predchozi ath0 (default po nahrani modulu je mod managed) wlanconfig ath0 destroy #Vytvorit novej ath0 do modu klient wlanconfig ath0 create wlandev wifi0 wlanmode sta #Nastavit ESSID iwconfig ath0 essid test.hkfree.org #Nastavit mod 5GHz iwpriv ath0 mode 1 #Nahodit interface do stavu UP ifconfig ath0 up #Nastavit rychlost iwconfig ath0 rate 54Mbit #Nastavit vzdalenost athctrl -i wifi0 -d 4000
- Mod AP
#Zrusit predchozi ath0 (default po nahrani modulu je mod managed) wlanconfig ath0 destroy #Vytvorit novej ath0 do modu AP wlanconfig ath0 create wlandev wifi0 wlanmode ap #Nastavit ESSID iwconfig ath0 essid test.hkfree.org #Nastavit mod 5GHz iwpriv ath0 mode 1 #Nastavit kanal iwconfig ath0 channel 128 #Nahodit interface do stavu UP ifconfig ath0 up #Zvysuje to stabilitu iwpriv ath0 uapsd 0 #Nastavit rychlost iwconfig ath0 rate 54Mbit #Vypnout background scan, snizuje to load masiny iwpriv ath0 bgscan 0 #Nastavit vzdalenost athctrl -i wifi0 -d 4000
- Mod WDS (lze pouzit na plne transparentni linku)
- Pro to aby mohla byt plne transparentni linka, je treba mit v sytemu bridge napr br0 a v nem interface (napr) eth0 ath0
#R1 #(prikladna MAC adresa ath0 je: 00:00:00:00:00:01) #Zrusit predchozi ath0 (default po nahrani modulu je mod managed) wlanconfig ath0 destroy #Vytvorit novej ath0 do modu wds(repeater) wlanconfig ath0 create wlandev wifi0 wlanmode wds #Nastavit mod 5GHz iwpriv ath0 mode 1 #Nastavit kanal iwconfig ath0 channel 140 #Pridat MAC R2 iwpriv ath0 wds_add 00:00:00:00:00:02 #Nahodit wds iwpriv ath0 wds 1 #Nastavit vzdalenost /usr/bin/athctrl -i wifi0 -d 2000 #Nahodit interface do stavu UP ifconfig ath0 up #R2 #(prikladna MAC adresa ath0 je: 00:00:00:00:00:02) #Zrusit predchozi ath0 (default po nahrani modulu je mod managed) wlanconfig ath0 destroy #Vytvorit novej ath0 do modu wds(repeater) wlanconfig ath0 create wlandev wifi0 wlanmode wds #Nastavit mod 5GHz iwpriv ath0 mode 1 #Nastavit kanal iwconfig ath0 channel 140 #Pridat MAC R1 iwpriv ath0 wds_add 00:00:00:00:00:01 #Nahodit wds iwpriv ath0 wds 1 #Nastavit vzdalenost /usr/bin/athctrl -i wifi0 -d 2000 #Nahodit interface do stavu UP ifconfig ath0 up
Zabezpeceni WIFI
AP s podporou WPA2
Pridame radek do /etc/wifi/athX.sh, kde X je cislo interface
hostapd /etc/hostapd/hostapd-athX.conf -B
A obsah hostapd-athX.conf muze byt napriklad nasledujici
interface=athX bridge=wifiY driver=madwifi logger_syslog=-1 logger_syslog_level=2 logger_stdout=-1 logger_stdout_level=2 debug=0 dump_file=/tmp/hostapd.dump ctrl_interface=/var/run/hostapd ctrl_interface_group=1 ssid=MOJEHKFEREAP.hkfree.org wpa=2 # do tohoto souboru zadame pro kazdeho klienta jeho MAC a nasledne klic v HEX - bezpecna asociace klient/zarizeni wpa_psk_file=/etc/hostapd/clients_ps # pouzivame pre-shared secret wpa_key_mgmt=WPA-PSK # nejdrive WPA1 a pokud nekdo vyzaduje, tak i CCMP (WPA2) wpa_pairwise=TKIP CCMP wpa_group_rekey=600 wpa_gmk_rekey=86400 rsn_preauth=1 rsn_preauth_interfaces=athX
AP s podporou WPA2 jako hotspot pro cleny HKF
Nejdrive pridame dalsi interface viz napriklad
wlanconfig athX destroy # asi nejdulezitejsi prikaz, ktery dela ten trik ... wlanconfig athX create wlandev wifiY wlanmode ap iwconfig athX essid MOJE_AP.hkfree.org iwconfig ath2 channel Z ifconfig ath2 up sleep 3 hostapd /etc/hostapd/hostapd-athX.conf -B iwpriv ath2 uapsd 0 iwconfig ath2 rate 54Mbit iwpriv ath2 bgscan 0
hostapd-athX.conf
# je treba pridat dalsi interface na stejnem kanale, pokud nechceme zbytecne blokovat dalsi kartu interface=athX # ktere karta bridge=wifiY driver=madwifi logger_syslog=-1 logger_syslog_level=2 logger_stdout=-1 logger_stdout_level=2 debug=0 dump_file=/tmp/hostapd.dump ctrl_interface=/var/run/hostapd ctrl_interface_group=1 ssid=HOSTPOT-XXX.hkfree.org # pouzije se autentizace pres radius macaddr_acl=2 #auth_algs=3 ieee8021x=1 auth_algs=1 eap_server=0 eapol_key_index_workaround=1 ###Radius Setup own_ip_addr=10.107.0.81 nas_identifier=nejake-ap.hkfree.org auth_server_addr=10.107.251.8 auth_server_port=1812 auth_server_shared_secret=testing123 acct_server_addr=10.107.251.8 acct_server_port=1813 acct_server_shared_secret=testing123 ###WPA wpa=1 wpa_key_mgmt=WPA-EAP # povoleno jen WPA2 (plne 802.11i) wpa_pairwise=CCMP wpa_group_rekey=300 wpa_gmk_rekey=640
DHCP server
návod pro debian je zde DHCP server na Debianu
- balíček dhpc3-server vyžaduje při instalaci použití utility mktemp, ta není součástí základního systému, musíte ji tedy předem nainstalovat!
apt-get install mktemp
iptables
V default instalaci jsou již předpřipravená některá pravidla omezující šíření nejznámějších win červů. Můžete si definovat jakákoli svoje pravidla.
- uložení nadefinovaných pravidel iptables:
iptables-save > /etc/network/iptables
Soubor /etc/network/iptables je vytvořen aplikací iptables-save, což je program na extrakci pravidel iptables do snadno parsovatelného tvaru. Z tohoto souboru se pravidla loadují při bootu. Vždy když provedete změnu v pravidlech nezapomeňte je takto uložit!
Protějšek je iptables-restore, který pravidla načítá (iptables-restore < /etc/network/iptables)
V dalsi verzi pripravuji:
- prikaz rw, ro - nahrazujici rucni vypisovani mount -o remount
Docasne si kazdy muze skripty napsat sam:
/sbin/rw
mount -o remount,rw,noatime / mount -o remount,rw,noatime /etc
/sbin/ro
mount -o remount,ro,noatime / mount -o remount,ro,noatime /etc
Pozor, pri vytvareni se musite nejprve rucne prepnout do RW rezimu a nezapomente nastavit prava x pro dane soubory:
[root@alix sbin]# chmod 755 /sbin/r[ow] [root@alix root]# ls -la /sbin/r[ow] -rwxr-xr-x 1 root root 63 Jan 1 01:08 /sbin/ro -rwxr-xr-x 1 root root 63 Jan 1 01:07 /sbin/rw
- bacula-fd - klient pro zalohovaci system
Postřehy z instalace (C-R-E-A-T-I-V-E)
- Pokud máte ALIX se 3 eth porty -> /etc/udev/rules.d/70_persistent_net... (smazat - bude fcni i eth3)
- Uložení iptables: (nejdříve přemountovat na rw)
iptables-save > /etc/network/iptables