pondělí 21. prosince 2015
úterý 24. listopadu 2015
UPnP & NAT-PMP na pfSense 2.2.5 vs Synology DSM 5.2-5644
Nedávno jsem se známým řešil na jeho pfSense routeru doma podivné chování. V pravidlech neměl žádný portforward a i přesto mu funoval Postfix běžící na Synology z internetu. Po schizofréních dvouch hodinách a testování jsem si všiml zapnuté služby UPnP & NAT-PMP. Tuto službu jsem již dříve testoval a např. Skype ji umí využívat a otevírá si porty na WAN interface routeru. Povětšinou tuto službu nechávám raději vypnutou.
pfSense disponuje touto funkcionalitou - UPnP & NAT-PMP - jedná se o projekt miniupnpd, který zajišťuje NAT Port Mapping Protocol (NAT-PMP). Automatické mapování portů, které je řízené klientem.
V NAS Synology je tedy možno řídit co se má mapovat a co ne. Nastavení se provádí v menu Synology a router pfSense mapování zajistí automatizovaně. V nepovolaných rukou může být tato funkcionalita velmi nebezpečná. Na druhou stranu je to zajímavé technícké řešení automatizace NAT-PMP.
Controll Panel / External Acces / Router Configuration
V pfSense existuje sránka Status: UPnP & NAT-PMP Status, kde je přehledně vidět kdo (upnpclient) jaké porty kam mapuje.
pfSense disponuje touto funkcionalitou - UPnP & NAT-PMP - jedná se o projekt miniupnpd, který zajišťuje NAT Port Mapping Protocol (NAT-PMP). Automatické mapování portů, které je řízené klientem.
V NAS Synology je tedy možno řídit co se má mapovat a co ne. Nastavení se provádí v menu Synology a router pfSense mapování zajistí automatizovaně. V nepovolaných rukou může být tato funkcionalita velmi nebezpečná. Na druhou stranu je to zajímavé technícké řešení automatizace NAT-PMP.
Controll Panel / External Acces / Router Configuration
V pfSense existuje sránka Status: UPnP & NAT-PMP Status, kde je přehledně vidět kdo (upnpclient) jaké porty kam mapuje.
úterý 27. října 2015
Zabbix Search::Elasticsearch
Pokud chceme monitorovat pomocí Zabbixu Elasticsearch server, tak se nám bude hodit Perl modul Search::Elasticsearch
Sice se na stránkách elastic o modulu píše, ale součásti repository pro CentOS modul neni.
https://www.elastic.co/guide/en/elasticsearch/client/perl-api/current/index.html
Po nějaké době hledání jsem našel repository OpenFusion, ale ten obsahuje jen starší verzi perl modulu.
Nezbude nam na CentOS 6 než použít cmanm
yum install perl-devel
yum install perl-CPAN
curl -L http://cpanmin.us | perl - --sudo App::cpanminus
/usr/local/bin/cpanm Search::Elasticsearch
find / -name Elasticsearch.pm
/usr/local/share/perl5/Search/Elasticsearch.pm
Např. ve FreeBSD je to s Perl mudulama mnohem lepší.
p5-Search-Elasticsearch-1.20_1 ElasticSearch API
Sice se na stránkách elastic o modulu píše, ale součásti repository pro CentOS modul neni.
https://www.elastic.co/guide/en/elasticsearch/client/perl-api/current/index.html
Po nějaké době hledání jsem našel repository OpenFusion, ale ten obsahuje jen starší verzi perl modulu.
Nezbude nam na CentOS 6 než použít cmanm
yum install perl-devel
yum install perl-CPAN
curl -L http://cpanmin.us | perl - --sudo App::cpanminus
/usr/local/bin/cpanm Search::Elasticsearch
find / -name Elasticsearch.pm
/usr/local/share/perl5/Search/Elasticsearch.pm
Např. ve FreeBSD je to s Perl mudulama mnohem lepší.
p5-Search-Elasticsearch-1.20_1 ElasticSearch API
neděle 25. října 2015
ComLynx Weblogger

