Services/DDNS: Difference between revisions
No edit summary |
|||
Line 3: | Line 3: | ||
| prerequisite = |
| prerequisite = |
||
| account = local |
| account = local |
||
| ipv6 = |
| ipv6 = true |
||
| security_notes = This service is secured using |
| security_notes = This service is secured using TLS, web certificates and a specific account (separate from your main account). |
||
}} |
}} |
||
Line 10: | Line 10: | ||
== Access == |
== Access == |
||
To use this service, ask for an account to an administrator. For each IP you need to track, you should |
To use this service, ask for an account to an administrator. For each IP you need to track, you should provide with (explanations follows): |
||
* secondary account suffix (characters allowed: letters, numbers) |
|||
* HostID |
|||
* hostname suffix (characters allowed: letters, numbers, dash) |
|||
* AuthP lines |
|||
* AuthQ lines |
|||
The secondary account prefix is used to create your secondary account name, based on your main account name. If your main account is called ''toto'' and the secondary account prefix is called ''home'', then the secondary account name would be ''toto-home''. It is used as service username in the configuration, and along with a password, identify yourself as owner of the DNS entry. |
|||
You also need to have the DHIS port opened, which is: UDP 58800. |
|||
The hostname prefix is used to create the DNS entry for your host. If you use ''house'' as prefix, then the DNS entry would be ''toto-house.ddns.duckcorp.org''. |
|||
It is possible to have multiple DNS names associated with the same account. So you could have another prefix ''manor'' and the additional DNS entry would be ''toto-manor.ddns.duckcorp.org''. |
|||
=== Installation on Debian === |
|||
Currently the software is not packaged, so a few manual steps are needed. |
|||
⚫ | |||
apt-get install kwalify ruby-curb ruby-safe-yaml ruby-log4r |
|||
Install the Software: |
|||
cd /opt |
|||
git clone https://vcs-git.duckcorp.org/duckcorp/ddns.git |
|||
cd ddns |
|||
ruby setup.rb config --bindir=bin --rbdir=lib --datadir=data --sysconfdir=conf --localstatedir=var --shebang=never |
|||
ruby setup.rb setup |
|||
dir -p conf/ddns var/log/ddns |
|||
=== Configuration on Debian === |
=== Configuration on Debian === |
||
Create ''/opt/ddns/conf/ddns/myip.conf'' containing: |
|||
⚫ | |||
--- |
|||
apt-get install dhis-client |
|||
url: "https://myip.duckcorp.org/" |
|||
timeout: 3 |
|||
Create ''/opt/ddns/conf/ddns/client.conf'' containing: |
|||
--- |
|||
log: |
|||
path: "./var/log/ddns/" |
|||
regip: |
|||
⚫ | |||
user: <secondary-account-name> |
|||
passwd: <secondary-account-password> |
|||
timeout: 3 |
|||
profiles: |
|||
<dns-entry>: |
|||
ipv4: auto |
|||
ipv6: auto |
|||
and replace fields into angle brackets using your own credentials and DNS info. |
|||
The ''profiles'' block can hold as many DNS entries as you need; they may not be on the same site though. |
|||
And add a block for each IP in your configuration file ''/etc/dhid.conf'' like this: |
|||
{ |
|||
HostID <hostid> |
|||
⚫ | |||
Refresh 1200 |
|||
AuthP <auth-p-line-1> |
|||
AuthP <auth-p-line-2> |
|||
AuthQ <auth-q-line-1> |
|||
AuthQ <auth-q-line-2> |
|||
} |
|||
You can find more information on the various configuration parameters on the [https://projects.duckcorp.org/projects/ddns/wiki/Configuration#RegIP-client-ddns-client DDNS project wiki]. |
|||
Restart the service: |
|||
service dhis-client restart |
|||
== Technical Details == |
== Technical Details == |
||
This service is made using: |
This service is made using: |
||
* [ |
* [https://projects.duckcorp.org/projects/ddns DDNS] |
Revision as of 15:06, 22 January 2017
Description | Automatically find a changing (dynamic) IP address (home address for example) using this service. | |||
---|---|---|---|---|
Prerequisite | None | |||
Account | Local (registration required) | IPv6 Ready | Yes | |
Security Notes | This service is secured using TLS, web certificates and a specific account (separate from your main account). |
Access
To use this service, ask for an account to an administrator. For each IP you need to track, you should provide with (explanations follows):
- secondary account suffix (characters allowed: letters, numbers)
- hostname suffix (characters allowed: letters, numbers, dash)
The secondary account prefix is used to create your secondary account name, based on your main account name. If your main account is called toto and the secondary account prefix is called home, then the secondary account name would be toto-home. It is used as service username in the configuration, and along with a password, identify yourself as owner of the DNS entry.
The hostname prefix is used to create the DNS entry for your host. If you use house as prefix, then the DNS entry would be toto-house.ddns.duckcorp.org.
It is possible to have multiple DNS names associated with the same account. So you could have another prefix manor and the additional DNS entry would be toto-manor.ddns.duckcorp.org.
Installation on Debian
Currently the software is not packaged, so a few manual steps are needed.
Install the dependencies:
apt-get install kwalify ruby-curb ruby-safe-yaml ruby-log4r
Install the Software:
cd /opt git clone https://vcs-git.duckcorp.org/duckcorp/ddns.git cd ddns ruby setup.rb config --bindir=bin --rbdir=lib --datadir=data --sysconfdir=conf --localstatedir=var --shebang=never ruby setup.rb setup dir -p conf/ddns var/log/ddns
Configuration on Debian
Create /opt/ddns/conf/ddns/myip.conf containing:
--- url: "https://myip.duckcorp.org/" timeout: 3
Create /opt/ddns/conf/ddns/client.conf containing:
--- log: path: "./var/log/ddns/" regip: url: "https://ddns.duckcorp.org/" user: <secondary-account-name> passwd: <secondary-account-password> timeout: 3 profiles: <dns-entry>: ipv4: auto ipv6: auto
and replace fields into angle brackets using your own credentials and DNS info.
The profiles block can hold as many DNS entries as you need; they may not be on the same site though.
You can find more information on the various configuration parameters on the DDNS project wiki.
Technical Details
This service is made using: