WebDAV को डेबियन 10 पर WsgiDAV का उपयोग करके तैनात करना

परिचय

वेब वितरित संलेखन और संस्करण (WebDAV) एक HTTP एक्सटेंशन है जो सर्वर पर फ़ाइलों को दूरस्थ रूप से बनाने और संशोधित करने के लिए एक रूपरेखा प्रदान करता है। WsgiDAV अजगर में लिखा गया एक WebDAV सर्वर है। यह मार्गदर्शिका आपको डेबियन 10. पर चलने वाले वल्चर सर्वर पर WsgiDAV संस्करण 3.0 की स्थापना के माध्यम से मदद करेगी। हम सुरक्षित कनेक्शन के साथ-साथ PAM प्रमाणीकरण प्रदान करने के लिए एक SSL प्रमाणपत्र भी प्राप्त करेंगे।

आवश्यक शर्तें

  • एक डेबियन 10 प्रणाली जिसमें आपको विशेषाधिकार प्राप्त है (रूट उपयोगकर्ता या किसी भी sudo उपयोगकर्ता के माध्यम से)।
  • $EDITORवातावरण चर अपनी पसंद का एक पाठ संपादक करने के लिए सेट किया जाना चाहिए।
  • एक पंजीकृत डोमेन नाम की आवश्यकता है। इसके नेमसर्वर Aको आपके सर्वर के IPv4 पते की ओर इंगित करने वाले रिकॉर्ड के साथ कॉन्फ़िगर किया जाना चाहिए , और वैकल्पिक रूप AAAAसे IPv6 पते की ओर इशारा करने वाला रिकॉर्ड होना चाहिए ।
  • YAML सिंटैक्स के साथ परिचित होने की सिफारिश की जाती है।

प्लेसहोल्डर dav.example.comका उपयोग आपके सर्वर के डोमेन नाम के लिए किया जाएगा।

स्थापना

एसएसएल प्रमाण पत्र

हम सिस्टम को अपडेट करने और लेट्स एनक्रिप्ट से एक निशुल्क एसएसएल प्रमाणपत्र प्राप्त करके शुरू करेंगे । ऐसा करने के लिए, पहले ��पने सिस्टम को अपडेट करें और certbotउपयोगिता स्थापित करें :

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

नीचे दिए गए आदेश में, की जगह dav.example.comऔर [email protected]अपने डोमेन नाम और ईमेल पते के साथ क्रमश: यह निष्पादित करने से पहले:

sudo certbot certonly --standalone --agree-tos -m [email protected] -d dav.example.com

आपके सर्वर को यह सत्यापित करने के लिए एक चुनौती भेजी जाएगी कि आप निर्दिष्ट डोमेन नाम को नियंत्रित करते हैं। यदि यह सफल होता है, तो प्रमाण पत्र जारी किया जाएगा और बचाया जाएगा, साथ ही अन्य फाइलें जैसे कि निजी कुंजी, के तहत /etc/letsencrypt/live/dav.example.com/

WsgiDAV की स्थापना

सबसे पहले, अजगर पैकेज मैनेजर स्थापित करें pip:

sudo apt update
sudo apt install -y python3-pip

WsgiDAV को एक HTTP सर्वर की आवश्यकता है जो WSGI का समर्थन करता है। हम डिफ़ॉल्ट विकल्प स्थापित करेंगे, जो कि चेरूट है। हम lxml python लाइब्रेरी भी स्थापित करेंगे, जो डिफ़ॉल्ट रूप से स्थापित XML लाइब्रेरी से बेहतर प्रदर्शन करता है। PAM (Pluggable Authentication Module) python3 पुस्तकालय की भी आवश्यकता है। pipउपकरण का उपयोग करके आवश्यक पैकेज स्थापित करें :

sudo pip3 install wsgidav cheroot lxml python-pam

WsgiDAV को कॉन्फ़िगर करना

WsgiDAV निष्पादन योग्य में संग्रहीत किया जाता है /usr/local/bin, इसलिए हम कॉन्फ़िगरेशन फ़ाइल को /usr/local/etcनिर्देशिका में रखेंगे । निम्न आदेशों के साथ नमूना कॉन्फ़िगरेशन फ़ाइल डाउनलोड करें:

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

