Kaip sukurti APT tarpinį serverį naudojant aviečių PI su apt-cacher-ng?

Jei gyvenate ir dirbate kur kas lėtesniu internetu ir jums reikia atnaujinti daugybę „Debian“ ir (arba) „Ubuntu“ sistemų, šis tinkamas įgaliotasis serveris pavers jūsų gyvenimą daug lengvesniu ir greitesniu.


APT yra programa, kurią „Debian“ ir „Ubuntu Linux“ platintojai naudoja norėdami įdiegti ir atnaujinti savo programinę įrangą. Jų konfigūracijoje, kai naudojate apt programai įdiegti, pvz .:

sudo apt įdiegti

APT atsisiųs programinės įrangos archyvą iš paskirstymo saugyklų serverių ir įdiegs. Tai puikiai veikia, kai programinės įrangos paketas yra mažas, yra tik keli failai, kuriuos reikia atsisiųsti, ir jūsų interneto ryšys yra greitas.

Tačiau jei turite įdiegti daug programinės įrangos ir turite biurą, kuriame pilna kompiuterių, kuriuos visus reikia atnaujinti, ir turite lėtą interneto ryšį, gali prireikti daug laiko, kad viską atsisiųstumėte ir įdiegtumėte kiekviename kompiuteryje..

Įgaliotasis serveris, ypač talpyklos tarpinis serveris, pvz apt-cacher-ng yra programa, esanti tarp kompiuterio, kurį bandote atnaujinti, ir saugyklos serverio, kuriame yra jūsų atsisiųsta programinė įranga. Jūsų atnaujinamas aparatas paprašys programinės įrangos iš tarpinio serverio, o ne saugyklos, o tarpinis serveris persiųs užklausą saugyklai, atsisiųs programinę įrangą ir perduos ją atnaujinimo įrenginiui..

Protinga dalis yra ta, kad tarpinis serveris laikys visų atsisiųstų programinės įrangos failų kopijas. Kai kitas vietinio tinklo kompiuteris bando atsisiųsti tuos pačius failus, t. Y. Nori įdiegti arba atnaujinti tą pačią programinę įrangą, tarpinis serveris jau turi kopiją, kurią gali duoti prašančiam kompiuteriui, jo nereikia atsisiųsti..

Po pirmojo atsisiuntimo visi vėlesni atsisiuntimai bus sudedami kartu su vietinio tinklo greičiu.

Reikalavimai

Norėdami užpildyti šį vadovą, jums reikės:

  • Ekranas ir klaviatūra, skirti prijungti prie „Raspberry Pi“. Tai yra neprivaloma, jei galite SSH įtraukti į savo „Raspberry Pi“.
  • „Raspberry Pi“ vartotojas, neturintis šaknies, „sudo“.
  • „Debian“ ar „Ubuntu“ sistema jūsų vietiniame tinkle.

Kai įvykdysite visus šiuos reikalavimus, prisijunkite prie „Raspberry PI“ terminalo kaip sudo vartotojas ir pereikite prie kito skyriaus.

„Apt-cacher-ng“ diegimas

Prieš diegdami naujus paketus „Linux“, visada verta atnaujinti sistemą. Tai užtikrins, kad jūsų sistemoje veikia tos pačios paketų versijos, kokias galite naudoti platinimo saugyklose, ir kad jūsų vietinis paketų versijų sąrašas yra atnaujintas. Tai atlikdami įsitikinsite, kad diegdami apt-cacher-ng nepadarysite jokių klaidų.

Šios komandos atnaujins jūsų sistemą:

$ sudo apt atnaujinimas
$ sudo apt atnaujinimas

Dabar, kai jūsų aviečių PI yra naujausia, įdiekite apt-cacher-ng:

$ sudo apt įdiegti apt-cacher-ng

Diegimo programa paklaus jūsų, ar norite įjungti HTTPS tunelius per apt-cacher-ng. Į šį klausimą turėtumėte atsakyti „Ne“. Mes sukonfigūruosime APT įgaliotojo HTTPS ryšį per apt-cacher-ng, o ne tam, kad būtų reikalingi tuneliai. Be to, jei reikia, šias parinktis vėliau galėsite pakeisti „apt-cacher-ng“ konfigūracijos faile.

