SHELLINABOX OPENWRT TURRIS kompilace návod


#1

Nejprve je nutné někde na linuxu rozjet toolchain buď přeložit dle návodu https://doc.turris.cz/doc/cs/howto/turris_os_build
Nebo jej stáhnout již hotový z :

# wget https://repo.turris.cz/turris/OpenWrt-SDK-mpc85xx-p2020-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64.tar.bz2

# wget https://repo.turris.cz/omnia/OpenWrt-SDK-mvebu_gcc-4.8-linaro_musl-1.1.15_eabi.Linux-x86_64.tar.bz2

Následně rozbalit

# sudo su

# cd /root

# tar jxf OpenWrt-SDK-mpc85xx-p2020-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64.tar.bz2

A lépe přejmenovat adresář

# mv ./OpenWrt-SDK-mpc85xx-p2020-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64 openwrt

Prepnout se do adresare toolchainu kam jsme jej rozbalili

# cd /root/openwrt/package

Následně stáhneme shellinabox z nového repository :

# git clone https://github.com/openwrt-develop/openwrt-shellinabox.git

Nyni je třeba zkopírovat hlavičkové soubory openssl do správneho adresáře toolchainu, protože jinak jej překladač při kompilaci nenajde

Po kompilaci knihovny openssl jsou headers a libs ulozeny v:

/openwrt/staging_dir/target-powerpc_8540_uClibc-0.9.33.2/usr/include/openssl

tam je ale kompilator nenajde a je potreba je zkopirovat do adresare :

/openwrt/staging_dir/toolchain-powerpc_8540_gcc-4.8-linaro_uClibc-0.9.33.2/include/openssl

(Knihovna openssl je jiz zkompilovana v toolchainu na repo.turris.cz, tedy je lepsi stahnout jiz zkompilovany toolchain jinak je nutne knihovnu openssl prelozit

Aby kompilace proběhla je potřeba provést make menuconfig v openwrt adresáři a povolit shellinabox balíček jako module (M), pokud se make menuconfig a povolení balíčku neprovede tak se kompilace vůbec nespustí !!!

# make menuconfig

Nasledně můžeme vyhledat v které části stromu je balíček shellinabox zařazen abychom jej mohli ve stromu povolit. Stisknutím “/” a následně zadáním shellinabox dojde k vyhledání ve stromu -> zjistíme že jej máme hledat v sekci Network.

Nyní spustíme kompilaci shellianbox (musíme být v adresari openwrt

# make package/shellinabox/compile

nebo

# make package/shellinabox/compile V=s

pro ziskani detailu kde kompilace spadla

Mezisoubory a zdrojove soubory jsou ulozeny a kompilovany v adresari

/openwrt/build_dir/target-powerpc_8540_uClibc-0.9.33.2/shellinabox-2.20#

Vysledny balicek je ulozen

/openwrt/bin/mpc85xx/packages/base/shellinabox_2.20_mpc85xx.ipk

Vlozime do localrepo

# localrepo add /openwrt/bin/mpc85xx/packages/base/shellinabox_2.20_mpc85xx.ipk

Provedeme instalaci
# opkg install /openwrt/bin/mpc85xx/packages/base/shellinabox_2.20_mpc85xx.ipk

Nyni je ještě třeba v luci povolit programech po spusteni nebo z prikazove readky

# /etc/init.d/shellinaboxd enable

# /etc/init.d/shellinaboxd start

Pokud chceme mit dostupně z internetu tak je ještě potřeba povolit port 4200 ve firewallu

Následně již stačí zadat v prohlížeči http://openwrt:4200

Pro původní turris je balíček ke stažení zde https://uloz.to/!RemHK4ZTiQxZ/shellinabox-2-20-mpc85xx-ipk