TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Tässä artikkelissa yritän kuvata askel askeleelta testipalvelimen asennusprosessia upeaa projektia varten freeacs täysin toimintatilaan ja näyttää käytännön tekniikoita mikrotikin kanssa työskentelemiseen: konfigurointi parametrien avulla, komentosarjojen suorittaminen, päivitys, lisämoduulien asentaminen jne.

Artikkelin tarkoituksena on kannustaa työtovereita luopumaan verkkolaitteiden hallinnasta kauhistuttavilla haravoilla ja kainalosauvoilla, itse kirjoitettujen käsikirjoitusten muodossa, Dude, Ansible jne. Ja tässä yhteydessä aiheuttaa ilotulitteita ja joukkoiloa neliöitä.

0. Valinta

Miksi freeacs eikä genie-acs mainitaan mikrotik-wikikuinka elossa?
Koska on olemassa espanjalaisia ​​julkaisuja genie-acs mikrotikilla. Täällä he ovat pdf и video viime vuoden MUMista. Automaattiset sarjakuvat dioissa ovat siistejä, mutta haluaisin päästä eroon käsikirjoitusten kirjoittamisesta, ajaa käsikirjoituksia, ajaa käsikirjoituksia…

1. Freeacs-asennus

Asennamme Centos7:ään, ja koska laitteet lähettävät paljon dataa ja ACS työskentelee aktiivisesti tietokannan kanssa, emme ahne resursseja. Mukavaa työtä varten valitsemme 2 CPU-ydintä, 4 Gt RAM-muistia ja 16 Gt nopeaa tallennustilaa ssd raid10. Asenna freeacit Proxmox VE lxc -säiliöön, ja voit työskennellä millä tahansa sinulle sopivalla työkalulla.
Älä unohda asettaa oikeaa aikaa koneeseen ACS:n avulla.

Järjestelmä on koekäyttöinen, joten älkäämme olko älykkäitä, vaan käytämme vain ystävällisesti toimitettua asennusskriptiä sellaisenaan.

wget https://raw.githubusercontent.com/freeacs/freeacs/master/scripts/install_centos.sh
chmod +x install_centos.sh
./ install_centos.sh

Heti kun komentosarja on valmis, pääset heti verkkokäyttöliittymään koneen ip:n kautta valtuustiedoilla admin/freeacs

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle
Tässä on niin mukava minimalistinen käyttöliittymä, ja kuinka siistiä ja nopeaa kaikki osoittautui

2. Freeacsin alkuasetukset

ACS:n perusohjausyksikkö on yksikkö tai CPE (Customer Premises Equipment). Ja mikä tärkeintä, tarvitsemme yksiköiden hallintaan niiden yksikkötyyppiä, ts. laitemalli, joka määrittelee joukon yksikön ja sen ohjelmiston konfiguroitavia parametreja. Mutta vaikka emme tiedä kuinka luodaan uusi yksikkötyyppi oikein, olisi parasta kysyä sitä itse laitteelta ottamalla Discovery-tilan käyttöön.

Tätä tilaa ei ehdottomasti voida käyttää tuotannossa, mutta meidän on käynnistettävä moottori mahdollisimman pian ja katsottava järjestelmän ominaisuudet. Kaikki perusasetukset tallennetaan kansioon /opt/freeacs-*. Siksi avaamme

 vi /opt/freeacs-tr069/config/application-config.conf 

, löydämme

discovery.mode = false

ja vaihda

discovery.mode = true

Lisäksi haluaisimme suurentaa tiedostojen enimmäiskokoja, joiden kanssa nginx ja mysql toimivat. Mysql:ssä lisää rivi tiedostoon /etc/my.cnf

max_allowed_packet=32M

, ja nginxille lisää tiedostoon /etc/nginx/nginx.conf

client_max_body_size 32m;

http-osioon. Muuten voimme työskennellä enintään 1 miljoonan laiteohjelmiston kanssa.