Laikantis šiuolaikinių programinės įrangos standartų, įdiegiant apt-cacher-ng sukuriamas ir įgalinamas sisteminis paslaugų failas. Tai reiškia, kad apt-cacher-ng bus paleistas automatiškai, o jūs galite valdyti apt-cacher-ng ir įprastomis sisteminėmis paslaugų komandomis:

$ sudo systemctl paleiskite apt-cacher-ng.service
$ sudo systemctl sustabdyti apt-cacher-ng.service
$ sudo systemctl iš naujo paleiskite apt-cacher-ng.service

„apt-cacher-ng“ dabar veikia kaip sistemos demonas, klausantis 3142 prievado ir pasirengęs priimti ryšius iš apt.

„Raspberry PI“ konfigūravimas

Pirmoji sistema, kurią sukonfigūruosime naudoti „apt-cacher-ng“ tarpinį serverį, bus tinkama „Raspberry PI“. Būdas, kuriuo sukonfigūruosime apt naudoti capt-ng tarpinį serverį, bus URL perrašymas apt šaltinių faile. Šaltinių faile yra saugyklų, kuriose galima atsisiųsti platinimo programinę įrangą, URL sąrašas.

Pagrindinį „Raspbian“ šaltinių failą rasite adresu /etc/apt/sources.list, o naujame diegime jis atrodo taip:

deb http://raspbian.raspberrypi.org/raspbian/ buster pagrindinis įmoka nemokama rpi
# Neatmenama eilutė žemiau „apt-get update“, kad įgalintumėte „apt-get source“
# deb-src http://raspbian.raspberrypi.org/raspbian/ buster pagrindinis įmoka nemokama rpi

Vienintelė aktyvi (nekomentuojama) eilutė čia yra pirmoji, t. Y .:

deb http://raspbian.raspberrypi.org/raspbian/ buster pagrindinis įmoka nemokama rpi

Turime modifikuoti šią eilutę, kad failą atidarytume naudodami teksto rengyklę, čia mes naudojame nano:

$ sudo nano /etc/apt/sources.list

Pakeiskite pirmą eilutę taip, kad ji atrodytų taip:

deb http://127.0.0.1:3142/raspbian.raspberrypi.org/raspbian/ buster pagrindinis įmoka ne nemokamai rpi

Tai, ką jūs čia padarėte, buvo įterpti 127.0.0.1:3142 į URL.

IP adresas 127.0.0.1 visada yra vietinio kompiuterio IP, dažnai vadinamas „localhost“. : 3142 dalis nurodo uostą.

Išsaugokite ir išeikite iš nano paspausdami CTRL + o, ENTER, CTRL + x.

Dabar turėsite tą patį pakeisti šaltinių failą, esantį /etc/apt/sources.list.d/raspi.list.

apt ir apt-cacher-ng dabar paruošti bandymams.

Testavimas apt naudojant apt-cacher-ng

Kai tik paleisite programą, ji talpins visų atsisiųstų failų kopijas. apt daro tai taip, kad ne, tai nereikalauja nereikalingų atsisiuntimų, taip pat saugo vietinę diegimo archyvų kopiją tuo atveju, jei paketą reikia iš naujo įdiegti ir nėra interneto.

Šis vietinis talpyklos kaupimas reiškia, kad apt nesusieks proxy, kai paleisite apt atnaujinimą ar apt atnaujinimą, jei saugykla nepasikeitė. Todėl norėdami išbandyti tarpinį serverį, turėsime rankiniu būdu išvalyti tinkamą talpyklą. Šios komandos išvalys visus talpykloje esančius paketus:

$ sudo rm -rf / var / lib / apt / list /
$ sudo rm -rf / var / talpykla / apt / *

Dabar išbandykite tinkamumą paleisdami naujinį ir patikrinkite, ar nėra klaidų:

$ sudo apt atnaujinimas

Turėtumėte pamatyti keletą išvesties eilučių, kurios atrodo taip:

Gaukite: 1 http://127.0.0.1:3142/raspbian.raspberrypi.org/raspbian buster InRelease [15,0 kB]

URL, prasidedantis http://127.0.0.1:3142/, rodo, kad apt gauna atnaujinimo failus iš apt-cacher-ng.

Taip pat galite žiūrėti apt-cacher-ng žurnalo failą, ar nėra klaidų, paleisdami šią komandą:

$ tail -f /var/log/apt-cacher-ng/apt-cacher.log

antrame terminale. Jei neiškils jokių klaidų, galite pradėti konfigūruoti „Debian“ ar „Ubuntu“ sistemą vietiniame tinkle.

„Ubuntu“ ar „Debian“ sistemos konfigūravimas naudoti apt-cacher-ng

Vietiniame tinkle esančioms „Debian“ ar „Ubuntu“ sistemoms, kurias norite naudoti iš tarpinio serverio „apt-cacher-ng“, nereikia įdiegti jokios papildomos programinės įrangos. Viskas, ką jums reikia padaryti, tai perrašyti jų šaltinių failus taip, kad jie surinktų visus savo atnaujinimus iš apt-cacher-ng, o ne tiesiogiai susisiektų su saugykla..

Šaltinių failų pakeitimas, kurį turite atlikti, yra visiškai toks pat, kaip taisymo, kurį atlikote šaltiniuose „Raspberry PI“, išskyrus tai, kad vietoje „127.0.0.1“ turite naudoti „Raspberry PI“ IP adresą..

Tai reiškia, kad pirmiausia turėsite gauti savo Raspberry Pi IP adresą. Lengviausias būdas gauti „Raspberry PI“ IP adresą yra „Raspberry PI“ terminale paleisti šią komandą:

$ pagrindinio kompiuterio vardas -I

Tai išspausdins „Raspberry PI“ IP adresus. Naudokite pirmąjį „IPv4“ IP adresą. Čia aš panaudosiu adresą 192.168.0.2. Turėsite pakeisti savo „Raspberry PI“ IP adresą.

Atgal į kliento kompiuterį, naudodamiesi teksto rengykle, atidarykite pagrindinį šaltinių failą, čia mes naudojame nano:

$ sudo nano /etc/apt/sources.list

Faile bus eilutės, kurių formatas yra toks pat, kaip ir Raspberry PI /etc/apt/sources.list. Čia yra „Debian Buster“ diegimo eilutės pavyzdys:

deb http://ftp.debian.org/debian buster main

Turite redaguoti šias eilutes taip, kaip naudodami savo Raspberry PI IP, pvz .:

deb http://192.168.0.2:3142/ftp.debian.org/debian buster main

Redaguokite visas /etc/apt/sources.list ir visų kitų šaltinių failų, esančių /etc/apt/sources.list.d/, eilutes. Tada ištrinkite visus talpykloje saugomus failus bandymui:

$ sudo rm -rf / var / lib / apt / list / *
$ sudo rm -rf / var / talpykla / apt / *

Dar kartą atnaujinkite sistemą:

$ sudo apt atnaujinimas
$ sudo apt atnaujinimas

Iš „apt“ išvesties turėtų būti nurodoma, kad naujinimo failai gaunami iš tarpinio serverio „apt-cacher-ng“, spausdinant tokias eilutes, kuriose yra tarpinio serverio IP:

Rezultatas: 1 http://192.168.0.2:3142/ftp.debian.org/debian buster InRelease

Šis įrenginys dabar yra visiškai sukonfigūruotas naudoti jūsų naująjį tinkamą tarpinį serverį. Ateityje turėsite redaguoti visus naujus šaltinių failus, kuriuos pridėjote prie šio kompiuterio, įskaitant visas naujas eilutes, kurios pridedamos platinimo atnaujinimams.

APT per HTTPS

Šaltinių failai, į kuriuos iki šiol žiūrėjome, visi naudojo HTTP jungtis. Tai yra apgalvotas „Debian“ ir „Ubuntu“ projektavimo sprendimas, nes diegimo archyvuose yra įmontuoti vidiniai kriptografiniai parašai, kurie sustabdo kenkėjišką klastojimą. Todėl HTTPS nesuteikia daug papildomo saugumo, tuo pačiu žymiai padidindama inžinerinę naštą, turint daug geografiškai skirtingų veidrodžių..

Tačiau yra keletas HTTPS naudojimo pranašumų, kurie reiškia, kad kai kurios neoficialios saugyklos naudoja HTTPS. „apt-cacher-ng“ palaiko du HTTPS saugyklų tvarkymo būdus.

