मैं उबंटू सर्वर पर डायनेमिक डीएनएस लाने की सेवा कैसे स्थापित कर सकता हूं?


19

मैंने अपने http://no-ip.org/ खाते के भीतर खाते और होस्टनाम बनाए हैं , जो अब तक मेरे प्रकार के सर्वर के लिए सबसे अधिक उपयोग की जाने वाली सेवा है। क्या कोई मुझे ddclient का उपयोग करने की कॉन्फ़िगरेशन प्रक्रिया के माध्यम से नहीं-आईपी के साथ चल सकता है, क्योंकि मैं एक कमांड लाइन noob हूं?

जवाबों:


21

नो-आईपी के लिए ddclient की स्थापना

ddclientएक डायनेमिक अपडेट क्लाइंट (DUC) है जिसका उपयोग डायनेमिक DNS प्रविष्टियों को अपडेट करने के लिए किया जा सकता है। यह नियमित अंतराल पर वर्तमान आईपी पते की जांच करता है और परिवर्तन का पता चलने पर DNS जानकारी को अपडेट करता है। यहां नो-आईपी (noip.com/no-ip.com) सेवा के लिए इसे स्थापित और कॉन्फ़िगर करने का तरीका बताया गया है।

सबसे पहले, ddclientपैकेज स्थापित करें । हम इसे बाद में मैन्युअल रूप से कॉन्फ़िगर करेंगे, इसलिए सभी कॉन्फ़िगरेशन प्रश्नों के लिए बस एंटर दबाएं।

sudo apt-get install ddclient

ddclientडेमॉन बंद करो । sudo service ddclient stopआदेश बग के कारण Ubuntu 12.04 पर काम नहीं करता है, तो हम का उपयोग pkillकरने के बजाय।

sudo pkill ddclient

कॉन्फिग फाइलों को एडिट करें। बैकअप फ़ाइलों को बंद करने के लिए (उदाहरण के लिए /etc/ddclient.conf~) जो geditडिफ़ॉल्ट रूप से बनाता है और उदाहरण के लिए पासवर्ड हो सकते हैं जब आपको लगा कि आपने उन्हें हटा दिया है, तो सेटिंग बंद करें Edit -> Preferences -> Editor -> Create a backup copy of files before saving

sudo gedit /etc/ddclient.conf /etc/default/ddclient

/etc/ddclient.confनीचे दिखाए गए टेम्प्लेट में पुरानी सामग्री और पेस्ट को हटा दें ।

टेम्पलेट की टिप्पणियों के माध्यम से पढ़ें और अपनी आवश्यकताओं के लिए फ़ाइल को अनुकूलित करें।

यह एक अच्छा विचार हो सकता है कि एक noip.com उप-खाते का उपयोग किया जाए, यानी पासवर्ड वाला एक समूह (यह सुविधा एक भुगतान-सेवा है)। इस तरह, पासवर्ड केवल निर्दिष्ट मेजबानों को अद्यतन करने के लिए पहुँच प्रदान करता है और आपके पूरे नो-आईपी खाते तक पूर्ण पहुँच नहीं देता है, जिसमें MX रिकॉर्ड शामिल हो सकते हैं (एक हमलावर जो आपका पासवर्ड प्राप्त करता है, वह आपके ई-मेल को बाधित करने के लिए MX रिकॉर्ड बदल सकता है ) या अन्य सेवाएँ जैसे IMAP खाते।

आपको शायद सेट करना चाहिए daemon_interval=3600(टेम्पलेट टिप्पणियां देखें)।

निम्नलिखित कमांड के साथ अपने कॉन्फ़िगरेशन का परीक्षण करें:

sudo ddclient -daemon=0 -debug -verbose -noquiet -force

आपको एक good(आईपी पता अद्यतन) या nochg(आईपी पता पहले से ही उस मूल्य पर सेट किया गया था) प्रतिक्रिया मिलनी चाहिए । इस बिंदु पर निम्नलिखित चेतावनी प्राप्त करना ठीक है (लेकिन सामान्य ऑपरेशन के दौरान चेतावनी प्राप्त करना ठीक नहीं है):

WARNING: updating <hostname>: nochg: No update required; unnecessary attempts to change to the current address are considered abusive

नोट: ऐसा लगता है कि नो-आईपी सर्वर पर कुछ कैशिंग चल रही है, इसलिए यदि आपको सर्वर से जो प्रतिक्रिया मिलती है वह वह नहीं है जो आप उम्मीद करते हैं, तो यह बस थोड़ी देर प्रतीक्षा करने में मदद कर सकता है।

जब आप कॉन्फ़िगरेशन कर रहे हों, तो ddclientडेमॉन शुरू करें :

sudo service ddclient start

कंप्यूटर शुरू करने पर हर बार डेमॉन अपने आप शुरू हो जाएगा।

DNS प्रविष्टि / प्रविष्टियों को अब हर बार एक आईपी पते के परिवर्तन का पता चलने पर अद्यतन किया जाएगा।

समस्या निवारण

पैकेज कॉन्फ़िगरेशन फिर से चलाएँ:

sudo dpkg-reconfigure ddclient

पैकेज निकालें और फ़ाइलों को कॉन्फ़िगर करें:

sudo apt-get purge ddclient

डेमॉन नियंत्रण:

sudo service ddclient status
sudo service ddclient start
sudo service ddclient stop
# The stop command above does not work on Ubuntu 12.04 due to a bug, but
# it works on 14.04. Here are alternative ways to control the daemon:
ps -A f | grep -i ddclient
sudo pkill ddclient

डीबगिंग को डीबगिंग उद्देश्यों के लिए डीएनएस को अपडेट करने के लिए कैशे को हटा दें (सामान्य ऑपरेशन के दौरान डीएनएस प्रविष्टि केवल तभी अपडेट की जाती है जब वर्तमान आईपी एड्रेस कैश में संग्रहीत आईपी पते से अलग हो):

sudo pkill ddclient
sudo rm /var/cache/ddclient/ddclient.cache
sudo service ddclient start
# See the result:
tail /var/log/syslog
# If you have set up mail=..., you should also receive an e-mail.
# The syslog and e-mail should show a "good" or "nochg" response.

परीक्षण करें कि क्या डेमन वास्तव में डीएनएस प्रविष्टि को अपडेट करेगा जब आईपी एड्रेस बदल गया है, डीएनएस प्रविष्टि आईपी पते को 1.2.3.4 पर सेट करके और फिर डेमन शुरू करना:

sudo pkill ddclient
sudo ddclient -daemon=0 -debug -verbose -noquiet -force -use ip -ip 1.2.3.4
sleep 30   # ddclient will not perform updates less than 30 seconds apart
sudo service ddclient start

डीबग रन (अद्यतन DNS प्रविष्टि कभी भी / आवश्यकतानुसार / हमेशा):

sudo ddclient -daemon=0 -debug -verbose -noquiet -noexec
sudo ddclient -daemon=0 -debug -verbose -noquiet
sudo ddclient -daemon=0 -debug -verbose -noquiet -force

विभिन्न तरीकों का उपयोग करके वर्तमान आईपी पते का पता लगाने की कोशिश करें:

sudo ddclient -query

ब्याज की फाइलें:

/etc/ddclient.conf
/etc/default/ddclient
/var/cache/ddclient/ddclient.cache

डेमन के संदेश यहां दिखाई देंगे (और ऐसा करने के लिए सेट किए जाने पर ई-मेल द्वारा भी भेजा जाएगा):

/var/log/syslog

प्रलेखन:

/Etc/ddclient.conf के लिए टेम्प्लेट

################################################################################
# Configuration file for ddclient
################################################################################


################################################################################
# Misc. configurations

# To choose between ipup mode (for dial-on-demand) and daemon mode, please edit
# /etc/default/ddclient.

#mail=root           # E-mail messages to this address
#mail-failure=root   # E-mail messages about failed updates to this address


################################################################################
# How to obtain current IP address