Käynnistämme uudelleen ja olemme valmiita työskentelemään laitteiden kanssa.

Ja laitteen roolissa (CPE) saamme työnarkomaanin vauvan hAP AC lite.

Ennen testiyhteyttä on suositeltavaa määrittää CPE manuaalisesti minimitoimiseen kokoonpanoon, jotta parametrit, jotka haluat määrittää tulevaisuudessa, eivät ole tyhjiä. Reitittimessä voit ottaa käyttöön dhcp-asiakkaan ether1:ssä, asentaa tr-069client-paketin ja asettaa salasanat.

3. Liitä Mikrotik

On suositeltavaa yhdistää kaikki yksiköt käyttämällä kirjautumisessa voimassa olevaa sarjanumeroa. Sitten kaikki on sinulle selvää lokeissa. Joku neuvoo käyttämään WAN MACia - älä usko sitä. Joku käyttää yhteistä kirjautumis-/passi-paria kaikille - ohita heidät.

tr-069-lokin avaaminen "neuvottelujen" seuraamiseksi

tail -f /var/log/freeacs-tr069/tr069-conversation.log

Avaa winbox, valikkokohta TR-069.
AC URL: http://10.110.0.109/tr069/prov (korvaa IP-osoitteellasi)
Käyttäjätunnus: 9249094C26CB (kopioi sarja järjestelmästä>reititinlevy)
Salasana: 123456 (ei tarvita löytämiseen, mutta ollakseen)
Emme muuta Jaksottaista ilmoitusväliä. Julkaisemme tämän asetuksen ACS:n kautta

Alla on asetukset yhteyden etäkäynnistykseen, mutta en saanut mikrotikkiä toimimaan sen kanssa. Vaikka etäpyyntö toimii suoraan puhelimilla. Pitää ottaa selvää.

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Kun painat Käytä-painiketta, tiedot vaihdetaan päätteessä ja Freeacs-verkkoliittymässä näet reitittimemme automaattisesti luodulla yksikkötyypillä "hAPaclite".

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Reititin on kytketty. Voit tarkastella automaattisesti luotua yksikkötyyppiä. Avaamme Easy Provisioning > Unit Type > Unit Type Overview > hAPaclite. Mitä siellä ei ole! Jopa 928 parametria (vakoin kuorta). Paljon tai vähän - selvitämme sen myöhemmin, mutta toistaiseksi katsomme vain nopeasti. Sitä Unit Type tarkoittaa. Tämä on luettelo tuetuista vaihtoehdoista, joissa on näppäimiä, mutta ei arvoja. Arvot on asetettu alla oleville tasoille - Profiilit ja yksiköt.

4. Määritä Mikrotik

On aika ladata verkkokäyttöliittymän opas Tämä vuoden 2011 käsikirja on kuin pullo hyvää, vanhentunutta viiniä. Avataan se ja annetaan hengittää.

Ja me itse napsautamme verkkokäyttöliittymässä yksikkömme vieressä olevaa kynää ja siirrymme yksikön määritystilaan. Se näyttää tältä:

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Katsotaanpa lyhyesti, mitä mielenkiintoista tällä sivulla on:

Yksikön konfigurointilohko

  • Profiili: Tämä on yksikkötyypin profiili. Hierarkia on seuraavanlainen: UnitType > Profile > Unit. Eli voimme luoda esimerkiksi profiileja hAPaclite > hotspot и hAPaclite > branch, mutta laitemallin sisällä

Estä hallinta painikkeilla
Vihjeet viittaavat siihen, että kaikki hallintalohkon painikkeet voivat ottaa määrityksen välittömästi käyttöön ConnectionRequestURL-osoitteen kautta. Mutta kuten edellä sanoin, tämä ei toimi, joten painikkeiden painamisen jälkeen sinun on käynnistettävä tr-069-asiakasohjelma uudelleen mikrotikissa, jotta voit käynnistää tarjonnan manuaalisesti.

  • Freq/Spread: Kuinka monta kertaa viikossa konfiguraatio toimitetaan ± % palvelimen ja viestintäkanavien kuormituksen vähentämiseksi. Oletuksena se on 7/20, ts. joka päivä ± 20% ja vihje kuinka se on sekunneissa. Toistaiseksi toimitustiheyttä ei ole syytä muuttaa, koska. lokeissa on ylimääräistä kohinaa, eikä asetusten ole aina odotettavissa

