Telestar DIGIBIT R1: Palydovinė TV į namų tinklą

Aprašysiu kaip paleidau palydovinę televiziją namų tinkle ir kokia įranga bei programinė įranga tam naudoju. Šiame straipsnelyje pateiksiu bendrus pajungimo principus be smulkių aprašymų, o sekantį kartą labiau paliesiu serverio konfigūravimo ypatumus.

Ankstesniame straipsnyje rašiau apie SAT>IP technologiją ir jos veikimo principą. Kas dar neskaitėte rekomenduoju pirmiau peržvelgti SAT>IP: naujas žvilgsnis į palydovinę televiziją, o tie, kas seka blog’o naujienas, kviečiu skaityti toliau.

Jau buvau užsiminęs, kad įsigijau Telestar DIGIBIT R1 serverį nes atsirado poreikis namie pasileisti pilnavertę, IP pagrindu veikiančią, televiziją. Mano reikalavimai televizijai štai tokie:

  • maksimali vaizdo kokybė;
  • apjungti DVB-S/S2, DVB-T/T2, IPTV transliacijas;
  • laidų įrašymas;
  • timeshift;
  • be televizoriaus privalo veikti telefone ar kompiuteryje;
  • veikti autonomiškai be pašalinio įsikišimo;
  • vartoti nedaug elektros energijos bei veikti tyliai;

 Kad būtų aiškiau apie ką aš čia rašau, pridedu schemą, pagal kurią realizavau projektą. Tai nėra galutinis variantas, nes ateityje bus prijungta DVB-T sistema, vaizdo stebėjimo kameros.

Taip schematiškai atrodo SAT>IP pajungimas. Palydovinė lėkštė sujungiama su SAT>IP serveriu, pastarasis jungiamas į namų tinklą, TVHeadend užsiima tinklinio tiunerio valdymų bei kanalų tinklelio formavimu.

Telestar DIGIBIT R1 serveris

Įrenginuką įsigijau ebay turguje, pirkimo metu kainavo 150 europietiškų. Imant faktą, kad gaunami 4 tiuneriai, manau, jog kaina tikrai nėra didelė.  DIGIBIT R1 – nedidelė dėžutė, galinti aptarnauti 4 įrenginius (klientus), kurie, savo ruožtu, tuo pačiu metu, gali žiūrėti skirtingus kanalus. Iš tiesų galima prijungti kur kas daugiau klientų su sąlyga, kad pastarieji kanalus žiūrės iš to pačio dažnio. Įrenginys turi 100 mbs LAN. 

DIGIBIT R1
Telestart DIGIBIT R1 SAT>IP serveris. Priekinėje panelėje maitinimo indikatorius, LAN indikatorius ir tiunerių statuso indikatoriai.
DIGIBIT R1
Telestar DIGIBIT R1 SAT>IP serverio galas. 4 LNB įėjimai, USB jungtys, RJ45 lizdas, maitinimo lizdas ir įjungimo/išjungimo mygtukas.

Serveris jungiamas į namų tinklą, kurį šiuo metu valdo Huawei B535 maršrutizatorius, o konfigūravimas pasiekiamas per web sąsają. Web sąsaja trijų kalbų: vokiečių, anglų ir prancūzų. Kadangi iš principo tai FTA tipo (nekoduotiems kanalams) skirtas įrenginys, dar reikėjo pastatyti tarpinį serverį, kuris atliks “juodą darbą” tolimesniame kanalų apdorojime. Čia, žinoma, buvo įdarbintas puikus ir nemokamas “streamer’is-kombainas” TVHeadend (sutrumpintai TVH), kuriam daugiau dėmesio skirsiu sekančiame straipsnyje.

DIGIBIT R1 serveris nereikalauja specialių nustatymų, užtenka prijungti palydovinę lėkštę, per web sąsają nurodyti koks palydovinio konverterio tipas ir, ko gero viskas. Tolimesniais reikalais užsiima jau minėtas TVH. Taip pat šiam įrenginiui yra alternatyvus firmware satip-axe, bet man paleisti, kad gerai veiktų, taip ir nepavyko.

DIGIBIT R1 palydovinio konverterio nustatymai
Apskritiminės poliarizacijos, 4 išėjimų palydovinio konverterio nustatymai. LO1 ir LO2 reikšmės turi būti vienodos.

Palydovas ir likęs įrangos setup’as

TV programų šaltiniu pasirinkau Eutelsat 36A/36B palydovą skriejantį 36º rytų ilgumoje. Kad išnaudoti visas DIGIBIT R1 galimybes, įsigijau keturių išėjimų (Quad) Telesystem TS400C-F konverterį ir 75 cm TRIAX lėkštę. Koaksialinį kabelį paleidau per saugiklius nuo žaibų, gal labiau dėl ramios galvos, nors gal ir padės kritinę minutę. Geriau, aišku, jos nebūtų.

Tarpinio serverio rolę patikėjau Rock64 mikrokompiuteriui, kuriame įdiegiau TVHeadend programą. Pastarasis be DIGIBIT R1 valdymo dar užsiima grojaraščio formavimu, laidų įrašymu, elektroniniu programų gidu (EPG) ir kanalų srautinimu per klientus. 

Teisybės dėlei reikia paminėti, jog kol kas viskas yra testo būsenoje ir tinklo laukia rimtas atnaujinimas, nes minėto maršrutizatoriaus ateitis labai miglota, bent jau srautų dalintojo misija jam tikrai negresia. Greičiausiai liks kaip 4G modemas. Taip pat pakeisiu mikrokompiuterį šiek tiek galingesnio, o gal sugalvosiu normalų dedikuotą serverį pastatyti, kaip sakoma, laikas parodys.

Rezultatai ir pastabos

Rezultatai pranoko lūkesčius. Net ir ant “kreivo” tinklo sukasi pakankamai gerai. Kanalai pasiekiami iš telefono, kuriame įdiegtos VLC bei TVHClient aplikacijos, taip pat laptope su bet kuria programa kuri skaito m3u failus, o taip pat CoreELEC (KODI) priedėliai. Taip pat kanalai dalijasi uPnP/DLNA protokolu. Labai patiko rodomo vaizdo kokybė, bet čia gal labai individualu ir subjektyvu. Pats DIGIBIT R1 veikia stabiliai, palikus streaminti kelias paras, problemų neatsirado. Temperatūros matavimas parodė, kad žiūrint vieną HD kanalą kaista apie 38ºC, paleidus antrą temperatūra šokteli dar keliais laipsniais ir pasiekia per 40ºC.

Kaip minusą pastebėčiau kiek lėtoką kanalų perjungimą CoreELEC sistemoje, nors PC ir telefone viskas labai normaliai. Bet kadangi nesu iš tų, kurie šokinėja nuo kanalo prie kanalo, tos kelios sekundės mane tikrai tenkina.

Bus daugiau…

SAT>IP: naujas žvilgsnis į palydovinę televiziją

Pagalvojau, o kodėl gi nepasidalinus žiniomis su blog’o skaitytojais apie mūsų šalyje gal nelabai paplitusia, tačiau gan perspektyvia SAT>IP technologija, kuri apjungia palydovinės televizijos signalą ir IP tinklus.

