Hogyan hozhatok létre APT Proxy-t egy málna PI használatával az apt-cacher-ng-vel?

Ha lassabb internettel él és dolgozik, és egy csomó Debian és / vagy Ubuntu rendszert kell frissítenie, akkor ez a megfelelő proxy megkönnyíti az életed.


APT az a program, amelyet a Debian és az Ubuntu Linux disztribúciók használnak szoftverük telepítéséhez és frissítéséhez. A dobozban lévő konfigurációjukban, amikor az apt programot telepít, például:

sudo apt install inkscape

Az APT letölti a szoftver archívumot a disztribúciós szerverekről és telepíti azt. Ez nagyszerűen működik, ha a szoftvercsomag kicsi, csak néhány fájlt kell letölteni, és gyors az internetkapcsolat.

Ha azonban nagyon sok szoftvert kell telepítenie, és van olyan irodája, amely tele van gépeivel, amelyeket mind frissíteni kell, és lassú internetkapcsolat van, akkor sokáig tarthat, amíg minden letölthető és telepítve van minden gépen.

Proxykiszolgáló, különösen egy gyorsítótárazó proxy, például apt-cacher-ng egy olyan program, amely a frissítendő számítógép és a letöltött szoftvert tároló tárolószerver között helyezkedik el. A frissítendő gép a szoftvert a proxy kiszolgálótól kéri a lerakat helyett, majd a proxy továbbítja a kérést a lerakathoz, letölti a szoftvert és visszaküldi a frissítő gépnek..

Az okos rész az, hogy a proxy megőrzi az összes letöltött szoftverfájl másolatát. Amikor egy másik számítógép a helyi hálózaton megpróbálja letölteni ugyanazokat a fájlokat, vagyis telepíteni vagy frissíteni akarja ugyanazt a szoftvert, a proxynak már van egy példánya, amelyet adhat a kérő gépnek anélkül, hogy letöltenie kellene azt..

Az első letöltés után az összes későbbi letöltés a helyi hálózat sebességével tömörül.

követelmények

Az útmutató kitöltéséhez a következőkre lesz szüksége:

  • Képernyő és billentyűzet a Raspberry Pi készülékhez való csatlakoztatáshoz. Ezek nem kötelezőek, ha SSH-t tud beilleszteni a Raspberry Pi-be.
  • Nem gyökér, sudo-kompatibilis felhasználó a Raspberry Pi készüléken.
  • Debian vagy Ubuntu rendszer a helyi hálózaton.

Miután teljesítette ezeket a követelményeket, jelentkezzen be a Raspberry PI termináljára, mint sudo felhasználó, és lépjen a következő szakaszra.

Az apt-cacher-ng telepítése

Mielőtt új csomagokat telepítne a Linuxra, mindig jó ötlet elvégezni a rendszerfrissítést. Ez biztosítja, hogy a rendszer ugyanazokat a csomagok-verziókat futtassa, mint amelyek a disztribúciókban elérhetőek, valamint azt, hogy a csomag-verziók helyi listája naprakész legyen. Ezzel biztosíthatja, hogy az apt-cacher-ng telepítésekor ne találjon hibát.

A következő parancsok frissítik a rendszert:

$ sudo apt frissítés
$ sudo apt upgrade

Most, hogy a Raspberry PI frissítve van az apt-cacher-ng telepítésével:

$ sudo apt install apt-cacher-ng

A telepítő megkérdezi, hogy engedélyezi-e a HTTPS alagutakat az apt-cacher-ng-n keresztül. Erre a kérdésre nem kell válaszolnia. Az APT-t úgy konfiguráljuk, hogy proxy HTTPS kapcsolatait az apt-cacher-ng-en keresztül alakítsuk át, nem pedig alagutakra van szükségük. Ezenkívül később módosíthatja ezeket az opciókat az apt-cacher-ng konfigurációs fájlban, ha erre szüksége van.