Jedná se o Webový záznamník ComLynx Weblogger od již neexistující společnosti Danfoss.
Webový záznamník ComLynx Weblogger pro solární střídače poskytuje přístup k
datům FV elektrárny odkudkoli – stačí mu k tomu internetový prohlížeč. Webový záznamník ComLynx Weblogger zaznamenává data z jednotlivých střídačů a prostřednictvím webové stránky zobrazuje informace o jednotlivých snímačích a také celkový stav systému.
Nejprve jsem se zhrozil, co s tím mohu já udělat. Ukázalo se, že na desce je paměťová karta Comact Flash. A tak jsem ji připojil do Linuxu a zjistil že systém ComLynx Weblogger používá nějaký upravený Linux. O jakou distribuci se jednalo jsem nezjistoval, nebyl čas. V /etc jsem hledal nějaké nastavení IP a našel jsem soubor /etc/rc.local, kde se nastavovali IP adresy a spousta dalších věcí. Opravil jsem IP dle potřeb a systém zase ožil.
Je srandovní, že manipulaci s CF může provádet jen autorizovaný service.
pátek 23. října 2015
OpenStreetMap import do PostGIS
Po dlouhé době jsem opět narazil na databázi PotgresSQL a jeho velmi zajímavé rozšíření PostGIS. Mile mě překvapilo, jak snadno se dá PostGIS naplnit daty z OpenStreetMap (OSM). A tím si snadno vytvoříte vlastní mapový server s velmi podrobnými daty.
Testováno na OS FreeBSD 10.2
Instalace poslední verze PostgreSQL 9.4
cd /usr/ports/databases/postgresql94-server/ && make install clean
Instalace rozšíření PostGIS
cd /usr/ports/databases/postgis21/ && make install clean
Instalace konvertoru OSM do pgsql
/usr/ports/converters/osm2pgsql/ && make install clean
Dále je postup poměrně jednoduchý. Připravíme si databázi nejlépe i s table space.
mkdir -p /data/pgsql/postgis && chown pgsql:pgsql /data/pgsql/postgis
CREATE USER postgis;
CREATE TABLESPACE postgis OWNER postgis LOCATION '/data/pgsql/postgis';
CREATE DATABASE postgis WITH OWNER = postgis TABLESPACE = postgis;
CREATE LANGUAGE plpgsql;
Provedeme instalaci PostGIS rozšíření PostgreSQL.
cd /usr/local/share/postgresql/contrib/postgis-2.1/
psql -d postgis -f postgis.sql
psql -d postgis -f spatial_ref_sys.sql
psql -d postgis -f postgis_comments.sql
psql -d postgis -f topology.sql
psql -d postgis -f topology_comments.sql
psql -d postgis -f rtpostgis.sql
psql -d postgis -f rtpostgis_legacy.sql
psql -d postgis -f legacy.sql
Ověříme verze PostgreSQL a PostGIS
[root@gis-test ~]# psql postgis
psql (9.4.5)
Type "help" for help.
postgis=# SELECT version();
PostgreSQL 9.4.5 on amd64-portbld-freebsd10.2, compiled by FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512, 64-bit
postgis=# SELECT postgis_full_version();
POSTGIS="2.1.7 r13414" GEOS="3.5.0-CAPI-1.9.0 r4084" PROJ="Rel. 4.9.1, 04 March 2015" GDAL="GDAL 2.0.1, released 2015/09/15" LIBXML="2.9.2" LIBJSON="UNKNOWN" TOPOLOGY RASTER
Provedeme stažení OSM mapy ČR a naimportujeme do PostGIS.
fetch http://download.geofabrik.de/europe/czech-republic-latest.osm.pbf # 589M
osm2pgsql -d postgis --slim -C 1500 --number-processes 4 czech-republic-latest.osm.pbf
Import nějakou dobu trvá a zabere i dost místa ve vytvořeném TABLE SPACE :-)
Jak používat data z PostGIS je zase jiné téma. Jen uvedu pár zajímavých projektů.
středa 20. května 2015
UniFi Controller on FreeBSD
Nedávno jsem se musel seznámit s Enterprice WiFinama od Ubnt. Přesněji UniFi UAP-AC a UniFi UAP-AC Outdoor, celkem 5kousků v jedné lokalite. Prvním ohlednáním zjistíte, že tyto zařízení nemají žádné Web GUI. Po oscanování zjistíme, že na WiFině běží jen SSH server.
Dokumentace nás navede na aplikaci UniFi Controller, což je aplikace běžící pod Apache Tomcat využívající MongoDB. Oficiálně je aplikace dostupná pro Windows a Mac OSX. Ale na komunitních stránkách je informace o repo pro Linux Debian/Ubuntu. Testoval jsem to na Kali a funguje.
Mile mě překvapilo, že UniFi Controller je instalovatelný i pod FreeBSD. Existuje patřičný port.Jak už to u FBSD bývá je možno si vybrat i starší verze.
cd /usr/ports/net-mgmt/unifi4/
make install clean
Aktualizace: 20151030
Databázi MongoDB si UniFi pouští samo a směruje si ji do svého dataDir. Ale je nutno mírně upravit konfigurační soubor, jinak mongodb-2.6.7 nenabehne.
vi /usr/local/share/java/unifi/data/system.properties
...
unifi.db.extraargs=--smallfiles
pondělí 18. května 2015
Seznámení se s OpenOTP