Apie SAT>IP pats sužinojau palyginus neseniai, gal prieš dvejus metus. Skaitydamas internete dokumentaciją greitai supratau, jog reikalas pakankamai geras ir verta pataupyti įrenginio įsigijimui. Taip namuose atsirado Telestar DIGIBIT R1 SAT>IP serveris, bet apie jį plačiau kituose straipsniuose. O dabar plačiau apie SAT>IP.

Palydovinę televiziją prisiminus…

Prieš pradedant gilintis į SAT>IP reikalus pravartu prisiminti palydovinės televizijos laikus, kas Lietuvoje buvo gana populiaru dešimt-penkiolika metų atgal. Tuomet nemaža dalis tv žiūrovų išsikeldavo palydovinės televizijos anteną (lėkštę) ir mėgaudavosi puikia vaizdo kokybe, na o kanalų gausa lenkė visus žinomus to meto televizijos tiekėjus.

Laikui bėgant technologijos keitėsi, atsirado pirmieji išmanūs telefonai, kartu dienos šviesą išvydo planšetiniai kompiuteriai. Spartėjantis internetinetas atvėrė naujas galimybes IPTV televizijos plėtrai, o miestuose pradėjo įsitvirtinti kabelinės televizijos. Prasidėjus namų renovacijos bumui, palydovinės antenos dažnu atveju būdavo demontuojamos ir retai grįždavo į savo vietas.

Nors IPTV sparčiai braunasi į mūsų namus, bet dažnu atveju vis dar ženkliai nusileidžia palydovinės televizijos kokybei, nes TV srautai, dėl geresnio pralaidumo, suspaudžiami iki neregėtų maksimumų, kas ženkliai prastina vaizdo kokybę. O kur dar nelegalūs tiekėjai, kur kokybė, dažnai, lieka kažkur už suvokimo ribų?

Na o dabar apie pačią SAT>IP technologiją

Pradėjus plisti IPTV tinklams, palydovinės televizijos tiekėjai ir DVB technologijos kūrėjai susizgribo, jog laikas kažką daryti, nes atsirado reali grėsmė visai “kosminei” televizijai likti “ant ledo”. Pripažinkime, namuose jau retas tiesiasi UTP kabelius, ant slenksčio 5G ryšys, tad ką jau kalbėti apie masyvius koaksialinius kabelius, kurie šiais laikai tapo labai jau  nebemadingi. O kadangi vis daugiau namų įrangos virto išmania, atsirado poreikis rasti būdą kaip šiuolaikiniam žiūrovui pateikti palydovinį signalą.

Oficialus SAT>IP logotipas.

Taip dienos šviesą išvydo SAT>IP technologija, kuri leido palydovinį signalą tiekti į namų tinklą neprarandant kokybę. Technologija žavi ir tuo, jog įrengti nėra sudėtinga, nes užtenka palydovinės antenos, konverterio ir serverio, kuris sujungiamas su namų tinklu. SAT>IP veikia serveris-klientas pagrindu, taip pat gali būti leidžiamas per tokius TV serverius kaip puikiai užsirekomendavęs TVHeadend. Tokiu būdu SAT>IP leidžia srautą žiūrėti per kompiuterį, telefoną, planšetinį kompiuterį, tv priedėlį (android dėžutė), išmanų televizorių, o taip pat dalijasi DLNA protokolu.

Kam tai skirta?

SAT>IP formatas turėtų patikti nuosavų namų savininkams, atokesnių kaimų ir vienkiemių gyventojams, kur interneto ryšys nėra pakankamas stabiliam IPTV tiekimui, taip pat žmonėms, kuriems svarbu kokybiškas vaizdas ekrane. Dar viena niša, kurioje galima realizuoti šią technologiją – viešbučiai, kaimo turizmo sodybos, visur, kur reikia televiziją pateikti daugiau nei į vieną įrenginį.

SAT>IP įranga ir veikimo principas

Čia labai nesiplėsiu, nes, kaip ir minėjau pradžioje, bus atskiras straipsnis apie įsigytą SAT>IP serverį. O jei labai trumpai, tai norint paleisti namie palydovinės televizijos programas į tinklą, reikia įsigyti palydovinę anteną (lėkštės) ir SAT>IP serverį, dar vadinamų SAT maršrutizatoriumi. Serveris jungiamas prie namų tinklo. Tokiu būdu palydovinis signalas tampa prieinamas tiek per LAN tinklą, tiek per WiFi. Kad būtų paprasčiau suprasti dalinuosi video kaip tai veikia:

SAT>IP technologija vaizdžiai.

Pirmos dalies pabaiga. Sekančiame straipsnyje detaliau aprašysiu kokią įrangą naudoju pats.

Apie X96 Air ir mini palyginimas su Khadas VIM3L

Paėmiau iš GearBest šitą X96 Air dėžutę ir kažkiek pamaigiau. Susikaupė minčių, todėl pabandysiu trumpai aprašyti kaip matau ją savo akimis.

Šiame pranešime nebus įmantrių testų, nes pastaruoju metu išsikėlęs gyventi atokiau nuo civilizacijos, tad nelabai turiu kaip padaryti gilesnių testų. Tačiau bandysiu viską aprašyti grynai iš vartotojo pusės, kaip tai suprantu.

X96 Air – nedidelis, bet pakankamai galingas.

X96 Air specifikacijos:

  • CPU: Amlogic S905X3 64-bit keturių branduolių ARM® Cortex ™ A55
  • GPU: G31 ™ MP2
  • Android 9.0 OS
  • RAM 4GB / 32GB
  • Palaiko HD: 8K at 24fps, 4K at 60fps, UHD, HDR+, Airplay, Miracast
  • Palaiko HD 2.1, USB3.0, USB2.0
  • 4GB RAM + 32GB ROM ir 4GB RAM + 64GB ROM palaiko 2.4G + 5.8GHz Dual WiFi, Bluetooth 4.1
  • Palaiko firmware online atnaujinimą

Komplektacija

Dėžutėje rasime patį TVBOX, maitinimo šaltinį, trumpą vartotojo vadovą (pastarasis iš ties labai trumpas), HDMI kabelį ir distancinį pultą. Viskas tvarkingai supakuota.

Išvaizda

Korpusas plastikinis, bet neatrodo pigiai, nesijaučia to skurdumo, kai plastikas tarsi apsitrynęs ar, rodos, tuoj suskils. Priekyje yra laikrodukas. Gale yra maitinimo lizdas, optinis išėjimas, HDMI, LAN, AV ir USB lizdai. Šone – 2 USB iš kurių vienas USB 3.0 bei µSD lizdai.

Gale rasime POWER, SPDIF, HDMI, LAN, AV ir USB jungtis.

Android 9 darbas

Dėžutę valdo Android 9 OS. Ties čia kiek daugiau parašysiu. Kas liečia patį OS veikimą, tai čia stipriai prikibti negalėčiau, vartosi visai padoriai, nesijaučia “lag’o”. Bet dėl pačio valdymo valdymo su distanciniu pultu, tai galima būtų ištisą romaną kurti. Na gerai, nėra taip tragiška, bet valdymas tikrai nepatogus. Pastoviai groti su mygtukais, nes čia, žiūrėk, reikia kad valdytųsi su rodyklėmis, o čia jau reikia pelės funkcijos. Tas kažkiek nervina. O ilgiau panaudojus net pradeda erzinti. Kiek pavargus spjoviau į Android ir sudiegiau CoreELEC, bet apie tai kiek žemiau.