Käyttöönottohistorian lohko (viimeiset 48 tuntia)

  • Ulkonäöltään tarina on kuin tarina, mutta klikkaamalla otsikkoa pääset kätevään tietokantahakutyökaluun, jossa on regexp ja herkkuja

Estä parametrit

Suurin ja tärkein lohko, jossa itse asiassa asetetaan ja luetaan tämän yksikön parametrit. Nyt näemme vain tärkeimmät järjestelmäparametrit, joita ilman ACS ei voi toimia yksikön kanssa. Mutta muistamme, että meillä on ne yksikkötyypeissä - 928. Katsotaanpa kaikkia merkityksiä ja päätetään, mitä kaikki syövät Mikrotikilla.

4.1 Parametrien lukeminen

Napsauta Käyttöönotto-lohkossa Lue kaikki -painiketta. Lohkossa on punainen kirjoitus. Oikealle tulee näkyviin sarake CPE (nykyinen) arvo. Järjestelmäasetuksissa ProvisioningMode muutettiin READALL-tilaan.

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Ja… mitään ei tapahdu paitsi viestin System.X_FREEACS-COM.IM.Message Kick failed at....

Käynnistä TR-069-asiakas tai käynnistä reititin uudelleen ja jatka selainsivun päivittämistä, kunnes saat oikealla olevat parametrit iloisina harmaina suorakulmioina
Jos joku haluaa siemailla vanhaa maustettua, tämä tila on kuvattu ohjekirjassa nimellä 10.2 Tarkastustila. Se käynnistyy ja toimii hieman eri tavalla, mutta olemus on kuvattu melko

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

READALL-tila sammuu itsestään 15 minuutin kuluttua, ja yritämme selvittää, mikä tässä on hyödyllistä ja mitä voidaan korjata "lennossa" tässä tilassa.

Voit muuttaa IP-osoitteita, ottaa käyttöön/poistaa liitännät, palomuurisäännöt, joissa on kommentteja (muuten se on täydellinen sotku), Wi-Fi-yhteys ja niin edelleen.

Eli mikrotikkiä ei ole vielä mahdollista järkevästi konfiguroida pelkillä TR-069 työkaluilla. Mutta voit seurata erittäin hyvin. Tilastot käyttöliittymistä ja niiden tilasta, vapaasta muistista jne. ovat saatavilla.

4.2 Parametrien toimittaminen

Yritetään nyt toimittaa parametrit reitittimelle tr-069:n kautta "luonnollisella" tavalla. Ensimmäinen uhri on Device.DeviceInfo.X_MIKROTIK_SystemIdentity. Löydämme sen All-yksikön parametreista. Kuten näet, sitä ei ole määritelty. Tämä tarkoittaa, että millä tahansa yksiköllä voi olla mikä tahansa Identiteetti. Tämän sietäminen riittää!
Pistämme luomissarakkeeseen pisteen, asetamme nimeksi Mr.White ja painamme Päivitä parametrit -painiketta. Mitä tapahtuu seuraavaksi, arvasit jo. Seuraavassa viestintäistunnossa päämajan kanssa reitittimen on vaihdettava identiteettinsä.

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Mutta tämä ei riitä meille. Parametri, kuten Identity, on hyvä olla aina käsillä haluttua yksikköä etsittäessä. Napsauta parametrin nimeä ja valitse Näyttö(D)- ja Haettavissa (S)-valintaruudut. Parametriavain muuttuu RWSD:ksi (Muista, että nimet ja avaimet asetetaan korkeimmalle yksikkötyyppitasolle)

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Arvoa ei nyt näytetä vain yleisessä hakuluettelossa, vaan se on myös haettavissa Support > Search > Advanced form

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Aloitamme tarjonnan ja tarkastelemme identiteettiä. Hei herra White! Nyt et voi muuttaa henkilöllisyyttäsi itse, kun tr-069client on käynnissä

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