A modern szoftveres konvenciókkal összhangban az apt-cacher-ng telepítésekor létrejön és engedélyezhető egy rendszerezett szolgáltatásfájl. Ez azt jelenti, hogy az apt-cacher-ng automatikusan elindul a rendszerindításkor, és az apt-cacher-ng-t a normál, rendszeres szolgáltatási parancsokkal is kezelheti:

$ sudo systemctl start apt-cacher-ng.service
$ sudo systemctl stop az apt-cacher-ng.service
$ sudo systemctl indítsa újra az apt-cacher-ng.service alkalmazást

Az apt-cacher-ng rendszerdémonként fut a 3142-es porton, és készen áll az kapcsolatok fogadására az apt-en.

Az apt konfigurálása a Málna PI-n

Az első rendszer, amelyet az apt-cacher-ng proxy használatára állítunk be, a Raspberry PI-n lesz. Az apt beállíthatja az apt-cacher-ng proxy használatát úgy, hogy újraírja az URL-eket az apt forrásfájljában. A forrásfájl azon tárházak URL-jeinek listáját tartalmazza, ahol a terjesztési szoftver letölthető.

A Raspbian fő forrásfájlját a /etc/apt/sources.list könyvtárban találja, és egy új telepítéskor a következőképpen néz ki:

deb http://raspbian.raspberrypi.org/raspbian/ buster main activ non-free rpi
# Az alsó megjegyzés nélküli sor, majd az ‘apt-get update’ az ‘apt-get source’ engedélyezéséhez
# deb-src http://raspbian.raspberrypi.org/raspbian/ buster main activ free free rpi

Az egyetlen aktív (nem kommentált) sor itt az első, azaz:

deb http://raspbian.raspberrypi.org/raspbian/ buster main activ non-free rpi

Módosítanunk kell ezt a sort, így nyissuk meg a fájlt egy szövegszerkesztővel, itt nano-t használunk:

$ sudo nano /etc/apt/sources.list

Módosítsa az első sort úgy, hogy a következőképpen néz ki:

deb http://127.0.0.1:3142/raspbian.raspberrypi.org/raspbian/ buster main activ non-free rpi

Amit itt tett, az volt, hogy beszúrja a 127.0.0.1:3142 URL-t.

A 127.0.0.1 IP-cím mindig a helyi számítógép IP-címe, amelyet gyakran „localhost” -nek neveznek. A: 3142 rész a portot jelzi.

Mentse el és hagyja ki a nano-t a CTRL + o, ENTER, CTRL + x megnyomásával.

Most ugyanazt a módosítást kell végrehajtania a /etc/apt/sources.list.d/raspi.list forrásfájlban..

Az apt és az apt-cacher-ng készen áll a tesztelésre.

Az apt tesztelése az apt-cacher-ng-vel

Az apt futtatásakor a letöltött fájlok másolatát tárolja. Az apt ezt úgy teszi, hogy nem, nem végez szükségtelen letöltést, és a telepítési archívumok helyi példányát is megőrzi, amennyiben egy csomagot újra kell telepíteni, és nincs internet.

Ez a helyi gyorsítótár azt jelenti, hogy az apt nem fogja kapcsolatba lépni a proxyval, amikor az apt frissítést vagy az apt frissítést futtatja, ha a lerakat nem változott. Ezért a proxy teszteléséhez manuálisan ki kell üríteni az apt gyorsítótárat. A következő parancsok törli az összes apt tárolt csomagját:

$ sudo rm -rf / var / lib / apt / lists /
$ sudo rm -rf / var / gyorsítótár / apt / *

Most tesztelje az apt futtatással egy frissítést, és ellenőrizze a hibákat:

$ sudo apt frissítés

Több kimeneti sort kell látnia, amelyek így néznek ki:

Töltse le: 1 http://127.0.0.1:3142/raspbian.raspberrypi.org/raspbian buster InRelease [15,0 kB]

A http://127.0.0.1:3142/ kezdetű URL jelzi, hogy az apt a frissítési fájlokat kapja az apt-cacher-ng-től.