Įdiegtos bei papildomos programos

Ypatingų programų kaip ir nėra. Radau KD player, čia gi tas pats gerai pažįstamas KODI, yra Netflix, kurį paleidus maloniai paprašo atnaujinti (galima ir nenaujinti), bet Google Play parduotuvėje juodu ant balto parašo, kad device not supported, dar ten kažkoks Player yra, na kaip ir viskas. Todėl nusprendžiau įdiegti kelias papildomas programas.

Go3 – įsidiegė, bet normaliai neveikė. Su navigacija joje visiškai prapuoliau, nes normaliai neveikė nei naudojant “strėlytes” nei pelės emuliavimą. Spaudai, spaudai, o rezultato normalaus kaip nėra, taip nėra. Šiaip ne taip paleidau serialą, bet nepatogumas dieviškas. Pradėjus žiūrėti serialą pasirodė, kad kažkodėl kalba buvo parinkta latvių, o norint pakeisti teko įjungti pelės emuliavimą, žaisti kol pavyko. Na nepatogu, deja…

GO3 platforma. Serialas “Mano meilės karantinas”. Valdymas tikrai nepasirodė patogiu.

Jellyfin – kita programa, klientas. Namie yra Jellyfin serveriukas, tai pabandžiau prisijungti prie jo. Automatiškai nerado, bet suvedus duomenis rankiniu būdu nušvito. Jellyfin apsas valdymo kaip su įprastu distanciniu visai nepripažino, todėl teko emuliuoti pelę. Visą turinį atvaizdavo, bet niekaip nesugebėjo pagroti. Paspaudus ant filmo atrodydavo kad jau paleis, bet taip ir likdavo tamsus ekranas. Stipriai nesigilinau, gal ir pas mane bėdos bet…

Žodžiu ties čia pažintis/vargai su Android sistema baigėsi. Dar kartą įsitikinau, kad tai šiek tiek ne man. Bent jau toks pateikimas kaip dabar yra tikrai netenkina. Ateity, jei atrasiu laisvesnio laiko, pabandysiu įrašyti ATV, apie tai kažkiek informacijos radau Freaktab forume. Internete rašo, kad ATV labiau pritaikytas valdyti su distanciniu pultu, bus matyti.

CoreELEC reikalai

Gerai, knieti pasižiūrėti kaip ant šitos dėžutės atrodo CoreELEC, kuris turi palaikymą S905X3 procesoriams. Parsisiunčiu įdiegimo failus, įrašau į µSD kortelę, tam naudoju Etcher įrankį ir, galop, įdedu į X96 Air. Neilgai trukus pakyla CoreELEC sistema. Dar reikia dėžutę “atvesti į protą”, kad veiktų distancinis bei įjungimas. Smulkiai neaprašinėsiu, jei kas tai darysite informaciją rasite čia. Pastebėčiau tik tiek, kad kažkiek distancinis su CoreELEC bukokas, kartais reikia kelis kart paspausti, kad įvykdytų komandą, bet tai mažiau erzina nei blaškymasis Android sistemoje.

Dabartiniu atveju CoreELEC startuoja iš SD kotelės, ištraukus – leidžiasi gimtasis Android 9. Visa kita standartiškai pažįstama, kaip ir visose HTPC sistemose. Kas bandysite ir norėsite nusistatyti KODI pagal save, rekomenduoju paskaityti šias temas: KODI nustatymai. I dalis ir KODI nustatymai. II dalis.

Čia gerai veikia ir minėtas Jellyfin. Taip pat išbandžiau IPTV, kanalus, subjektyvia nuomone, kiek lėčiau atidarinėja. Tačiau jei lyginant su beveik tokį patį Soc turinčiu Khadas VIM3L, kurio apžvalgą rasite Khadas VIM3L HTPC grotuvas. Apžvalga., tai X96 Air, nors ir turėdamas dvigubai daugiau RAM, yra šiek tiek lėtesnių apsukų. Tai tiesiog jaučiasi ilgiau pamaigius dėžutę. Tiesa, veikia ir Bluetooth.

Na ir pabaigai

O pabaigai trumpi testukai:

X96 Air

  • Android startas 39 sek.
  • CoreELEC startas 31 sek.
  • CoreELEC iš sleep mode 8,4 sek.
  • Temp. korpuso apačia 50ºC
  • Temp. korpuso viršus 45ºC

Khadas VIM3L

  • Android startas NĖRA
  • CoreELEC startas 29 sek.
  • CoreELEC iš sleep mode 8,4 sek.
  • Temp. korpuso apačia 46ºC
  • Temp. korpuso viršus 48ºC

Iš čia galima matyti, kad Khadas šiek tiek greičiau startuoja “nuo nulio” na ir kiek mažiau kaista. Visa kita identiškai neskaitant, kad X96 Air šiek tiek nusileidžia guvumu. Bet įvertinus faktą, kad pigesnis daugiau nei dvigubai už Khadas, X96 Air tampa puikiu TVBOX’u, ypač su CoreELEC sistema. Žodžiu tiks tiek Android sistemų gerbėjams, tiek mėgstantiems pasikrapštyti ir sistemą susikurti pagal save.

KODI sync – naudojame vieną duomenų bazę

Kodi Sync

Kaip pasidaryti KODI-SYNC, centrinę duomenų bazę, kuria naudotųsi keletas KODI klientų? Tai nėra sudėtinga, užtruksime tik 10 min. Važiuojam!

Kam to reikia? Viskas labai paprasta: įsivaizduokite situaciją, jūs ramiai žiūrite filmą ar klausotės muzikos, tada įsiveržia pikta žmona ir nuveja jus lauk nuo ekrano, nes reikia eilinę muilo operą pavėpsoti. O jūs ramiai pakylate nuo sopkutės, švelniai pabučiuojate žmoną į žanduką, nueinate į kitą kambarį ir pasileidę KODI mėgaujatės turiniu nuo ten, kur ir baigėte. Kietai? OK. Imamės darbo.

Visam šitam reikalui reikia turėti bent du KODI klientus ir namų serveriuką su Linux sistema. Apie tai, kodėl gerai namų serveris rašiau straipsnelyje Namų serveris. Kodėl verta jį turėti? Kas myli savo duomenis ir mėgsta patogiai pasiekti iš bet kurio pasaulio taško tikrai namie turės NAS, o jei pastarasis savo rankomis surinktas, tai dar geriau. Taigi imamės darbo. Kaip ir visada teks prisijungti prie komandinės eilutės ir suvedinėti komandas. Linux’e be šito vargu ar išsiverstume.

Kodi Sync
Duomenų bazės sinchronizavimas tarp KODI klientų.

DĖMESIO

Kad viskas teisingai veiktų privalu, kad visi KODI klientai naudotųsi ta pačia media biblioteka. Kitaip tariant filmai, muzika turi būti namų serveryje.

MySQL duomenų bazės diegimas ir paruošimas

Jei duomenų bazė dar nesudiegta, pats laikas tai padaryti. Vedame komandą:

sudo apt install mariadb-server