4.3 Skriptien suorittaminen

Koska olemme havainneet, että ilman niitä ei ole mitään, täytämme ne.

Mutta ennen kuin alamme työskennellä tiedostojen kanssa, meidän on korjattava direktiivi public.url tiedostossa /opt/freeacs-tr069/config/application-config.conf
Loppujen lopuksi meillä on edelleen testikokoonpano asennettuna yhdellä skriptillä. Etkö ole unohtanut?

# --- Public url (used for download f. ex.) ---
public.url = "http://10.110.0.109"
public.url: ${?PUBLIC_URL}

Käynnistä ACS uudelleen ja suuntaa suoraan Files & Scripts.

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Mutta mikä meille nyt avautuu, kuuluu yksikkötyyppiin, ts. maailmanlaajuisesti kaikkiin hAP ac lite -reitittimiin, olipa kyseessä haarareititin, hotspot tai capsman. Emme tarvitse vielä niin korkeaa tasoa, joten ennen skriptien ja tiedostojen käsittelemistä meidän tulisi luoda profiili. Voit kutsua tätä laitteen "velvollisuudeksi".

Tehdään vauvastamme aikapalvelin. Hyvä sijainti erillisellä ohjelmistopaketilla ja pienellä määrällä parametreja. Mennään Easy Provisioning > Profile > Create Profile ja luo profiili Unit Type:ssä: hAPaclite aikapalvelin. Meillä ei ollut mitään parametreja oletusprofiilissa, joten kopioitavaa ei ole Kopioi parametrit kohteesta: "älä kopioi..."

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Täällä ei ole vielä parametreja, mutta on mahdollista asettaa ne, jotka haluamme myöhemmin nähdä aikapalvelimillamme, mukulaisesti mukulatettuina hAPaclitesta. Esimerkiksi NTP-palvelimien yleiset osoitteet.
Siirrytään yksikön kokoonpanoon ja siirretään se aikapalvelinprofiiliin

Lopulta mennään Files & Scripts, tee käsikirjoituksia, ja täällä odotamme hämmästyttävän käteviä pullia.

Jotta voimme suorittaa komentosarjan yksikössä, meidän on valittava Tyyppi: TR069_SCRIPT а Nimi и Kohteen nimi on oltava .alter-tunniste
Samanaikaisesti komentosarjoille, toisin kuin ohjelmisto, voit joko ladata valmiin tiedoston tai yksinkertaisesti kirjoittaa / muokata sitä kenttään Sisältöä. Yritetään kirjoittaa sinne.

Ja jotta näet heti tuloksen - lisää vlan-reititin ether1:een

/interface vlan
add interface=ether1 name=vlan1 vlan-id=1

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Aja sisään, paina Lataa ja tehty. Meidän käsikirjoitus vlan1.alter odottaa siivillä.

No, mennäänkö? Ei. Meidän on myös lisättävä ryhmä profiiliimme. Ryhmät eivät sisälly laitehierarkiaan, mutta niitä tarvitaan yksiköiden etsimiseen yksikkötyypistä tai profiilista, ja niitä tarvitaan komentosarjan suorittamiseen Advanced Provisioningin kautta. Yleensä ryhmät liittyvät sijainteihin ja niillä on sisäkkäinen rakenne. Tehdään Venäjä-ryhmä.

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Kuvittele, että olemme vain rajanneet hakumme "Kaikki maailman aikapalvelimet hAPaclitessa" kohtaan "Kaikki venäläiset aikapalvelimet hAPaclitessa". Ryhmien kanssa on vielä valtava kerros kaikkea mielenkiintoista, mutta meillä ei ole aikaa. Mennään käsikirjoituksiin.