# Methods:
#   use=ip, ip=ADDRESS                                   # Set the IP address to ADDRESS
#   use=if, if=INTERFACE, if-skip=PATTERN                # Obtain IP address by calling 'ifconfig INTERFACE'
#   use=web, web=PROVIDER|URL, web-skip=PATTERN          # Obtain IP address from IP discovery web page
#   use=cmd, cmd=PROGRAM, cmd-skip=PATTERN               # Obtain IP address by calling PROGRAM
#   use=fw|FWMODEL, fw=ADDRESS|URL, fw-skip=PATTERN      # Obtain IP address from firewall web page
#                   fw-login=LOGIN, fw-password=SECRET
#
# The *-skip options can be used to skip IP addresses found before PATTERN.
#
# NOTE: The ddclient IP detection routines do not respect the HTTPS prefix in
# URLs, and instead fall back to HTTP (this is fixed in version 3.8.1). The
# option ssl=yes does not apply to the IP detection either (this is at least
# how versions 3.8.0 to 3.8.2 behave).
#
# The default time between each IP address change check is daemon_interval=300
# (5 minutes), which may be a bit too frequent when using an external IP
# discovery service. To set the checking interval to e.g. one hour instead,
# please edit /etc/default/ddclient and set daemon_interval=3600.

# Obtain IP address from network interface
#use=if, if=eth0

# Obtain IP address from no-ip.com IP discovery web page (unencrypted connection)
use=web, web='http://ip1.dynupdate.no-ip.com:8245/'

# Obtain IP address from no-ip.com IP discovery web page (encrypted connection)
# Encryption does not offer any real protection since a man-in-the-middle
# attack could route the HTTPS connection through a host belonging to the
# attacker, thus causing an incorrect IP address to be reported.
#use=cmd, cmd='bash -c "set -o pipefail; timeout 120 wget -qO- \
#  --header=Host:ip1.dynupdate.no-ip.com https://dynupdate.no-ip.com/ | head -c 1000"'


################################################################################
# Dynamic DNS service setup

protocol=noip
#server=   # Defaults to dynupdate.no-ip.com for noip protocol
ssl=yes   # NOTE: Does not apply when obtaining IP address, just when updating the DNS entry!
login='nobody@nowhere.com'   # Username. For No-IP sub-accounts (groups with passwords), use '<groupname>%3A<username>'.
password='1234'


################################################################################
# Hosts to update, with optional per-host options

# Examples:
#   protocol=hammernode1, \
#   login='my-hn-login', password='my-hn-password' \
#   myhost.hn.org,myhost2.hn.org
#
#   login='group2%3Ajohndoe@domain.com', password='1234'   myhost3.no-ip.biz,myhost4.no-ip.biz
#
#   myhost.no-ip.biz,myhost2.no-ip.biz

my.full.hostname

अपडेट: आईपी ​​डिटेक्शन सेवा के लिए एन्क्रिप्टेड कनेक्शन काफी व्यर्थ है। इसे अब ddclient.conf टेम्प्लेट में समझाया गया है और अब यह IP डिटेक्शन के लिए अनएन्क्रिप्टेड कनेक्शन का उपयोग करने में चूक करता है।



0

No-ip का अपना क्लाइंट है जिसने पहली बार मेरे लिए काम किया था।

क्लाइंट को डाउनलोड करने के लिए उनकी अपनी वेबसाइट पर निर्देश हैं , और फिर यह एक त्वरित make && makeइंस्टॉल है और आपका काम हो गया। नो-आईपी के लिए अपने लॉगिन क्रेडेंशियल को हाथ में लें क्योंकि आपको उनसे कॉन्फ़िगरेशन विज़ार्ड के भाग के रूप में पूछा जाएगा। बाद में, सुनिश्चित करें कि आप चलाते हैं noip2और आप यह देखने के लिए कि क्या यह अद्यतन हुआ है , आप अपने होस्ट खाते को उनकी साइट पर देख सकते हैं।


चेतावनी: noip2 में सुरक्षा मुद्दे हैं! इस जवाब को देखें ।
हाकॉन ए। होर्टोर्टलैंड

@ HåkonA.Hjortland: मुझे यह महसूस नहीं हुआ कि यह HTTPS कनेक्शन स्वीकार करता है। मैंने अपना पिछला गलत कथन हटा दिया है, धन्यवाद!
1
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.