Su mėgstamu redaktoriumi, aš naudoju nano, atsidarome konfigūracinį failą /etc/mysql/mysql.conf.d/mysqld.cnf Susirandame eilutę bind-address = 127.0.0.1 ir pakeičiame į bind-address = serverioIP (pvz. bind-address = 192.168.1.111). Spaudžiame CTRL + O (išsaugome) ir CTRL + X (išeiname iš redaktoriaus) Perkrauname mysql servisą:

sudo service mysql restart

Dabar paruoškime duomenų bazę KODI klientų prijungimui. Vedame komandą:

mysql -u root -p

Ir suvedame šitaip (įvedus eilutę paspaudžiame ENTER):

CREATE USER 'kodi' IDENTIFIED BY 'kodi';
GRANT ALL ON . TO 'kodi';
flush privileges;

Uždarome redaktorių \q ir ties čia su duomenų baze reikalai baigti. Sekantis etapas KODI klientų prijungimas. Jei trūksta išsamumo galite paskaityti oficialioje KODI wiki.

KODI prijungimas prie bendros duomenų bazės

Pusė darbo jau nudirbta, belieka prijungti KODI klientus prie sukurtos duomenų bazės. Čia mums reikės pasirašyti advancedsetting.xml. Kadangi naudoju CoreELEC sistemą, tai toliau aprašomi veiksmai bus pagal ją.

Prisijungiam prie CoreELEC, gauname komandinę eilutę ir vedame:

nano .kodi/userdata/advancedsettings.xml

Patalpiname štai tokį turinį, kur <host>***.***.***.***</host> vietoje žvaigždučių įrašome mūsų serverio IP. Tarkime mūsų atveju tai 192.168.1.111

<advancedsettings>
  <videodatabase>
    <type>mysql</type>
    <host>***.***.***.***</host>
    <port>3306</port>
    <user>kodi</user>
    <pass>kodi</pass>
  </videodatabase> 
  <musicdatabase>
    <type>mysql</type>
    <host>***.***.***.***</host>
    <port>3306</port>
    <user>kodi</user>
    <pass>kodi</pass>
  </musicdatabase>
  <videolibrary>
    <importwatchedstate>true</importwatchedstate>
    <importresumepoint>true</importresumepoint>
  </videolibrary>
</advancedsettings>

Spaudžiame CTRL + O (išsaugome) ir CTRL + X (išeiname iš redaktoriaus) ir perkrauname KODI klientą. Ta patį pakartojame ir kituose KODI klientuose. Dabar belieka viename kliente per naujo nuskenuoti filmų ar muzikos bibliotekas ir visas turinys automatiškai atsiras kituose įrenginiuose.

Na ir viskas, tiek to vargo. Dabar bet kuriame namų įrenginyje, kuriame yra KODI bibliotekos bus sinchronizuotos tarpusavyje.

Kaip XIAOMI Mi BOX S pradėjo gerai rodyti filmus

Susitikome su bičiuliu paplepėti apie gyvenimą ir kalba pasisuko apie tai, kaip, kur ir per ką žiūrime filmus. Užsiminus, jog visą turinį žiūriu per modifikuotą Beelink GT1 Ultimate BOX, bičiulis tarė:
– Žinai, įsigijau taip giriamą Xiaomi Mi BOX S grotuvą, bet jis man kažkoks “medinis”…

Pradėjau klausinėti kas ir kaip, draugas paaiškino, kad beveik visus filmus žiūrint vaizdas trukčioja, nepriklausomai ar tai iš USB “fleškės” ar iš YouTube tinklapio, nėra to malonumo akims nors tu ką. Kadangi tai nebuvo man nepažįstama situacija, pasišoviau pagelbėti “atvedant į protą” Xiaomi dėžutę.

Draugas matė kaip veikia Kodi grotuvas, todėl sulygome, kad pagal galimybes pastarąjį įrašysiu ir į Mi BOX. Buvo mintis bandyti Xiaomi paversti į CoreELEC, bet eigoje šios minties buvo atsisakyta.

Ir taip, Xiaomi Mi BOX S ant mano stalo pasiruošęs testavimui. Man labai magėjo ant šitos dėžutės prasukti kelis testus, nes ne iš vieno buvau girdėjęs, jog Xiaomi tikrai vertas savo pinigų bei puikiai rodo. Dėl tos priežasties tiesiog degiau noru kuo greičiau viską pasileisti.

Xiaomi Mi BOX S

Trumpai apie patį Xiaomi grotuvą. Į akį krito tai, kad jis mažas ir tikrai dailus. Dėl skonio nesiginčijama, bet man jis tikrai patiko. Kaip sakoma lipo akiai.
Specifikacijos:

  • Rezoliucija: 4K (3840 x 2160)
  • CPU: Cortex-A53 Quad-core 64bit (Amlogic 905W)
  • GPU: Mali-450
  • RAM: 2GB DDR3
  • Vidinė atmintis: 8GB eMMC
  • Operacinė sistema: Android 9

Pasiruošimas testams

Mi BOX pajungtas prie Sharp LC-LE430E televizoriaus, kuris tuo pačiu atstoja ir kompiuterio monitorių. Taip, tai nėra pats geriausias televizorius pasaulyje, juoba, kad ir pats turi šiek tiek bėdų, bet šiuo atveju sueis. Taip pat visam šitam reikalui reikalingas fotoaparatas su valdomu užraktu, mano atveju tai Canon EOS 700Da (a nes tai modifikuotas fotoaparatas astrofotografijai)

Judder test
Viskas paruošta testavimams.

Kaip čia viskas vyksta? Labai paprasta: fotoaparatas pastatomas priešais ekraną, nustatoma 1 sekundės ekspozicija ir leidžiami specialūs vaizdai juos fotografuojant. Naudojau du testinius video su skirtingais FPS – laikrodį ir “šachmatus”.

RTINGS 24p “judder” testas.

Kas norite pabandyti ištestuoti savo box ar televizorius medžiaga guli čia. Visų testų atlikimo metodika tokia pati.

Testavimas

Pirmiausia prasukau testus ant paprasčiausio YouTube app’so, kuris standartiškai įdiegtas į Xiaomi Mi BOX S. Beje, reikia atkreipti dėmesį, kad šiame box’e sukasi Android TV operacinė sistema. Paeiliui buvo leidžiami vaizdai su skirtingomis 60p, 50p, 30p, 25p, 24p skleistinėmis, taip pat “šachmatai” ir viskas fotografuojama.

Ir ką mes čia matome. Beveik visi testai praeina sklandžiai, tačiau su 24p ne. Iš karto pastebime kaip strėlės nepataiko į savo vietas, o “šachmatai” pabirę. Idealiu atveju šachmatų lenta turi gautis balta, tačiau čia dar labai priklauso ir nuo televizoriaus, kuris, kaip minėjau, mano atveju ne pats geriausias. Kompromisinis variantas – šachmatų lenta matosi kaip šachmatų lenta, su tolygiai išsidėliojusiais langeliais. Žinant faktą, kad dauguma filmų yra 24p, gauname netolygią peržiūrą, kur vaizdas rodomas su pastebimais trukčiojimais. Beje, ne visi žmonės tai pastebi. Jei esate vienas iš jų, jums pasisekė. Beje, strigimų nebus ir žiūrint IPTV, nes daugeliu atveju atitiks FPS.