Advanced Provisioning > Job > Create Job

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Koska olemme loppujen lopuksi Advanced-tilassa, voit tässä määrittää joukon erilaisia ​​ehtoja tehtävän aloittamiselle, käyttäytymiselle virheiden sattuessa, toistoja ja aikakatkaisuja. Suosittelen lukemaan tämän kaiken käsikirjoista tai keskustelemaan siitä myöhemmin tuotannossa. Toistaiseksi lisäämme vain n1:n Stop-sääntöihin, jotta tehtävä pysähtyy heti, kun se on suoritettu 1. yksikössämme.

Täytämme tarvittavat, ja jäljellä on vain käynnistää!

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Paina START ja odota. Nyt alidebugatun skriptin tappamien laitteiden laskuri toimii reippaasti! Ei tietenkään. Tällaisia ​​tehtäviä annetaan pitkään, ja tämä on niiden ero skripteistä, Ansiblesta ja niin edelleen. Yksiköt itse hakevat tehtäviä aikataulun mukaan tai sellaisena kuin ne näkyvät verkossa, ACS seuraa mitkä yksiköt ovat jo saaneet tehtäviä ja miten ne ovat päättyneet, ja kirjoittaa tämän yksikön parametreihin. Ryhmässämme on 1 yksikkö ja jos niitä olisi 1001 niin admin aloittaisi tämän tehtävän ja lähtisi kalaan

Älä viitsi. Käynnistä reititin jo uudelleen tai käynnistä TR-069-asiakasohjelma uudelleen. Kaiken pitäisi sujua hyvin ja Mr.White saa uuden vlanin. Ja Stop-sääntötehtävämme siirtyy tilaan KESKEYTETTY. Eli se voidaan silti käynnistää uudelleen tai muuttaa. Jos painat FINISH, tehtävä kirjataan arkistoon

4.4 Ohjelmiston päivitys

Tämä on erittäin tärkeä seikka, koska Mikrotikin laiteohjelmisto on modulaarinen, mutta moduulien lisääminen ei muuta laitteen kokonaisohjelmistoversiota. Meidän ACS on normaali eikä ole tottunut tähän.
Nyt teemme sen Quick & dirty -tyyliin ja työnnämme NTP-moduulin heti yleiseen laiteohjelmistoon, mutta heti kun versio on päivitetty laitteeseen, emme voi lisätä toista moduulia samalla tavalla. .
Tuotannossa on parempi olla käyttämättä tällaista temppua ja asentaa moduuleita, jotka ovat valinnaisia ​​yksikkötyypille vain komentosarjoilla.

Joten ensimmäinen asia, joka meidän on tehtävä, on valmistella ohjelmistopaketit vaadituista versioista ja arkkitehtuurista ja laittaa ne jollekin saatavilla olevalle web-palvelimelle. Testiin lähtevät kaikki, jotka voivat tavoittaa Mr.Whiten, ja tuotantoon on parempi rakentaa tarvittavista ohjelmistoista automaattisesti päivittyvä peili, jota ei ole pelottavaa laittaa verkkoon.
Tärkeä! Muista aina sisällyttää tr-069client-paketti päivityksiin!

Kuten kävi ilmi, pakettien polun pituus on erittäin tärkeä! Kun yritän käyttää jotain sellaista http://192.168.0.237/routeros/stable/mipsbe/routeros-mipsbe-6.45.6.npk, mikrotik joutui sykliseen yhteyteen resurssin kanssa lähettäen toistuvia TRANSFERCOMPLETE-lokeja numeroon tr-069. Ja tuhlasin hermosoluja yrittäessäni selvittää, mikä oli vialla. Siksi, kun laitamme sen juureen, selvennykseen asti

Joten meillä pitäisi olla kolme npk-tiedostoa saatavilla http:n kautta. Sain sen näin

