Alix s debianem klfree kendyedition

Z HKfree wiki
Skočit na navigaci Skočit na vyhledávání

/dev/sdd je pro vzor a predstavuje zapojenou cfkartu v systemu.

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) 

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.

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

KLfreeDebian cfdisk1.png
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:
KLfreeDebian cfdisk2.png

  • 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 root]# df -h /var
Filesystem            Size  Used Avail Use% Mounted on
tmpfs                  25M   17M  8.3M  67% /var

[root@alix root]# umount -l /var/
[root@alix root]# mount /var/
[root@alix root]# df -h /var
Filesystem            Size  Used Avail Use% Mounted on
tmpfs                  63M     0   63M   0% /var

[root@alix root]# cp -a /conf/perm/skel/var/ /
[root@alix root]# df -h /var
Filesystem            Size  Used Avail Use% Mounted on
tmpfs                  63M   17M   47M  26% /var
  • Zmente si datum na aktualni, aby debian nevypisoval chyby s gpg... 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

V dalsi verzi pripravuji:

  • prikaz rw, ro - nahrazujici rucni vypisovani mount -o remount
  • bacula-fd - klient pro zalohovaci system