Sekančiu žingsniu į Mi BOX sudiegiau Kodi ir Smart YouTube. Ir čia testai tiesiog buvo puikūs. Tiek Kodi, tiek Smart YouTube sugeba pakeisti skleistinę ir pritaikyti prie rodomo šaltinio, todėl testai praėjo be netikėtumų.

Kaip matome testai pastebimai kitokie, ypač tai, kas siejasi su 24p. Ir čia, reikia pastebėti, didelis pliusas Xiaomi Mi BOX S įrenginukui, nes dažnas kiniškas Android box su tuo nesusitvarko ir net nebūna normalaus sprendimo būdo kaip tai pakeisti. Prie to pačio galite paskaitinėti Kodėl KODI nenoriai dirba Android įrenginiuose?

Tad patarimas prieš perkant:

Būtinai suraskite progą patestuoti įrenginį, kad nereikėtų ateityje gailėtis! Aklai pasitikėti gražiais aprašymais internetinėse parduotuvėse tikrai nėra gerai.

Taigi reziumuojant. Šalia vienas kito sudėsiu testų rezultatus. Idealiu atveju “šachmatų lenta” turėtų gautis balta, tačiau patikrinęs patį televizorių gavau tą patį rezultatą, todėl šiuo atveju galima teigti, jog pačio grotuvo bėda buvo išspręsta.

Reikia paminėti, kad šį testą galima atlikti ir su mobiliuoju telefonu, tačiau pastarasis turi turėti galimybę keisti kameros parametrus, o tiksliau užrakto greitį (expo). Būtina nustatyti 1 sekundę.

Tai tiek šiam kartui iki kitų susirašymų 🙂

Khadas VIM3L HTPC grotuvas. Apžvalga.

Khadas VIM3L HTPC

Po Raspberry Pi atėjimo į rinką pradėjo, it grybai, dygti mažųjų kompiuterių gamintojai. Šiame straipsnyje aprašysiu apie Khadas gaminį, kuris pasirodė labai vertas dėmesio.

Apie Khadas gamintoją, o tiksliau jų produktus buvau girdėjęs jau iš anksčiau. Pro akis praslysdavo informacija, kad labai neblogą geležį Khadas inžinieriai talpina ant montažinės plokštės. Kažkur prieš du metus jau buvo žinomi VIM1 ir VIM2 modeliai. Kaina jų kiek didesnė nei kitų konkurentų, todėl mane tai ir stabdė. Ir vis tik atėjo ta diena, kai nusprendžiau įsigyti naujausią jų kūrinį Khadas VIM3L HTPC Kit.


Khadas VIM3L HTPC rinkinys

Khadas VIM3L
Khadas VIM3L HTPC – puikus media grotuvas.

Šios linijos filosofija labai paprasta, – tai jaunesnysis brolis, “išlengvinta” VIM3 versija, orientuota į HTPC funkcionalumą. Viskas gerai apgalvota ir estetiškai pateikta pirkėjui.

Į rinkinį įeina Khadas VIM3L mikro kompiuteris, firminis radiatorius, aušinimo plokštelė, kuri pritvirtinta apačioje, malonus akiai korpusas ir gerai rankoje gulintis distancinis pultas. Taip pat komplekte rasime firminį Khadas maitinimo bloką su pintu USB-C laidu. Viskas jau sudėta ir į savo vietas, todėl pačiam susirinkti iš detalių neteko.


Specifikacija ir geležis

Žemiau pateiksiu ką apie plokštę deklaruoja gamintojas iš spec. dokumentacijų:

  • SoC Amlogic S905D3-N0N 1.9GHz quad core Cortex-A55 CPU
  • ARM G31 MP2 GPU up to 800MHz, OpenGL ES 3.2 Vulkan 1.0 and OpenCL 2.0
  • 4Kx2K@60fps+1x1080P@60fps
  • Dolby Vision and HDR10, HDR10+, HLG and PRIME HDR video processing
  • TrustZone based security for DRM video streaming
  • 1.2 TOPS Performance NPU (dirbtinio intelekto mikroschema)
  • SPI Flash 16MB
  • LPDDR4/4X 2GB RAM
  • EMMC 5.1 16GB
  • Wi-Fi 802.11a/b/g/n/ac, 2X2 MIMO with RSDB
  • Bluetooth 5.0
  • LAN 10/100 / 1000M Wake on Lan
  • USB HOST x2 (900mA & 500mA Load)
  • USB Type-C USB2.0 OTG & USB PD
  • Wide Input Voltage Range from 5V to 20V
  • HDMI2.1 transmitter with 3D, Dynamic HDR, eARC, CEC and HDCP 2.2 support
  • M.2 2280 NVMe SSD Supported
  • IR Receiver 2 Channels
Khadas VIM3L HTPC SBC
Khadas VIM3L plokštė pagaminta labai kokybiškai.

Taigi, po specifikacijų, pakalbėkime apie geležį. Pirmiausia, kas labiausiai patraukė akį, tai preciziškai surinkta plokštė. Tikrai ne dažnas gaminys atkeliavęs iš Kinijos gali pasigirti tokiu tvarkingu pagaminimu. Ne mažiau puikiai atrodo ir pats gamintojo tinklapis, kuris sudaro solidžios firmos įspūdį.

Asmeniškai man patiko ir dar vienas dalykas, o būtent tai, kad visi išėjimai išdėstyti vienoje plokštės pusėje. Man tai atrodo labai estetiškai ir praktiška. Ten pat rasime 2 USB portus (vienas 3.0 o kitas 2.0), LAN, HDMI, microSD ir USB-C lizdus. Plokštės apačioje rasime ir M.2 jungtį, prie kurios galima prijungti specialią M2X išplėtimo plokštę ir tada prijungti M.2 SSD diską. Aš buvau tikras, kad galima tiesiogiai jungti SSD, bet susisiekus su gamintoju buvo išaiškinta, kad be išplėtimo plokštės nieko nebus. Na, o jei esate audiofilas, tai gamintojas pasirūpino ir audio plokšte, kurią taip pat turėtumėte įsigyti atskirai.


Programinė įranga

Į vidinę, eMMC 16GB, atmintį sudiegta jau gerai pažįstama CoreELEC sistema. Tuo metu buvo 9.2.0 versija. Taip pat šiai plokštei yra ir Android 9.0 versija, OpenWRT bei Ubuntu Linux. Dar reikia pastebėti, kad pats plokštės programinės įrangos perrašymas yra itin paprastas, ypač naudojantis firminiu Khadas rescue įrankiu. Mane pastaras funkcionalumas ir galimybės tiesiog pribloškė, todėl ateityje būtinai aprašysiu apie šitą puikų įrankį.

Khadas VIM3L HTPC
Khadas VIM3L HTPC įdiegta CoreELEC sistema.

Testai

Iš karto pasileidus CoreELEC laukė nedidelis nemalonumas, to tiksliau 9.2.0 versija buvo kiek neišbaigta šiai plokštei. Pirmas dalykas į ką atkreipiau dėmesį buvo tai, kad išjungus su distanciniu pultu, Khadas distancinio pulto pagalba jau neįsijungdavo. Su video atkūrimu problemų nepastebėjau, o štai vaizdo kokybė tiesiog džiugino akį. Taip, kas o kas, bet vaizdo aštrumas, spalvos, atkūrimas aukštame lygyje. Mano Beelink GT1 Ultimate prieš Khadas VIM3L tiesiog susigūžęs rūko kamputyje. O pastarojo vaizdo kokybe buvau daugiau nei patenkintas!