A következő parancs futtatásával az apt-cacher-ng naplófájlt is megnézheti:

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

egy második terminálon. Ha nem tapasztal hibákat, folytathatja a Debian vagy Ubuntu rendszer konfigurálását a helyi hálózaton.

Ubuntu vagy Debian rendszer konfigurálása az apt-cacher-ng használatához

A helyi hálózat Debian vagy Ubuntu rendszereire, amelyeket az apt-cacher-ng proxy ki akar használni, nincs szükség további szoftver telepítésére. Csak annyit kell tennie, hogy újraírja a forrásfájlokat, hogy az összes frissítést az apt-cacher-ng-ről gyűjtsék össze, ahelyett, hogy közvetlenül a tárolóhoz lépnének..

A forrásfájlok elkészítéséhez szükséges változtatás pontosan ugyanaz, mint a Raspberry PI forrásaiban végrehajtott szerkesztésnél, azzal a különbséggel, hogy a Raspberry PI IP-címét a 127.0.0.1 helyett kell használni..

Ez azt jelenti, hogy először meg kell szereznie a Raspberry Pi IP-címét. A Raspberry PI IP-címének legegyszerűbb módja a következő parancs futtatása a Raspberry PI terminálján:

$ hostname -I

Ez kinyomtatja a Raspberry PI IP-címeit. Használja az első IPv4 IP-címet. Ebben a példában a 192.168.0.2 címet fogom használni. Cserélnie kell a Raspberry PI IP-címét.

Vissza az ügyfélgépen nyissa meg a fő forrásfájlt egy szövegszerkesztővel, itt nano-t használunk:

$ sudo nano /etc/apt/sources.list

A fájl a Málna PI /etc/apt/sources.list oldalán szereplő formátummal megegyező formátumú sorokat fog tartalmazni. Itt található egy példa egy Debian Buster telepítésből:

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

Ezeket a sorokat a következők szerint kell szerkesztenie a Raspberry PI IP-jén, pl .:

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

Szerkessze az /etc/apt/sources.list és az egyéb forrásfájlok összes sorát az /etc/apt/sources.list.d/ alatt. Ezután töröljön minden helyileg tárolt fájlt a teszteléshez:

$ sudo rm -rf / var / lib / apt / lists / *
$ sudo rm -rf / var / gyorsítótár / apt / *

Frissítse újra a rendszert:

$ sudo apt frissítés
$ sudo apt upgrade

Az apt kimenete jelzi, hogy a frissítési fájlok az apt-cacher-ng proxyból származnak, a következő sorok nyomtatásával, amelyek tartalmazzák a proxy IP-jét:

Találat: 1 http://192.168.0.2:3142/ftp.debian.org/debian buster InRelease

Ez a gép most teljesen konfigurálva van az új apt proxy használatához. A jövőben módosítania kell minden új forrásfájlt, amelyet hozzáad a géphez, beleértve az új sorokat, amelyeket hozzáadnak a disztribúció frissítéseihez.

APT HTTPS-en keresztül

Az eddig megvizsgált forrásfájlok mind HTTP-kapcsolatokat használtak. Ez a Debian és az Ubuntu szándékos tervezési döntése, mivel a telepítési archívumokba beépített belső kriptográfiai aláírások vannak, amelyek megakadályozzák a rosszindulatú befolyásolást. A HTTPS tehát nem jelent sok további biztonságot, ugyanakkor jelentősen megnöveli a nagyszámú földrajzilag eltérő tükrök műszaki terhet..

A HTTPS használatának azonban számos előnye van, ami azt jelenti, hogy néhány nem hivatalos adattár használ HTTPS-t. Az apt-cacher-ng kétféle módon támogatja a HTTPS adattárak kezelését.

Az első az, hogy a kapcsolatokat továbbítsa az ügyféltől közvetlenül a lerakat-kiszolgálóra. Ennek a szerencsétlen következménye annak, hogy az apt-cacher-ng nem tárolja a csomagokat. Ha ebben az üzemmódban szeretné futtatni az apt-cacher-ng fájlt, akkor nyissa meg az /etc/apt-cacher-ng/acng.conf fájlt egy szövegszerkesztővel:

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

