WebDAV telepítése Debian 10 rendszeren a WsgiDAV használatával

Bevezetés

A Web Distributed Authoring and Versioning (WebDAV) egy HTTP-kiterjesztés, amely keretet biztosít a fájlok távoli létrehozásához és módosításához a szerveren. A WsgiDAV egy pythonban írt WebDAV-kiszolgáló. Ez az útmutató segít a WsgiDAV 3.0-s verziójának telepítésében egy Debian 10-et futtató Vultr szerverre. SSL-tanúsítványt is beszerzünk a biztonságos kapcsolat és a PAM-hitelesítés biztosításához.

Előfeltételek

  • Egy Debian 10 rendszer, amelyhez kiváltságos hozzáféréssel rendelkezik (a root felhasználón vagy bármely sudo felhasználón keresztül).
  • A $EDITORkörnyezeti változót egy tetszőleges szövegszerkesztőre kell beállítani.
  • Regisztrált domain név szükséges. A névszervereit Aa szerver IPv4-címére AAAAmutató rekorddal és opcionálisan az IPv6-címre mutató rekorddal kell konfigurálni .
  • A YAML szintaxis ismerete ajánlott.

A helyőrző dav.example.coma szerver tartománynevéhez lesz használva.

Telepítés

SSL tanúsítvány

Kezdjük a rendszer frissítésével, és ingyenes SSL-tanúsítvány beszerzésével a Let's Encrypt-től . Ehhez először frissítse a rendszert, és telepítse a certbotsegédprogramot:

sudo apt update sudo apt upgrade -y sudo apt install -y certbot

Az alábbi parancsban cserélje ki dav.example.comés írja email@domain.tldbe a domain nevét és e-mail címét, mielőtt végrehajtaná:

sudo certbot certonly --standalone --agree-tos -m email@domain.tld -d dav.example.com

Szerverére egy kihívást küldünk annak ellenőrzésére, hogy Ön irányítja-e a megadott tartománynevet. Ha ez sikerül, a tanúsítvány kibocsátásra és mentésre kerül, más fájlokkal, például a privát kulccsal együtt a alatt /etc/letsencrypt/live/dav.example.com/.

A WsgiDAV telepítése

Először telepítse a python csomagkezelőt pip:

sudo apt update sudo apt install -y python3-pip

A WsgiDAV olyan HTTP-kiszolgálót igényel, amely támogatja a WSGI-t. Az alapértelmezett opciót telepítjük, ami a Cheroot. Telepíteni fogjuk az lxml python könyvtárat is, amely általában jobban teljesít, mint az alapértelmezés szerint telepített XML könyvtár. Szükség van a PAM (Pluggable Authentication Module) python3 könyvtárra is. Telepítse a szükséges csomagokat az pipeszköz segítségével:

sudo pip3 install wsgidav cheroot lxml python-pam

A WsgiDAV konfigurálása

A WsgiDAV végrehajtható fájl a -ban van tárolva /usr/local/bin, ezért a konfigurációs fájlt a /usr/local/etckönyvtárba helyezzük . Töltse le a minta konfigurációs fájlt a következő parancsokkal:

sudo mkdir -p /usr/local/etc sudo wget https://github.com/mar10/wsgidav/raw/master/sample_wsgidav.yaml -O /usr/local/etc/wsgidav.yaml

Nyissa meg a szerkesztővel:

sudo $EDITOR /usr/local/etc/wsgidav.yaml

Keresse meg a következő sorokat az „SSL-támogatás” részben:

# ssl_certificate: "wsgidav/server/sample_bogo_server.crt" # ssl_private_key: "wsgidav/server/sample_bogo_server.key" # ssl_certificate_chain: null

Cserélje ki őket a következőkre:

ssl_certificate: "/etc/letsencrypt/live/dav.example.com/cert.pem" ssl_private_key: "/etc/letsencrypt/live/dav.example.com/privkey.pem" ssl_certificate_chain: "/etc/letsencrypt/live/dav.example.com/chain.pem"