http://192.168.0.241/routeros-mipsbe-6.45.6.npk
http://192.168.0.241/routeros/stable/mipsbe/ntp-6.45.6-mipsbe.npk
http://192.168.0.241/routeros/stable/mipsbe/tr069-client-6.45.6-mipsbe.npk

Nyt tämä on alustettava xml-tiedostoksi FileType = "1 Firmware Upgrade Image", jonka syötämme Mikrotikille. Olkoon nimi ros.xml

Teemme sen ohjeiden mukaan mikrotik-wiki:

<upgrade version="1" type="links">
    <config />
    <links>
        <link>
            <url>http://192.168.0.241/routeros-mipsbe-6.45.6.npk</url>
        </link>
        <link>
            <url>http://192.168.0.241/ntp-6.45.6-mipsbe.npk</url>
        </link>
        <link>
            <url>http://192.168.0.241/tr069-client-6.45.6-mipsbe.npk</url>
        </link>
    </links>
</upgrade>

Puute on ilmeinen Username/Password päästäksesi latauspalvelimelle. Voit joko yrittää syöttää sen tr-3.2.8-protokollan kappaleen A.069 mukaisesti:

<link>
<url>http://192.168.0.237/routeros/stable/mipsbe/ntp-6.45.6-mipsbe.npk</url>
<Username>user</Username>
<Password>pass</Password>
</link>

Tai kysy suoraan Mikrotikin viranomaisilta sekä tiedosta * .npk:n enimmäispituus

Mennään paikkoihin, jotka tunnemme Files & Scripts, ja luo siihen OHJELMISTO-tiedosto Nimi:ros.xml, Kohteen nimi:ros.xml ja Versio:6.45.6
Huomio! Versio on määritettävä tässä täsmälleen siinä muodossa, jossa se näkyy laitteessa ja välitetään parametrissa System.X_FREEACS-COM.Device.SoftwareVersion.

Valitse ladattava xm-tiedostomme ja olet valmis.

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Nyt meillä on monia tapoja päivittää laitetta. Päävalikon ohjatun toiminnon kautta, Advanced Provisioning -toiminnon ja OHJELMISTON tyyppisten tehtävien kautta tai siirry yksikön kokoonpanoon ja napsauta Päivitä. Valitaan helpoin tapa, muuten artikkeli on turvonnut.

TR-069 Mikrotikissa. Freeacsin testaus automaattisena konfigurointipalvelimena RouterOS:lle

Painamme painiketta, aloitamme tarjouksen ja olet valmis. Testiohjelma on saatu päätökseen. Nyt voimme tehdä enemmän mikrotikilla.

5. Päätelmä

Kun aloin kirjoittaa, halusin ensin kuvailla IP-puhelimen kytkentää ja sen esimerkin avulla selittää, kuinka siistiä se voi olla, kun tr-069 toimii helposti ja vaivattomasti. Mutta sitten kun etenin ja kaivelin materiaaleja, ajattelin, että Mikrotikin yhdistäneille ei mikään puhelin olisi pelottava itsenäiseen opiskeluun.

Periaatteessa testaamaamme Freeacsia voidaan käyttää jo tuotannossa, mutta tätä varten sinun on määritettävä suojaus, SSL, sinun on määritettävä mikrotiikat automaattista konfigurointia varten nollauksen jälkeen, sinun on debugattava oikea yksikkötyypin lisäys, purettava verkkopalveluiden ja fuusiokuoren työ ja paljon muuta. Kokeile, keksi ja kirjoita jatko-osa!

Kaikki, kiitos huomiostanne! Otan mielelläni korjauksia ja kommentteja vastaan!

Luettelo käytetyistä materiaaleista ja hyödyllisiä linkkejä:

Foorumin ketju, johon törmäsin, kun aloin etsiä aihetta
TR-069 CPE WAN -hallintaprotokollan muutos-6
freeacs wiki
Parametrit tr-069 Mikrotikissa ja niiden vastaavuus päätteen komentoihin

Lähde: will.com