English • Русский v0.11 for GNU/Linux

freedns-afraid

freedns-afraid is a dynamic DNS client or updater: a daemon for GNU/Linux with systemd and NetworkManager, which keeps your record on free dynamic DNS server freedns.afraid.org up-to-date. There are prebuilt RPM packages for Fedora and EPEL1. Source code for traditional procedure configure/make/make install is also available. freedns-afraid is free software.

Contents

Quick start

  1. Install the package.
  2. Configure the service.
  3. Enable the service.

Voilà!

Purpose

Nowadays Internet Service Providers (ISPs) assign your home computer an IP address dynamically via DHCP. This eliminates configuration burden but makes difficult to access your home computer from office or school, because your home computer does not have a name while IP address cannot be used due to its dynamic nature. (Some ISPs offer static IP address as an extra service for extra money.)

If you could assign a permanent name to your home computer… You can! freedns.afraid.org is a free dynamic DNS server. Just follow the simple procedure:

  1. Register at freedns.afraid.org;
  2. Choose a domain from the list of available domains;
  3. Specify name of your home computer;
  4. Update your DNS record.

Steps from 1 to 3 should be done once. But step 4 should be performed every time your computer receives new IP address from your ISP. It is a job for a dynamic DNS client, and freedns-afraid is one of clients.

Features

What is good in freedns-afraid:

What is not so good (but not so bad):

Other clients

At freedns.afraid.org site there is a list of dynamic DNS clients. (As of April 2013) The list includes 6 Windows/Unix clients, and 16 Unix clients. Why did I write one more? Well, see the Features

Download

If you use yum, dnf2 or web browser, explicit downloading is not really necessary, go to the next section.

Anyway, source tarball and source RPM package are available to download from section Files of freedns-afraid project at SourceForge.

Prebuilt binary packages are available for several version of Fedora and EPEL3, see the table in section Install.

Depending on your web browser a click on a link in the table may cause either downloading or installing a package. You may have to right-click on a link and choose Save Link As… to download a package.

Install

If you work in modern graphical environment, choose appropriate binary RPM package from the table below and click on the selected link. Depending on your web browser, it may either initiate installing or ask your for desired action. In latter case, choose Open (not Save) to install (likely you will be prompted for root password then).

i386 x86_64
Fedora 19 binary RPM package binary RPM package
Fedora 20 binary RPM package binary RPM package
Fedora 21 binary RPM package binary RPM package
EPEL 7 binary RPM package

These packages are probably suitable for other modern RPM-based GNU/Linux distros which use systemd and NetworkManager.

If you work in the command line (run the command as root, or use sudo):

# yum install https://copr-be.cloud.fedoraproject.org/results/vandebugger/packages/REPO-VER-ARCH/\
freedns-afraid-0.11-1/freedns-afraid-0.11-1.noarch.rpm

You have to replace placeholders REPO, VER, and ARCH with appropriate values, for example: fedora-20-i386 or epel-7-x86_64. Alternatively, you may copy and paste a link target from the table above.

dnf4 can be used also, just type dnf instead of yum.

freedns-afraid requires some more packages, all them are available in Fedora repositories. Packet manager, either yum or dnf, will resolve dependencies and offer to download all the required packages.

Note: The freedns-afraid daemon does not start automatically after installation because you have to configure it first.

Configure

Do not forget to read section Security.

Configuration file

The service configuration file is /etc/freedns-afraid.conf. The file contains two configuration variables:

hash = str

Your identification string. This is a mandatory variable, you have to specify your hash to let freedns-afraid update your DNS record. See section Hash below.

interval = int

Interval between updates, in minutes. This is optional; by default freedns-afraid updates your DNS record every 15 minutes. Do not specify too short interval, avoid disturbing freedns.afraid.org too frequently: regardless of the specified interval your record is updated as soon as your computer connects to the internet and/or its IP address is changed.

Hash

First, you have to complete registration at freedns.afraid.org. Then, open start page of freedns.afraid.org in a web browser, click on Dynamic DNS item in the menu on the left (log in if you are not logged in yet), and find Direct URL link. Check the link target, it looks like

http://freedns.afraid.org/dynamic/update.php?EV01mZ6TFVRNMG8BQUVuRWxRrTo1Mj

Everything after question mark is your hash. This string identifies you at freedns.afraid.org. Copy it (hash only, not entire URL) to the configuration file. Do not forget to update hash in the configuration file each time you change your password at freedns.afraid.org.

Enable

After you specify your hash value, configure systemd to start freedns-afraid daemon at the next system boot:

# systemctl enable freedns-afraid

If you want freedns-afraid to start immediately, run:

# systemctl start freedns-afraid

Security

freedns-afraid daemon runs as specially created no-login account freedns-afraid. This user has no special privileges. In particular, it cannot change files under /etc, it cannot even read files in your home directory.

Hash

Treat your hash as a secret, like your password. Everybody who knows your hash can modify your DNS record and phish you: you may think you are remotely logging into your computer and enter login and password, while you disclosed your credentials to a phishing system.

freedns-afraid does following steps to protect your hash:

  • Configuration file /etc/freedns-afraid.conf belongs to user root and group freedns-afraid. The file is readable and writable by root and only readable by freedns-afraid. Other users have no access to the file. Keep the file ownership and modes, do not reset them accidentally.

  • freedns-afraid daemon uses HTTPS when communicating with freedns.afraid.org, so your hash is not visible to intermediate computers: [proxy servers][proxy servers], routers, etc.

If you using another dynamic DNS client, make sure it keeps your hash (or password) secretly.

Support

If you found a bug or have a request, please submit a ticket. Questions are welcome at discussion forums.

Sorry, anonymous posts are not allowed. You have to register at SourceForge to create a new ticket or forum post.

License

Copyright (C) 2010—2014 .

freedns-afraid is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

freedns-afraid is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with freedns-afraid. If not, see http://www.gnu.org/licenses/.

Legend


  1. EPEL stands for "Extra Packages for Enterprise Linux", it is expected the packages are suitable for RHEL, CentOS, SL, and OEL, see EPEL home page.

  2. DNF is a package manager, yum successor, introduced in Fedora 18.

  3. EPEL stands for "Extra Packages for Enterprise Linux", it is expected the packages are suitable for RHEL, CentOS, SL, and OEL, see EPEL home page.

  4. DNF is a package manager, yum successor, introduced in Fedora 18.