Systém se skládá z několika komponent:
- WebADM
- OpenOTP Server + RADIUS Bridge
- TiQR Server
- OpenID/SAML IdP
- Self - services
- Web Plugins
Hardware Tokens:
- RCDevs RC200 - OATH Time-based (TOTP)
- ZyXEL ZyWALL
- FreeOTP - (Android, iPhone)
- Authenticator - (Windows Phone)
- Authenticator - (Ubuntu Touch)
čtvrtek 26. února 2015
JasperReports a plugin ElasticJasperServer
V práci jsem seznamoval s produkty Jasper Reports od společnosti Jaspersoft, která je vlastněná společností TIBCO Software. Hlavním důvodem je generování reportů např. v PDF získaných z ElasticSearch nebo Zabbix.
Nejprve jsem instaloval JasperReports Server, což je Java aplikace běžící pod Apache Tomcat. Defaultní instalace využívá databázi PostgreSQL, ale můj požadavek byl JR Server provozovat s MySQL. Volil jsem tedy instalaci WAR využívající js-install script. Stáhnul jsem si tedy jasperreports-server-cp-5.6.1-bin.zip. Volil jsem starší verzi, protože mým cílem bylo zprovoznit rozšíření od Wedjja - https://github.com/WedjaaOpen. Které umožňuje JR Serveru komunikovat a dotazovat se pomoci JSON ElasticSearch. Aktualní verze ElasticJasperServer nepodporuje poslední verzi JR Serveru 6.x. Projekt je velmi dobře dokumentován, proto instalace JR Serveru i pluginu ElasticJasperServer není nikterak složitá.
Pro vytvoření samotných reportů se používá aplikace JasperReports Studio, která je postavena na základech vývojového prostředí Eclipse. JR Studio a JR Server spolu komunikují a vytvořené reporty je možno snadno publikovat na serveru, kde se patřičný report nechá vykonávat pravidelně a může zasílat výsledné reporty emailem nebo je uploadovat na FTP server.
JR Studio se též neobejde bez pluginu do ElasticSearch. Je třeba doinstalovat ElasticJasper. Podrobný popis jak na to je pěkně popsán na blogu Wedjja.
Samotná tvorba reportů JRXML není úplně jednoduchou disciplínou, ale výsledky mohou být velmi zajímavé.
JasperReports je v Java světě zjevně hodně znám. Čistě náhodou jsem si všiml, že účetnictví FlexiBee používá pro tisk právě JasperReports Library.
úterý 17. února 2015
CAT B15Q aktualizace systému
V létě 2014 jsem si pořídil mobilní telefon CAT B15Q z kategorie odolných telefonů splňujících certifikaci IP67. Koncem roku 2014 telefon hlásil, že je vydána aktualizace. Neváhal jsem a pokoušel jsem se ji instalovat. Bohužel každé stažení končilo chybou dekomprimace update.zip, který se stáhnul na MicroSD kartu.
Telefon z výroby přišel s verzí Android 4.4.2 a číslem sestaveni CatB15Q_GENE_DS_1.010.000. Problém s chybou jsem řešil i s výrobcem skrze support, ale ten se maximálně zeptal na číslo sestaveni a tím se komunikace ukončila :-( a rada žádná. MicroSD karta se hnedle od začítku jevila podezřele. Aplikace na prohlížení fotografií nedokázala vytvořit náhled z pořízených fotografii. Při zaplnění asi 200MB. Provedl jsem kopii fotek do PC a preformátoval kartu. Chviličku a byl klid. Ovšem problémy s aktualizací přetrvávaly i nadále.
Odhodlal jsem si pořídit novu MicoSD kartu srovnatelné velikosti, která byla dodána s telefonem z výroby. A ejhle problém s aktualizacema je vyřešen. Takže výrobce dodal vadnou MicroSD kartu!
Nejprve se provedla aktualizace na verzi CatB15Q_GENE_DS_1.019.000 a posléze se provedla ještě jedna na aktuální verzi CatB15Q_GENE_DS_1.022.000. Uvidím, zda se vše opravilo. V červenci 2015 dorazila další oprava CatB15Q_GENE_DS_1.026.000. V únoru 2016 dorazila další oprava CatB15Q_GENE_DS_1.032.000. Musím CAT opravdu pochválit, protože opravili velmi závažnou chybu z vanou Stagefright.
Co se SW týče interní aplikace zajištující stahování např. příloh emailů se chovala tak, že hlásila chyby. To byl problém od začátku. Doufám, že dvě aktualizace tento problém definitivně opravily. Po aktualizaci mi přišel email s přílohou a telefon se jeví zdravě.
Do budoucna se třeba dočkám i Androidu 4.4.4 Jsem rád, že i neobvyklý výrobce telefonů CAT vydává opravy SW svých telefonu.
Do budoucna plánuji stávající akumulátor B10-2 - 2 000 mAh, Li-Ion nahradit za 4 500 mAh, Li-Ion, zatím jsem nenašel, kde by se dal pořídít.
Mít tak sponzora, rád bych přešel na CAT S40 kvůli LTE a Android 5.1.
pátek 13. února 2015
Zabbix Community Repos
Tento odkaz jsem již několikrát hledal, narazil jsem na něj na LinkedIN.
https://github.com/zabbix/zabbix-community-repos
Obsahuje odkazy na mnohe Zabbix repository šablon a scriptů.
https://github.com/zabbix/zabbix-community-repos
Obsahuje odkazy na mnohe Zabbix repository šablon a scriptů.
pondělí 2. února 2015
PC Engines APU.1D vs pfSense 2.2
Dostala se mi pod ruku nová generace desky od PC Engines s označením APU.1D. Je to nástupce desek ALIX.2D3 a jí podobných. Desku jsem vybavil mSATA SSD diskem a wifi kartou. Deska je od výroby dodávána s hliníkovým pruhem jakožto pasivním chladičem přehřívaných čipu. Popis instalace je zobrazen v návodu výrobce. Vypadá to amatérsky, ale asi to mají spočítané a otestované, že to stačí i pro provoz v letním období.
Po zapojení desky jsem se k ní připojil sériovou konzolí 115200 8N1. Používám GNU screen.
sudo screen /dev/ttyUSB0 115200
Deska disponuje BIOSem, který umí bootovat z několika periferii iPXE, mSATA a např. USB. Podrobnosti jsou v dokumentaci k deskce. Rozhodl jsem se v desce povýšit BIOS na aktuální verzi Build 9/8/2014, jedná se o beta, ale na problémy jsem zatím nenarazil. K mání je i produkci verze.
Aktualizace BIOSu je možná pomocí USB nebo PXE. Oba postupy jsou poměrně jednoduché. Použil jsem svůj TFTP server.
Stáhneme http://www.pcengines.ch/file/apu_tinycore.tar.bz2 a umístíme na TFTP server a upravíme konfiguraci PXE. Výrobce používá projekt Tiny Core Linux, pomocí kterého bootneme do mini Linux distribuce, která obsahuje vše potřebné pro zapsání image BIOSu na flashROM. Obdobné se dá vyrobit USB disk.
S deskou APU mi měla dorazit i redukce mSATA <> SATA, ale ta se opozdila. Tak jsem si pomoci TFTP stáhl image pfSense do RAMdisku Tiny Core Linuxu. RAM 2GB je slušné vybavení desky.
tftp -g -r /pfsense/pfSense-2.2-RELEASE-4g-i386-nanobsd.img.gz 192.168.42.13
gunzip -c pfSense-2.2-RELEASE-4g-i386-nanobsd.img.gz | dd of=/dev/sda bs=4M
Po instalaci NanoBSD verze pfSense na SSD disk, stačí jen v BIOSu nastavit boot device mSATA a uložit.
Tento návod je pro zasvěcené systémáky. Kompletní router se vším všudy se dá pořídit v eShopu http://store.open-tech.cz/router/pfsense-apu-1d/
pondělí 12. ledna 2015
OSSIM - installation step failed
Instaloval jsem OSSIM verzi 4.14.0, přesněji komponentu Sensor. A narazil jsem na chybu - "installation step failed", která toho moc nenapoví :-(
OSSIM je postavené na Debianu a kombinuje řadu Open Source projektů, jako je OpenVAS, Suricata, Snort, NetFlow, OSSEC a další. Instalaci jsem prováděl do ESXi a tak jsem zkousel měnit vlastnosti virtuálky. Zkoušel jsem instalovat i jako OSSIM - All in One, ale stále stejná chyba.
Instalátor se zeptá na lokalizaci, klávesnici a pak už jen nastavení sítě a hesla na roota a pak se již vše instaluje automatizovaně (Preseed), přesněji se nedá do instalačního procesu jakkoliv vstoupit. Pokoušel jsem se provést instalaci v textovém režimu, potlačením framebufferu.
V grubu se pomocí [Tab] upraví položka menu, kam se přidá následující.
debian-installer/framebuffer=false
Ale i textová instalace zkončila stejnou chybou.
Má instalace byla prováděna na veřejné IP adrese. A zde je onen problém. Instalaci jsem provedl v rozsahu privátní sitě 192.168.0.2/24 a ejhle instalace korektně doběhla.
![]() |
Grub výběr typu instlace OSSIM - Sensor |
![]() |
Installation step failed ... |
V grubu se pomocí [Tab] upraví položka menu, kam se přidá následující.
debian-installer/framebuffer=false
Ale i textová instalace zkončila stejnou chybou.
![]() |
Installation step failed ... v textovém módu. |
pondělí 5. ledna 2015
Unreal Tournament 2004 vs Ubuntu 12.04.5 LTS
O vánočním volnu se mi poštěstilo a jeden večer jsem měl volno od dětí. Ikdyž jsem měl naplánované nějaké domácí odkládané práce. Nejprve jsem si zajel do Lipnice na přírodní led zabruslit i s hokejkou, ale tam nás nějakej místní zasvědcenej opilec vyhnal.
Pak jsem si řekl, že se zajedu podívat do DKčka (dříve Apollo), kde jsem ještě nebyl. Bylo tam v podstatě mrtvo, až na bandu týpků s notebookama, kteří se zjevně připravovali na nějakou LANpárty. Polehounku jsem se infiltroval a vyzjistil, že se chystají hrát Unreal Tournament 2004. Nedalo mi to a konzultval jsem Google a Steam ohledně této hry. Po chvíli jsem si jel domu pro notebook :-)
Kluci byli velmi vstřícní a poskytli mi instalační iso DVD - UT2004.iso (3,7G) na kterém se nachází linux-installer.sh, což mě velmi mile překvapilo. Instalace proběhla by default bez nějakých velkých obtíží na Ubuntu 12.04.5 LTS 64bit. Hra se již nedá koupit (alespoň v JRC říkal pán) takže bez UT2004_Keygen.zip se neobejdeme. Ten jsem musel pustit ve Wine a fungoval. Hra se nainstaluje do /usr/local/games/ut2004 a na 64bitovém systému je nutno ji pouštět z této binárky ./System/ut2004-bin-linux-amd64.
Jak již to bývá na LANPárty se povětšinou hrají patchnuté opravené verze. Tak jsem musel řešit stažení a instalování ut2004-lnxpatch3369.tar.bz2 (22M). Bylo to super, když se hra začala přihlašovat na vytvořený UT2K4 lokální LAN server. Ovšem problém nastal v ukrutně pomalém stahování textur a map.
Díky Wine jsem si pohrál s ut2004-ECEBonusPack.exe a vydoloval z něj soubory a ty následně umístil do user@ubuntu:~/.ut2004.
Pak už náslodovalo konečně hraní, které mi moc nešlo. Mapy neznám. Je srandovní, že i Windows useři zápasili s vyladěním svých instalací. Škoda, že tato linuxová hra se nedá koupit na Steamu :-(
Zpětně moc děkuji za příjemný večer všem organizátorům této soukromé LANpárty. Alespoň na chvilku jsem si zavzpomínal jaké je to na LAN párty.
V DKčku by to chtělo uskutečnit nějakou Steam LAN Párty, ale to bude chtít konektivitu do internetu :-)

Kluci byli velmi vstřícní a poskytli mi instalační iso DVD - UT2004.iso (3,7G) na kterém se nachází linux-installer.sh, což mě velmi mile překvapilo. Instalace proběhla by default bez nějakých velkých obtíží na Ubuntu 12.04.5 LTS 64bit. Hra se již nedá koupit (alespoň v JRC říkal pán) takže bez UT2004_Keygen.zip se neobejdeme. Ten jsem musel pustit ve Wine a fungoval. Hra se nainstaluje do /usr/local/games/ut2004 a na 64bitovém systému je nutno ji pouštět z této binárky ./System/ut2004-bin-linux-amd64.
Jak již to bývá na LANPárty se povětšinou hrají patchnuté opravené verze. Tak jsem musel řešit stažení a instalování ut2004-lnxpatch3369.tar.bz2 (22M). Bylo to super, když se hra začala přihlašovat na vytvořený UT2K4 lokální LAN server. Ovšem problém nastal v ukrutně pomalém stahování textur a map.
Díky Wine jsem si pohrál s ut2004-ECEBonusPack.exe a vydoloval z něj soubory a ty následně umístil do user@ubuntu:~/.ut2004.
Pak už náslodovalo konečně hraní, které mi moc nešlo. Mapy neznám. Je srandovní, že i Windows useři zápasili s vyladěním svých instalací. Škoda, že tato linuxová hra se nedá koupit na Steamu :-(
Zpětně moc děkuji za příjemný večer všem organizátorům této soukromé LANpárty. Alespoň na chvilku jsem si zavzpomínal jaké je to na LAN párty.
V DKčku by to chtělo uskutečnit nějakou Steam LAN Párty, ale to bude chtít konektivitu do internetu :-)