Su atkuriamu garsu kiek liūdniau. CoreELEC stable 9.2.0 versijoje bitstream perdavimas labai šlubavo, galima sakyti te sugebėjo perduoti Dolby Digital garsą ir praktiškai nieko daugiau. Perrašius į CoreELEC Nightly versiją išsisprendė problemos tiek su distanciniu pultu, tiek su garso perdavimu. Khadas VIM3L puikiai perduoda Dolby Digital, Dolby Digital+, DTS, HD-Master formatus. Taigi šiuo metu kažkuo prikibti prie CoreELEC ir Khadas VIM3L nelabai rasčiau, nebent tik tuo, kad kol kas nėra pilnai veikiančios stabilios CE versijos. Tačiau žinant faktą, kad Khadas bendradarbiauja su CoreELEC galima garantuoti, kad su sekančiu CoreELEC bus ir stabili versija Khadas VIM3L plokštei.

Na ir, žinoma, testavau bendrą plokštės našumą, kuris aprėpia interneto greičio matavimus bei skaitymo/rašymo į vidinę atmintį greitį . Tam reikalui sudiegiau Ubuntu 18.04.3 LTS. Iš pradžių pasirodė, kad sistema labai stabdo ir jau beveik norėjau viską mesti lauk, bet padarius OS atnaujinimą viskas pasikeitė 180º kampu. Galėčiau pastebėti, kad grafinė aplinka visai smagiai vertėsi. Aišku labai kažko iš 2GB nereikia tikėti, todėl netrukau prisijungti prie komandinės eilutės ir paleisti bench.sh skriptą. Štai kokius duomenis gavau iš testo:

# Khadas VIM3L SBC

Serial		: 2b0c0400012017000006343939463850
Hardware	: Khadas VIM3L

----------------------------------------------------------------------
CPU model            : Amlogic S905D3-N0N
Number of cores      : 4
CPU frequency        :  MHz
Total size of Disk   : 15.0 GB (2.7 GB Used)
Total amount of Mem  : 1861 MB (242 MB Used)
Total amount of Swap : 930 MB (0 MB Used)
System uptime        : 0 days, 0 hour 2 min
Load average         : 1.59, 0.83, 0.33
OS                   : Ubuntu 18.04.3 LTS
Arch                 : aarch64 (64 Bit)
Kernel               : 4.9.190
----------------------------------------------------------------------
I/O speed(1st run)   : 55.5 MB/s
I/O speed(2nd run)   : 55.4 MB/s
I/O speed(3rd run)   : 55.5 MB/s
Average I/O speed    : 55.5 MB/s
----------------------------------------------------------------------
Node Name                       IPv4 address            Download Speed
CacheFly                        205.234.175.175         39.4MB/s      
Linode, Tokyo2, JP              139.162.65.37           5.65MB/s      
Linode, Singapore, SG           139.162.23.4            4.28MB/s      
Linode, London, UK              176.58.107.39           18.4MB/s      
Linode, Frankfurt, DE           139.162.130.8           35.9MB/s      
Linode, Fremont, CA             50.116.14.9             4.69MB/s      
Softlayer, Dallas, TX           173.192.68.18           5.33MB/s      
Softlayer, Seattle, WA          67.228.112.250          4.74MB/s      
Softlayer, Frankfurt, DE        159.122.69.4            21.6MB/s      
Softlayer, Singapore, SG        119.81.28.170           3.56MB/s      
Softlayer, HongKong, CN         119.81.130.170          3.45MB/s      
----------------------------------------------------------------------

Speedtest LAN

Hosted by Telia Lietuva, AB (Kaunas) [2.12 km]: 6.068 ms
Testing download speed................................................................................
Download: 304.44 Mbit/s
Testing upload speed................................................................................................
Upload: 318.26 Mbit/s
----------------------------------------------------------------------

Speedtest Wi-Fi

Hosted by Telia Lietuva, AB (Kaunas) [2.12 km]: 16.032 ms
Testing download speed................................................................................
Download: 268.49 Mbit/s
Testing upload speed................................................................................................
Upload: 288.56 Mbit/s
----------------------------------------------------------------------

Verdiktas

Mano nuomone tai labai gera plokštė, gal kiek brangoka lyginant su konkurentais, bet paperkanti savo kruopščiu montažu, puikiu palaikymu ir našiu darbu. Kadangi tai, visų pirma, dedikuojama kaip HTPC įrenginys, tai ir pagrindinė jo jo paskirtis turėtų būti skirta media atkūrimui. Kam svarbi kokybė, geras vaizdas ir nepriekaištingas garso atkūrimas, tas drąsiai gali rinktis šį modelį.

HiMedia Q10 Pro. Būti ar ne būti?

Ne taip seniai į rankas papuolė išmanusis (Smart) media grotuvas su kietuoju disku viduje HiMedia Q10 Pro. Žmogus davęs šį įrenginį prašė, kad atvesčiau šį grotuvą į protą ir padaryčiau patogesniu naudoti. Ne gana to, kaip paaiškėjo, jame įdiegtas ir grotuvas Kodi. Bet ne viskas buvo taip gražu, kaip norėjosi.

Kaip ir su visa įranga, taip ir su šita, reikia išsiaiškinti kas tai ir su kuo jį “valgyti”. Pagooglinus netruko atvesti į hdmedia.lt tinklapį. Ten pat randu vaizdų aprašymą, sužinau, kad procesorius HiSilicon Hi3798C V200 ir, kaip paaiškėja dar kiek paieškojus info, nėra kažkoks didelis stebuklas ir nelabai kuo skiriasi nuo pigesnio Amlogic S912 procesoriaus. Nediduką palyginimą galima peržvelgti čia.

Apskritai paskaitinėjęs info susidariau įspūdį, kad gal visai neblogas prietaisas man į rankas pakliuvo. Taip pat akis užkliuvo už šitos citatos:

Ištrauka iš hdmedia.lt

Taip pat šis prietaisas išnaudoja visus KODI media centro privalumus. Tai puikus pasirinkimas tiems, kas šiuo metu nori mėgautis 4K raiškos vaizdais su aukščiausios kokybės KODI media centru, galinčiu pasiūlyti pačius naujausius 2019 metų technologinius sprendimus 4K raiškos vaizdo pasaulyje.
HiMedia Q10 Pro 4K grotuvas

Kadangi esu Kodi fanas, tai džiugiai patryniau delnais, – bus viskas paprasta ir žmogui galėsiu atiduoti puikiai sukonfigūruotą grotuvą. Šiaip, pažiūrėjus į grotuvo kainą, nori nenori turi priimti faktą, kad už tokią sumą blogų daiktų gyvenime neturėtų būti…

Taigi, nekantraudamas ištraukiu visą gėrį iš dėžutės. Pats įrenginys iš pažiūros sudaro solidų įspūdį. Metalinis korpusas, laikrodis priekinėje panelėje, yra daug jungčių, tiek USB 2.0, tiek ir mėlyna USB 3.0. Gale prisisuka Wi-Fi antena. Gabaritai nemaži, bet reikia nepamiršti, kad į vidų galima įdėti standartinį 3.5″ HDD. Beje, čiupinėtas modelis buvo su 6TB disku.

