OpenWRT

Z Arena Albionu - Wiki
Skocz do: nawigacji, wyszukiwania

Wymagania wstepne:

Telewizor z DLNA (np. Samsung D6000)

External HDD: Seagate Expansion STAY2000202

HUB USB

USB memory stick for extRoot

Router: TP-LINK TL-WR1043ND


OpenWrt Backfire r31348 / LuCI 0.10.0 Release (0.10.0)


Do pobrania stad:

http://ecco.selfip.net/backfire/ar71xx/

openwrt-ar71xx-tl-wr1043nd-v1-squashfs-factory.bin - zaraz po zakupie openwrt-ar71xx-tl-wr1043nd-v1-squashfs-sysupgrade.bin - przy zmianie FW


Glowne kroki do zrealizowania

1) Przygotowanie extRoot na USB memory stick - openwrt-externalroot

2) Przygotowanie dysku do szyfrowania i szyfrowanie - openwrt-crypto

3) Konfiguracja MiniDLNA - openwrt-dlna




Ad 1) Przygotowanie extRoot na USB memory stick - openwrt-externalroot

Uzyj swojego ulubionego narzedzia do tworzenia partycji - gparted / fdisk Przygotuj dwie partycje na USB memory stick - swap o rozmiarze 128MB na koncu, poczatek w calosci ext4.

Konfiguracja:

Zdobadz UUID dla swoich partycji przy pomocy polecenia blkid:

root@OpenWrt:~$ blkid
/dev/sda2: LABEL="swap" UUID="7c05f39e-c3c9-4e54-ac52-e78cd6815296"
/dev/sda1: LABEL="OpenWRT-extRoot" UUID="bce5d25e-a7af-4049-ac59-14c11546fed1"

Nastepnie:

vi /etc/config/fstab

Zamiast vi mozna tez przez uci - zaoszczedzisz w ten sposob nieco cykli zapisu na flashu.

config 'global' 'automount'
	option 'from_fstab' '1'
	option 'anon_mount' '1'

config 'global' 'autoswap'
	option 'from_fstab' '1'
	option 'anon_swap' '0'

config 'mount'
#	option 'device' '/dev/sda1'
	option 'uuid' 'bce5d25e-a7af-4049-ac59-14c11546fed1'
	option 'enabled_fsck' '0'
	option 'fstype' 'ext4'
	option 'options' 'rw,noatime'
	option 'enabled' '1'
	option 'is_rootfs' '1'

config 'swap'
#	option 'device' '/dev/sda2'
	option 'uuid' '7c05f39e-c3c9-4e54-ac52-e78cd6815296'
	option 'enabled' '1'

Po wykonaniu tych czynnosci i zrestartowaniu routera z podlaczonym poprawnym usb memory stickiem cieszymy sie external rootem, ktory montuje nam sie jako overlay:

/dev/sda1 on /overlay type ext4 (rw,noatime,barrier=1,data=ordered)

Problem braku przestrzeni na wieksze pakiety / lokalne strony / serwery i braku swap-a znika.




Ad 2) Przygotowanie dysku do szyfrowania i szyfrowanie - openwrt-crypto

a) Utworzenie zaszyfrowanego dysku

Uzyj swojego ulubionego narzedzia do tworzenia partycji - gparted / fdisk Przygotuj jedna partycje dowolnego typu z calosci dysku.

Najlepiej na PC (router jest powolny) wypelnij ja losowymi danymi:

 # dd if=/dev/urandom of=/dev/sda1

Juz na routerze:

# opkg update
# opkg install kmod-crypto-aes kmod-crypto-misc kmod-crypto-xts
# opkg install cryptsetup

Zakladamy partycje, polecam:

# cryptsetup -v -c aes-xts-plain -y luksFormat /dev/sdb1

Potwierdzamy "YES" - duze litery i wpisujemy tajna fraze:

WARNING!
========
This will overwrite data on /dev/sda1 irrevocably.

Are you sure? (Type uppercase yes): YES
Enter LUKS passphrase: 
Verify passphrase: 
Command successful.

b) Montowanie i tworzenie partycji na zaszyfrowanej partycji

Mapowanie zaszyfrowanej partycji na niezaszyfrowane urzadzenie blokowe.

# cryptsetup luksOpen /dev/sdb1 crypt1

nalezy wpisac ustawiona fraze.

Mamy nowe urzadzenie - partycje odszyfrowana:

/dev/mapper/crypt1

Mozna stworzyc na nim normalny system plikow:

# mkfs.ext2 -m0 /dev/mapper/crypt1

i zamontowac:

# mount -t ext2 /dev/mapper/crypt1 /mnt/sdb1

, jednak o ile uzywasz windowsa, polecam NTFS jako mozliwy do odczytu/zapisu zarowno pod Linuxem, jak i Windows.

Router raczej nie bedzie w stanie stworzyc systemu pliku NTFS, wiec konieczne bedzie uzycie Linuxa/Windows-a na PC.

Linux:

 # cryptsetup luksOpen /dev/sdb1 crypt1
 # mkfs.ntfs --quick /dev/mapper/crypt1
 # mount -t ntfs /dev/mapper/crypt1 /mnt/sdb1

--quick jest istotne, inaczej partycja zostanie wypelniona zerami i bardziej podatna na ataki.
Mozesz zaczac kopiowac dane.

Odlaczenie:
 # umount /mnt/sdb1
 # cryptsetup luksClose crypt1

Windows:

Zainstaluj FreeOTFE
FreeOTFE pozwala na zamontowanie partycji zaszyfrowanej LUKS-em. Po zamontowaniu wystarczy uzyc ulubionego programy do partycjonowania - Partition Magic / FDisk / compmgmt.msc i stworzyc partycje NTFS.
Odmontowanie odbywa sie przy uzyciu FreeOTFE




Ad 3) Konfiguracja MiniDLNA - openwrt-dlna

Instalacja pakietu:

# opkg update
# opkg install minidlna

Konfiguracja:

vi /etc/minidlna.conf
media_dir=/mnt/sdb1
...
db_dir=/mnt/sdb1
...

db_dir potrafi urosnac, a informacje te informacje sa powiazane z danymi, stad najlepiej by znajdowaly sie na tym samym nosniku, ewentualnie w podkatalogu.

Po skonfigurowaniu pozostaje uruchomic:

# /etc/init.d/minidlna enable
# /etc/init.d/minidlna start

Nastepnie pozostaje jedynie obserwowanie postepow: http://192.168.1.1:8200/

i sprawdzenie widocznosci serwera DLNA na telewizorze.




Strony na ktorych bazowalem:


Instalacja i obraz:

http://eko.one.pl/?p=openwrt-backfire

http://ecco.selfip.net/backfire/ar71xx/

http://wiki.openwrt.org/doc/techref/opkg

http://eko.one.pl/?p=openwrt-externalroot

http://eko.one.pl/?p=openwrt-crypto

http://eko.one.pl/?p=openwrt-dlna

http://www.freeotfe.org/download.html

Osobiste
Przestrzenie nazw

Warianty
Działania
Nawigacja
Narzędzia