És adjuk hozzá a következő sort:

PassThroughPattern:. *

Ez beállítja az apt-cacher-ng-t, hogy lehetővé tegye a HTTPS-kapcsolatok átjutását az ügyféltől a tárolóig.

A második módszer az adattár sorok módosítása az ügyfél forrásfájljaiben úgy, hogy az ügyfél HTTP-n keresztül kapcsolódjon az apt-cacher-ng-hez, de az apt-cacher-ng ezután HTTPS-en keresztül csatlakozik az adattárhoz. A csomagokat letöltik az apt-cacher-ng fájlra HTTPS-en keresztül, majd HTTP-n keresztül küldik el az ügyfélgépre. Az apt-cacher-ng képes gyorsítótárazni a csomagokat, és nem veszítjük el a HTTPS előnyeit.

A következő forrássor a Docker lerakathoz való hozzáféréshez HTTPS-en keresztül történik:

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

A HTTP sorok szerkesztésekor a 192.168.0.2:3142-et hozzáadta az URL-hez. A HTTPS sorok szerkesztésekor hozzá kell adnia a 192.168.0.2:3142/HTTPS/// példát:

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

Most az ügyfélgép kérni fogja a csomagot az apt-cacher-ng-től HTTP-n keresztül, az apt-cacher-ng pedig letölti és gyorsítótárazza a csomagokat a Dockerből HTTPS-en keresztül.

Az apt-cacher-ng adminisztrálása

Elérhető egy webes felhasználói felület az apt-cacher-ng kezelésére a helyi hálózaton. A GUI eléréséhez meg kell mutatnia a böngészőjét a következőkre:

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

A helyi hálózati példa (192.168.0.2) helyettesítésével a következőket kapjuk:

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

A grafikus felhasználói felület első és legfontosabb szakasza, az „Átviteli statisztika” a tárolóból letöltött adatok mennyiségét tartalmazza a gyorsítótárból kiszolgált adatok alapján. A következő kép a GUI ezen szakaszát mutatja:

A „Gyorsítótár-hatékonyság” szakasz arról tájékoztat, hogy hány fájlt szolgált az apt-cacher-ng a gyorsítótárból, melyik megkerüli a gyorsítótárat. A „találatok” azt a fájlt jelölik, amelyet a gyorsítótárból kiszolgált a proxy, és a „hiányzik” azokat a fájlokat, amelyeket a proxy gép letöltött a lerakatból és hozzáadta a gyorsítótárhoz..

A gyorsítótár kezelése

Azok a fájlok, amelyeket az apt-cacher-ng letölt és a helyi hálózat ügyfélgépeire szolgál, elavulnak, amikor a fejlesztők új verziót adnak a tárolóhoz. Amikor ez megtörténik, ezeknek az apt-cacher-ng istállóknak eltávolítaniuk kell őket a gyorsítótárból, mivel már nincs szükségük, és helyet foglalnak el a meghajtón. A Raspberry PI áttekinti a gyorsítótárat, és automatikusan eltávolítja az elavult fájlokat.

Az apt-cacher-ng telepítésekor a cron fájlt a következő címen telepítette:

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

Ezt minden nap cron üzemelteti, ami kitölti a gyorsítótárat az Ön számára.

Ha át szeretné tekinteni és törölni szeretné a gyorsítótárat, akkor jelentkezzen be a webes felhasználói felületbe, és kattintson a „Vizsgálás indítása és / vagy lejárat megkezdése” gombra. Ezt általában nem szükséges elvégezni, de akkor lehet, hogy frissíteni kell a gyors frissítésű tárolókból.

Most egy hatékony apt proxyja van, amely megkönnyíti a nagy, ismételt, rendszeres frissítések hálózati terhelését irodájában vagy otthonában.

Érdemes felfedezni a Málna Pi-t, nézd meg ezt az online tanfolyamot.

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