Pajungiu prie televizoriaus. Užsikrauna kaip ir daugelis Android dėžučių gana lėtai. Ekrane pasitinka niekuo neypatingas, dažnai pigiose Android dėžutėse sutinkamas pagrindinis ekranas.

Pagrindinis ekranas

Kaip matome nieko įmantraus, standartinė Android aplinka. Daug negalvodamas paleidžiu Kodi. Pasileidžia ir tuo pačiu distancinis pultas netenka dalies savo funkcionalumo. Tarkime iškviesti kontekstinį Kodi meniu man nepavyko nei su vienu mygtuku. Dar įdomiau pasidarė paleidus testinį video gulėjusį kietajame diske.

Paleidžiu video iš Kodi aplinkos, bet kažkokia negera nuojauta, kad čia kažkas ne taip. Vaizdą tai rodo, kokybė tikrai gera, bet paspaudus OK mygtuką tik opa, ir išaiškėja, kad failo grojimu užsiima jau ne pats Kodi, o vidinis Android grotuvas. Iš tikro tokios hibridizacijos mane biesina. Pasipiktinimą kelia tai, kad neina valdyti taip, kaip esu pripratęs. Nuryju karčią piliulę suprasdamas, kad nieko čia nekeisiu, tereikia padaryti taip, kad žmogus galėtų tiesiogiai iš internetinių resursų žiūrėti medžiagą.

Į Kodi sudiegiu tokius priedus kaip Elementum, Kinotrend, Filmux. Bandau leisti. Filmux yra garsas, nėra vaizdo, todėl net nedvejodamas pašalinu. Paleidžiu Elementum. Valio, filmas važiuoja bet… Matosi pastebimas trūkinėjimas. Beje, leidžiu per Wi-Fi, 5Ghz dažnis. Mano turimas Beelink GT1 Ultimate su CoreELEC sistema susitvarko kaip niekur nieko, o čia akivaizdžios bėdos. Tiesa, bėdos ne vien dėl Wi-Fi, bet ir dėl to, kad Kodi neturi teisių keisti skleistinės dažnio (Frame Rate).

Dar vienas nustebimas vėl paspaudus OK mygtuką. Dabar matoma, kad Online filmas leidžiamas grynai per Kodi, bet pastarasis visai neturi jokio valdymo. Tiesiog atsidaro tuščia valdymo juosta, matosi tik progreso linija. Negerai, oi kaip negerai! Taip pat atkreipiau dėmesį, kad tokioje konfigūracijoje Kodi tesugeba išvesti AC-3 ir AC-3 E garsą. DTS ir kiti galimi tik per gimtąjį Android grotuvą, kuris, priminsiu, groja tik iš vidinio disko.

Uždaręs Kodi pabandau, kaip veikia YouTube apsas, kurio ikona puikuojasi pagrindiniame ekrane. Deja, YouTube nepasileido. Android versija 7.0. Pabandau sudiegti Jellyfin klientą ir sujungti su namų serveriu. Deja, ant kiek tapo programa nevaldoma, ant tiek prastai atkūrė video. Su dideliais vėlavimais ir vaizdo trūkinėjimais. Gūžtelėjęs pečiais sudėjau viską atgal į dėžutę.

Šiaip panaršius internete radau, kad yra sėkmingai šiam grotuvui kuriami custom firmware, kuris nesunkiai perrašo ir atnaujina grotuvo funkcionalą, bet užklausus žmogaus jis atnaujinti nepanoro. Pasakė, kad greičiausiai norės įsigyti kažką pilnai veikiančio kaip pas mane, su CoreELEC ar kitu *ELEC kur viskas vienoje vietoje ir puikiai veikia.

Apibendrinus, tai greičiausiai atnaujinus firmware viskas daug maž stotųsi į savo vietas. Jei ne, tai iš principo Kodi reikėtų pašalinti, vis vien nelabai jis funkcionalus. Nebent jis čia tik dėl savo vardo ir grafinės aplinkos (bibliotekų tvarkymo) įdėtas.

Tai tokia štai ta istorija apie media grotuvą HiMedia Q10 Pro.

Fail2ban – velniop įvairaus plauko įsilaužėlius

fail2ban

Pakalbėsiu apie tai, kaip apsisaugoti nuo bandymų nulaužti sistemą bandant nuspėti slaptažodžius. Apie tai, kaip viena nedidelė programėlė gali ženkliai apsunkinti bruteforce robotų darbą.

Visai neseniai rašiau kaip padaryti saugesnį prisijungimą prie savo serverio nenaudojant slaptažodžio. Apie tai galite paskaityti Saugus SSH prisijungimas be slaptažodžio. Šiame straipsnyje aprašysiu vieną įdomią programą, kuri nemaža dalimi papildo serverio saugumą.

Tarkime kažkas bando atspėti jūsų prisijungimo duomenis, pasitelkę programas slaptažodžių laužimui. Dažniausiai tam reikalui yra programos-robotai, kurios pasitelkdamos žodynus bando nuspėti slaptažodį. Įsivaizduokime situaciją, kad mes turime vieną “gerą” slaptažodį, kurį naudojame forumuose, tinklapiuose ir šiaip visur, kur tik reikalauja autorizacijos. Ir įsivaizduokite, kad kažkurį iš tų tinklapių nulaužia, pavagia duomenų bazę su visais slaptažodžiais, pastaruosius patalpindami į slaptažodžių žodynus. Programai-bobotui atrinkti slaptažodį teliks laiko klausimas.

Ir čia ateina toks dalykas kaip fail2ban programa, kuri stebi sistemos logus ir ieško juose įtartinos veiklos. Jos tikslas – surasti įtartiną veiklą, tarkime bandymą slaptažodžio parinkimą ir užblokuoti piktadario IP. Viskas paprasta kaip 2×2.

Taigi mažiau kalbų, daugiau darbų. Diegiame fail2ban ir suderiname, kad filtruotų ssh prisijungimus. Linux terminale vedame komandą:

sudo apt install fail2ban

OK. Sudiegus mums reikia parašyti taisyklę. Tam reikalui /etc/fail2ban aplanke teikia sukurti failą fail2ban.local, kuriame ir aprašinėsime taisykles. Kuriame failą:

/etc/fail2ban/fail2ban.local

Atsidariusiame lange suvedame taip:

[DEFAULT]

# "bantime" is the number of seconds that a host is banned.
bantime = 15m

# A host is banned if it has generated "maxretry" during the last "findtime" seconds.
findtime  = 15m

# "maxretry" is the number of failures before a host get banned.
maxretry = 5

# SSH apsauga
[ssh]
ignoreip = 127.0.0.1/8 ::1 192.168.0.1/32
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3

Išsaugome nuspaudę klavišų kombinaciją CTRL+O (O raidė) ir išeiname spausdami CTRL+X

Šiek tiek apie tai, ką mes ten suvedėme. [DEFAULT] reikšmės bantime, findtime ir maxentry

[DEFAULT]

# "bantime" is the number of seconds that a host is banned.
bantime = 15m

# A host is banned if it has generated "maxretry" during the last "findtime" seconds.
findtime  = 15m

# "maxretry" is the number of failures before a host get banned.
maxretry = 5