Ezután a megosztási útvonalakat úgy állítjuk be, hogy a HTTP útvonalakat (például /) leképezzük a fájlrendszer megfelelő helyeire (például /var/www/dir1). Bemutató célból két könyvtárat osztunk meg, amelyek közül az egyik csak olvasható lesz. Keresse meg a provider_mappingblokkot a „MEGOSZTÁSOK” részben:

provider_mapping: "/": "/path/to/share1" "/pub": root: "/path/to/share2" readonly: true "/share3": provider: path.to.CustomDAVProviderClass args: ["/path/to/share3", "second_arg"] kwargs: {"another_arg": 42}

Cserélje ki:

provider_mapping: "/": root: "/var/www/html/documents" readonly: false "/reports": root: "/var/www/html/reports" readonly: true

Ezekkel leképezések, https://dav.example.com:8080/akkor felel meg a /var/www/html/documentskönyvtár a szerveren, miközben https://dav.example.com:8080/reportsfeltérképezi, hogy /var/www/html/reportsnincs írási.

A hitelesítéshez a PAM illesztőprogramot fogjuk használni. Ez megszünteti a külön WebDAV felhasználói fiókok szükségességét, és lehetővé teszi a rendszerfelhasználók számára, hogy a szokásos hitelesítő adataikkal jelentkezzenek be.

A „HITELESÍTÉS” részben keresse meg a következő sorokat:

accept_basic: true accept_digest: true default_to_digest: true domain_controller: null

Cserélje ki őket a következőkre:

accept_basic: true accept_digest: false default_to_digest: false domain_controller: wsgidav.dc.pam_dc.PAMDomainController

Most már tesztelheti szerverét:

sudo wsgidav -c /usr/local/etc/wsgidav.yaml

Nyissa https://dav.example.com:8080/meg a böngészőjében. Mivel mi konfiguráltuk a PAM hitelesítést, be kell jelentkeznie Linux felhasználói fiókjával. A CTRL+ Cgombbal állítsa le a szervert a folytatás előtt.

Telepítés szolgáltatásként

Ha a WebDAV-kiszolgálót a systemd által kezelt rendszerszolgáltatásként szeretné futtatni, hozzon létre egy egységfájlt:

sudo $EDITOR /etc/systemd/system/wsgidav.service

Írd be a következőt:

[Unit] Description=WsgiDAV WebDAV server After=network.target [Service] Type=simple ExecStart=/usr/local/bin/wsgidav -c /usr/local/etc/wsgidav.yaml StandardOutput=syslog StandardError=syslog SyslogIdentifier=wsgidav_service [Install] WantedBy=multi-user.target

Ezután hozzon létre egy konfigurációs fájlt a rendszernaplózási szolgáltatáshoz:

sudo $EDITOR /etc/rsyslog.d/wsgidav_service.conf

Töltse ki a fájlt a következőkkel:

if $programname == 'wsgidav_service' then /var/log/wsgidav.log & stop

Mentse el és lépjen ki, majd használja az alábbi parancsokat a naplófájl létrehozásához:

sudo touch /var/log/wsgidav.log sudo chown root:adm /var/log/wsgidav.log

Végül töltse be az új systemd unit fájlt, és indítsa újra a naplózási szolgáltatást a WsgiDAV elindítása előtt:

sudo systemctl daemon-reload sudo systemctl restart rsyslog.service sudo systemctl start wsgidav.service

Mostantól systemctlelindíthatja, leállíthatja és újraindíthatja a WebDAV-kiszolgálót. A WsgiDAV szabványos kimenete és hibája a következő helyen lesz naplózva /var/log/wsgidav.log, és a segítségével is elérhető sudo journalctl -u wsgidav.service.

Ha azt szeretné, hogy a WebDAV szerver automatikusan elinduljon a rendszerindításkor, hajtsa végre a következőt:

sudo systemctl enable wsgidav.service

További irodalom

Hagyj kommentárt

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Ez az oktatóanyag végigvezeti Önt a Vultrs rendszerekkel kompatibilis Windows ISO létrehozásának folyamatán. Itt megtanulhatja az <>Windows ISO<> előállításának lépéseit az NTLite segítségével.

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.