Pirmasis yra perduoti ryšius iš kliento tiesiai į saugyklos serverį. Tai turi apgailėtiną pasekmę, kad paketai nėra talpykloje „apt-cacher-ng“. Jei norite paleisti apt-cacher-ng tokiu režimu, atidarykite /etc/apt-cacher-ng/acng.conf naudodami teksto rengyklę:

$ sudo nano /etc/apt-cacher-ng/acng.conf

Ir pridėkite šią eilutę:

PassThroughPattern:. *

Tai sukonfigūruoja apt-cacher-ng, kad HTTPS ryšiai galėtų pereiti iš kliento į saugyklą.

Antrasis metodas yra modifikuoti saugyklos eilutes kliento šaltinio failuose taip, kad klientas prisijungtų prie apt-cacher-ng per HTTP, bet apt-cacher-ng prisijungs prie saugyklos per HTTPS. Paketai bus atsisiųsti apt-cacher-ng per HTTPS, tada jie bus nusiųsti kliento mašinai per HTTP. apt-cacher-ng sugeba išsaugoti paketus talpykloje ir mes neprarandame HTTPS pranašumų.

Ši šaltinių eilutė skirta pasiekti „Docker“ saugyklą per HTTPS:

deb [arch = amd64] https://download.docker.com/linux/debian buster stabilus

Redaguodami HTTP eilutes į URL pridėjote 192.168.0.2:3142. Redaguodami HTTPS eilutes turite pridėti 192.168.0.2:3142/HTTPS/// pvz .:

deb [arch = amd64] http://192.168.1.67:3142/HTTPS///download.docker.com/linux/debian buster stabilus

Dabar kliento kompiuteris paprašys paketo iš apt-cacher-ng per HTTP, o apt-cacher-ng atsisiųs ir talpins paketus iš Docker per HTTPS.

Administravimas apt-cacher-ng

Tinklo GUI galima valdyti apt-cacher-ng vietiniame tinkle. Norėdami pasiekti šią GUI, turite nukreipti naršyklę į:

http: //: 3142 / acng-report.html

Pakeitę vietinio tinklo IP pavyzdį 192.168.0.2, gausime:

http://192.168.0.2:3142/acng-report.html

Pirmajame ir svarbiausiame GUI skyriuje „Perdavimo statistika“ pateikiama informacija apie duomenų saugyklose atsisiųstų duomenų kiekį, pateiktą iš talpyklos. Šis vaizdas rodo šį GUI skyrių:

Skyriuje „Talpyklos efektyvumas“ nurodoma, kiek failų apt-cacher-ng buvo talpykloje, kurie aplenkė talpyklą. „Pataikymai“ nurodo failus, kuriuos tarpinis serveris aptarnaujamas tarpinis serveris, ir „Misses“ yra failai, kuriuos tarpinis serveris atsisiuntė iš saugyklos ir įtraukė į talpyklą..

Talpyklos tvarkymas

Failai, kuriuos „apt-cacher-ng“ atsisiunčia ir tarnauja kliento kompiuteriams jūsų vietiniame tinkle, pasensta, kai kūrėjai pridės saugykloje naują versiją. Kai tai įvyksta, šie apt-cacher-ng koteliai turi juos pašalinti iš talpyklos, nes jie nebereikalingi ir užima vietą jūsų diske. Aviečių PI peržiūri talpyklą ir automatiškai pašalina pasenusius failus.

Įdiegę apt-cacher-ng, jūs taip pat įdiegėte „cron“ failą šiuo adresu:

/etc/cron.daily/apt-cacher-ng

Tai kiekvieną dieną valdo „cron“, kuris išvalo talpyklą.

Jei norite peržiūrėti ir išvalyti talpyklą rankiniu būdu, turėtumėte prisijungti prie žiniatinklio GUI ir spustelėti mygtuką, pažymėtą „Pradėti nuskaitymą ir (arba) galiojimo pabaigą“. Tai padaryti dažniausiai nereikia, tačiau gali reikėti tai padaryti, jei atnaujinate iš greitai atnaujinamų saugyklų.

Dabar turite efektyvų tinkamą tarpinį serverį, kuris palengvins didelių, pakartotinių sistemos atnaujinimų tinklo naštą jūsų biure ar namuose.

Susidomėjote tyrę Raspberry Pi, Peržiūrėkite šį internetinį kursą.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map