yra nukopijuota iš jail.conf failo, kurį nerekomenduojama redaguoti. Arba jei norima tiesiogiai redaguoti, tai geriau pasidaryti to failo kopiją. Toliau trumpai kas čia per nustatymai:

  • bantime = kiek minučių bus užblokuotas IP ;
  • findtime = hostas bus užblokuotas, jei pakartotinai per nurodytą laiką bandys laužtis;
  • maxretry = numatytas galimų suklydimų skaičius, jei nenurodo kitaip taisyklė;

Na ir žemiau aprašoma taisyklė, kurią monitorins fail2ban:

[ssh]
ignoreip = 127.0.0.1/8 ::1 192.168.0.1/32
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3

Detaliau apie ką mes čia:

  • ignoreip = IP adresai į kuriuos fail2ban nekreips dėmesio;
  • enable = true (įjungta taisyklė);
  • port = kuriam portui taikoma taisyklė;
  • filter = sshd (aplanke filter.d esančios taisyklės aprašymo failo pavadinimas be plėtinio;
  • logpath = /var/log/auth.log (kokį log failą stebėti, šiuo atveju stebimas; prisijungimus registruojantis logas);
  • maxretry = 3 (kiek kartų galima suklysti vedant slaptažodį);

Po visko perkraunam fail2ban servisą:

sudo service fail2ban restart

Ir pasižiūrime, koks serviso statusas:

sudo service fail2ban status

Jei viskas gerai, turime gauti kažką tokio:

Sėkmingai paleisto serviso ataskaita

Tame pačiame faile aprašomos ir kitos taisyklės. Jei norite sukurti savo taisyklę, tai jos konfigūraciją suvedame naujame faile, kurį patalpiname filter.d aplanke.

Norėdami pasižiūrėti, koks pačio fail2ban statusas, kokios taisyklės aktyvios, vedame:

sudo fail2ban-client status

Norėdami pasižiūrėti vienos taisyklės, tarkime sshd statusą vedame:

sudo fail2ban-client status sshd

Statuso atsakymas:

Status for the jail: sshd
|- Filter
|  |- Currently failed:	0
|  |- Total failed:	0
|  `- File list:	/var/log/auth.log
`- Actions
   |- Currently banned:	0
   |- Total banned:	0
   `- Banned IP list:	

Jei norime nuimti IP draudimą, vedame:

fail2ban-client set ssh unbanip ip_adresas

Analogiškai jei norime fail2ban pagalba užblokuoti IP adresą:

fail2ban-client set ssh banip ip_adresas

Tai va maždaug tiek. Lai būna jūsų kompiuteriai saugūs.

Saugus SSH prisijungimas be slaptažodžio.

Kas dirba su Linux puikiai žino, kaip svarbu apsaugoti savo paskyrą kai jungiamasi per SSH protokolą prie nutolusio serverio. Dažniausiai yra naudojami slaptažodžiai, tačiau pastarieji gali būti nulaužiami. Todėl nusprendžiau parašyti apie kiek kitokį prisijungimą prie serverio.

Šiame straipsnelyje trumpai aprašysiu kaip prisijungti prie Linux serverio be slaptažodžio naudojantis sugeneruotu raktu. Dėmesio! Visa pateikiama informacija buvo atliekama Linux sistemoje remiantis oficialaus tinklapio ssh.com medžiaga. Čia pateikiama su paprastinta versija. Patariu prieš vykdant veiksmus pirma perskaityti straipsnį iki galo.

Raktų sugeneravimas

Taigi pradedame. Pirmiausia reikia sugeneruoti privatų ir viešąjį raktą. Tai daroma vedant komandą kur ssh-keygen pati komanda, -f ~/.ssh/neo-key nusakoma vieta kur bus patalpinti raktai, bei raktų pavadinimas mano atveju neo-key ir -t ecdsa -b 521 raktų šifravimo algoritmas.

ssh-keygen -f ~/.ssh/neo-key -t ecdsa -b 521

Generatorius paprašys įvesti saugumo frazę Enter passphrase (empty for no passphrase): kurią primygtinai rekomenduoju naudoti. Jei viskas pavyko, tai ekrane turite pamatyti kažką panašaus į tai

Panašiai turi atrodyti sėkmingai įvykdyta komanda.

Komanda ls -l .ssh/ galime patikrinti ar raktai yra vietoje.

ls -l .ssh/

Kaip matome viskas ten, kur ir turi būti.

neoromancer@neotech:~$ ls -l .ssh/
viso 8
-rw------- 1 neoromancer neoromancer 444 gruod  3 13:41 neo-key
-rw-r--r-- 1 neoromancer neoromancer 273 gruod  3 13:41 neo-key.pub

Kaip matome gauname du failus neo-key ir neo-key.pub. Failas neo-key yra privatus raktas, kuris liks gulėti kompiuteryje ,kuriame jį ir sugeneravome, o viešasis raktas neo-key.pub keliaus į nutolusį serverį.

Viešojo rakto patalpinimas į serverį

Kad saugiai perkeltume viešąjį raktą į nutolusį serverį, reikia įvykdyti sekančią komandą:

ssh-copy-id -i ~/.ssh/neo-key.pub vartotojas@ip_adresas 

Į klausimą Are you sure you want to continue connecting (yes/no)? atsakome yes ir paprašius įvesti slaptažodį suvedame serverio prisijungimo slaptažodį. Po sėkmingos operacijos parašoma, kad vienas raktas įtrauktas ir jau galima išbandyti prisijungimą, mano atveju tai bus ssh pi@192.168.1.120

Baigiamieji darbai

Pasibandome sujungimą su serveriu ir jei mūsų neklausia prisijungimo slaptažodžio, tada galime serveryje pakoreguoti sshd_config, kad apskritai nepriimtų prisijungimų su slaptažodžiais. Tam vedame komandą:

sudo nano /etc/ssh/sshd_config

Ir atsiradusiame faile susirandame #PermitRootLogin forced-commands-only ir nuėmę groteles įrašome PermitRootLogin yes. Taip pat įrašome PasswordAuthentication no Failo turinys turėtų atrodyti panašiai taip (ištrauka):

# Authentication:

#LoginGraceTime 2m
#PermitRootLogin prohibit-password
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

PubkeyAuthentication yes

# Expect .ssh/authorized_keys2 to be disregarded by default in future.
AuthorizedKeysFile      .ssh/authorized_keys .ssh/authorized_keys2

#AuthorizedPrincipalsFile none

#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody

# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes

# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication no
#PermitEmptyPasswords no

Spaudžiame Ctrl+O tada Ctrl+X taip išsaugodami ir išeidami iš redaguojamo failo. Belieka perkrauti patį ssh. Tai padarome įvykdę komandą:

sudo service ssh restart

SSH prisijungimo redagavimas reikalauja atidumo, todėl primygtinai rekomenduoju pasidaryti redaguojamų failų kopijas, kad jei suklydus ir negalint prisijungti būtų galimybė atstatyti konfigūraciją. Būtent PasswordAuthentication no yra atsakingas už slaptažodžio reikalavimą, todėl šį parametrą aktyvuokite įsitikinę, kad viskas tikrai veikia korektiškai.

Viskas, dabar jungiatės tik su viešuoju raktus. Reikia pastebėti, kad ssh galima susiderinti visiškai pagal savo poreikius bet apie tai kada nors vėliau.