इसे अपने संपादक के साथ खोलें:

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

"एसएसएल सपोर्ट" अनुभाग में निम्नलिखित पंक्तियाँ खोजें:

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

उन्हें निम्नलिखित के साथ बदलें:

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"

अगला, हम HTTP पथ (जैसे /) को फ़ाइल सिस्टम पर संबंधित स्थानों (जैसे ) पर मैप करके साझा पथ कॉन्फ़िगर करेंगे /var/www/dir1। प्रदर्शन उद्देश्यों के लिए, हम दो निर्देशिकाओं को साझा करेंगे, जिनमें से एक केवल-पढ़ने के लिए होगी। खोजें provider_mapping"शेयर" खंड में ब्लॉक:

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}

इसे बदलो:

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

इन मैपिंग के साथ, सर्वर पर निर्देशिका के https://dav.example.com:8080/अनुरूप होगा /var/www/html/documents, जबकि कोई लेखन पहुंच के साथ https://dav.example.com:8080/reportsमैप करेगा /var/www/html/reports

प्रमाणीकरण के लिए, हम PAM ड्राइवर का उपयोग करेंगे। यह अलग WebDAV उपयोगकर्ता खातों की आवश्यकता को हटा देता है और सिस्टम उपयोगकर्ताओं को अपनी सामान्य साख का उपयोग करके लॉगिन करने की अनुमति देता है।

"AUTHENTICATION" अनुभाग में, इन पंक्तियों को खोजें:

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

उन्हें निम्नलिखित के साथ बदलें:

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

अब आप अपने सर्वर का पर���क्षण कर सकते हैं:

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

https://dav.example.com:8080/अपने वेब ब्राउज़र में खोलें । चूंकि हमने PAM प्रमाणीकरण को कॉन्फ़िगर किया है, इसलिए आपको अपने लिनक्स उपयोगकर्ता खाते के साथ लॉगिन करना होगा। आगे बढ़ने से पहले सर्वर को बंद करने के लिए CTRL+ Cका उपयोग करें ।

सेवा के रूप में स्थापित करना

आपके WebDAV सर्वर को सिस्टमड द्वारा प्रबंधित सिस्टम सेवा के रूप में चलाने के लिए, एक इकाई फ़ाइल बनाएँ:

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

निम्नलिखित दर्ज करें:

[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

फिर सिस्टम लॉगिंग सेवा के लिए एक कॉन्फ़िगरेशन फ़ाइल बनाएं:

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

फ़ाइल को निम्न के साथ आबाद करें:

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

सहेजें और बाहर निकलें, फिर लॉग फ़ाइल बनाने के लिए नीचे दिए गए आदेशों का उपयोग करें:

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

अंत में, नई Systemd यूनिट फ़ाइल को लोड करें और WsgiDAV को शुरू करने से पहले लॉगिंग सेवा को पुनरारंभ करें:

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

अब आप systemctlअपने WebDAV सर्वर को शुरू करने, रोकने और पुनः आरंभ करने के लिए उपयोग कर सकते हैं । WsgiDAV के मानक आउटपुट और त्रुटि को लॉग इन किया जाएगा /var/log/wsgidav.log, और इसका उपयोग करके भी एक्सेस किया जा सकता है sudo journalctl -u wsgidav.service

यदि आप चाहते हैं कि WebDAV सर्वर सिस्टम बूट समय पर अपने आप शुरू हो जाए, तो निष्पादित करें:

 sudo systemctl enable wsgidav.service

आगे की पढाई



Leave a Comment

डेबियन पर सेटअप NFS शेयर

डेबियन पर सेटअप NFS शेयर

एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं

डेबियन 7 पर MySQL के दृश्यों का उपयोग करना

डेबियन 7 पर MySQL के दृश्यों का उपयोग करना

परिचय MySQL में विचारों के रूप में एक महान विशेषता है। दृश्य संग्रहीत प्रश्न हैं। अन्यथा लंबी क्वेरी के लिए उन्हें एक उपनाम के रूप में सोचें। इस गाइड में,

डेबियन पर चेरोट की स्थापना

डेबियन पर चेरोट की स्थापना

यह आलेख आपको सिखाएगा कि डेबियन पर चेरोट जेल कैसे सेट करें। मुझे लगता है कि आप डेबियन 7.x का उपयोग कर रहे हैं यदि आप डेबियन 6 या 8 चला रहे हैं, तो यह काम कर सकता है, बू

डेबियन पर PiVPN कैसे स्थापित करें

डेबियन पर PiVPN कैसे स्थापित करें

परिचय डेबियन पर वीपीएन सर्वर स्थापित करने का एक आसान तरीका PiVPN के साथ है। PiVPN OpenVPN के लिए एक इंस्टॉलर और आवरण है। यह आपके लिए सरल कमांड बनाता है

डेबियन 9 पर GitLab सामुदायिक संस्करण (CE) 11.x कैसे स्थापित करें

डेबियन 9 पर GitLab सामुदायिक संस्करण (CE) 11.x कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? चूंकि GitHub को Microsoft द्वारा अधिग्रहित किया गया था, काफी कुछ डेवलपर्स ने अपने स्वयं के कोड रिपॉजिटरी को github.co से माइग्रेट करने की योजना बनाई है

डेबियन 8 पर एक फ्लैश 5 में पीबीएक्स स्थापित करें

डेबियन 8 पर एक फ्लैश 5 में पीबीएक्स स्थापित करें

PBX इन ए फ्लैश 5 (PIAF5) एक डेबियन 8 आधारित ऑपरेटिंग सिस्टम है जो आपके Vultr VPS को पूर्ण विकसित PBX में बदल देता है। इसके पास निम्नलिखित विशेषताएं हैं, और बहुत कुछ।

ब्रेटली को डेबियन 9 पर स्रोत से कैसे बनाएं

ब्रेटली को डेबियन 9 पर स्रोत से कैसे बनाएं

एक अलग प्रणाली का उपयोग? ब्रेटली Gzip की तुलना में बेहतर संपीड़न अनुपात के साथ एक नई संपीड़न विधि है। इसका स्रोत कोड सार्वजनिक रूप से Github पर होस्ट किया गया है। थी

डेबियन 8 पर लिंग स्थापित करें

डेबियन 8 पर लिंग स्थापित करें

परिचय लिनिस एक स्वतंत्र, ओपन-सोर्स सिस्टम ऑडिटिंग टूल है जिसका उपयोग कई सिस्टम एडमिनिस्ट्रेटर द्वारा अखंडता को सत्यापित करने और उनके सिस्टम को सख्त करने के लिए किया जाता है। मैं

डेबियन 9 पर नियोस सीएमएस कैसे स्थापित करें

डेबियन 9 पर नियोस सीएमएस कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? Neos एक CMS के साथ एक कंटेंट एप्लीकेशन प्लेटफॉर्म है और इसके मूल में एक एप्लीकेशन फ्रेमवर्क है। यह मार्गदर्शिका आपको बताएगी कि किस तरह से आपको जमाना है

डेबियन जेसी पर सेटअप कैक्टि

डेबियन जेसी पर सेटअप कैक्टि

परिचय कैक्टि एक खुला स्रोत निगरानी और रेखांकन उपकरण है जो पूरी तरह से आरआरडी डेटा पर आधारित है। कैक्टि के माध्यम से, आप लगभग किसी भी प्रकार के डेविक की निगरानी कर सकते हैं

डेबियन 9 पर इनवॉयसप्लेन कैसे स्थापित करें

डेबियन 9 पर इनवॉयसप्लेन कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? InvoicePlane एक स्वतंत्र और खुला स्रोत चालान आवेदन है। इसका स्रोत कोड इस Github भंडार पर पाया जा सकता है। यह गाइड

डेबियन 9 LAMP VPS पर रीडर सेल्फ 3.5 RSS रीडर कैसे स्थापित करें

डेबियन 9 LAMP VPS पर रीडर सेल्फ 3.5 RSS रीडर कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? रीडर सेल्फ 3.5 एक सरल और लचीला, मुफ्त और खुला स्रोत है, स्वयं-होस्ट आरएसएस रीडर और Google रीडर विकल्प है। पाठक सेल

डेबियन 9 पर बुकस्टैक कैसे स्थापित करें

डेबियन 9 पर बुकस्टैक कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? बुकस्टैक जानकारी को व्यवस्थित और संग्रहीत करने के लिए एक सरल, स्व-होस्टेड, आसानी से उपयोग होने वाला प्लेटफॉर्म है। बुकस्टैक पूरी तरह से स्वतंत्र और खुला है

डेबियन 8 या डेबियन 9 पर FFmpeg कैसे स्थापित करें

डेबियन 8 या डेबियन 9 पर FFmpeg कैसे स्थापित करें

परिचय FFmpeg वीडियो और ऑडियो एन्कोडिंग / डिकोडिंग के लिए एक ओपन सोर्स कमांड लाइन टूल है। इसकी मुख्य विशेषताएं उच्च गति, गुणवत्ता और छोटी फिल्म हैं

Debian 9 पर Matomo Analytics कैसे स्थापित करें

Debian 9 पर Matomo Analytics कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है

OS चुनना: CentOS, Ubuntu, Debian, FreeBSD, CoreOS या विंडोज सर्वर

OS चुनना: CentOS, Ubuntu, Debian, FreeBSD, CoreOS या विंडोज सर्वर

यह लेख वल्चर पर टेम्प्लेट के रूप में पेश किए जाने वाले सर्वर ऑपरेटिंग सिस्टम का एक संक्षिप्त सार प्रदान करता है। CentOS CentOS RHEL (Re) का एक ओपन-सोर्स संस्करण है

डेबियन 10 पर एक्स-कार्ट 5 कैसे स्थापित कर���ं

डेबियन 10 पर एक्स-कार्ट 5 कैसे स्थापित कर���ं

एक अलग प्रणाली का उपयोग? एक्स-कार्ट एक बहुत ही लचीली ओपन-सोर्स ईकामर्स प्लेटफॉर्म है जिसमें बहुत सारे फीचर्स और इंटीग्रेशन हैं। एक्स-कार्ट सोर्स कोड होस्ट है

मुनिन के साथ मॉनिटर डेबियन सर्वर स्थिति

मुनिन के साथ मॉनिटर डेबियन सर्वर स्थिति

मुनिन आपकी मशीन में प्रक्रियाओं और संसाधनों का सर्वेक्षण करने के लिए एक निगरानी उपकरण है और एक वेब इंटरफेस के माध्यम से रेखांकन में जानकारी प्रस्तुत करता है। अनुयायी का उपयोग करें

डेबियन 9 LAMP VPS पर टिनी टिनी RSS रीडर कैसे स्थापित करें

डेबियन 9 LAMP VPS पर टिनी टिनी RSS रीडर कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? टिनी टिनी RSS रीडर एक स्वतंत्र और खुला स्रोत है जो स्वयं-आधारित वेब-आधारित समाचार फ़ीड (RSS / Atom) रीडर और एग्रीगेटर है, जिसे अलो के लिए डिज़ाइन किया गया है

अपने सर्वर से आईपी एड्रेस रेंज (सेंटोस / उबंटू / डेबियन) जोड़ें

अपने सर्वर से आईपी एड्रेस रेंज (सेंटोस / उबंटू / डेबियन) जोड़ें

परिचय इस ट्यूटोरियल में, हम CentOS, Debian, या Ubuntu पर चलने वाले लिनक्स सर्वर में एक संपूर्ण IP रेंज / सबनेट जोड़ने की प्रक्रिया को कवर करेंगे। प्रोज

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है

डेबियन पर सेटअप NFS शेयर

डेबियन पर सेटअप NFS शेयर

एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है

Linux पर एक TeamTalk Server सेटअप करें

Linux पर एक TeamTalk Server सेटअप करें

टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed ​​का उपयोग करता है। क्या थी?

CentOS पर FFmpeg कैसे स्थापित करें

CentOS पर FFmpeg कैसे स्थापित करें

FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा

अपने Vultr VPS को कैसे एक्सेस करें

अपने Vultr VPS को कैसे एक्सेस करें

Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