How to setup ddclient on Centos machine running in Amazon EC2 to update it's public ip address to dyndns-like services.
1. Install ddclient from EPEL repository$ sudo yum install ddclient
2. modify/add following lines in /etc/ddclient.conf:
use=cmd, cmd='curl http://169.254.169.254/2007-08-29//meta-data/public-ipv4'
server=no-ip.org
login=noipuser
password=noippassword
yourhostname=no-ip.org
Some explanation on "use" line: this is the recommended way to get the public ip address of the running machine.
3. Start ddclient service:
$ sudo /etc/init.d/ddclient start
4. Do not forget to set ddclient's default runlevels to start after reboot
$ sudo chkconfig ddclient on
UPDATE:
It seems that dynupdate.no-ip.com does not accept SSL traffic other than TLSv1.
T workaround this put following line to /usr/sbin/ddclient after 1864th line:
SSL_version => 'TLSv1',
The diff between orig and new file will lokk like this:
# diff -u ddclient.orig ddclient
--- ddclient.orig 2012-10-27 10:06:10.000000000 +0200
+++ ddclient 2012-10-27 09:49:56.000000000 +0200
@@ -1861,6 +1861,7 @@
Proto => 'tcp',
MultiHomed => 1,
Timeout => opt('timeout'),
+ SSL_version => 'TLSv1',
);
defined $sd or warning("cannot connect to $peer:$port socket: $@ " . IO::Socket::SSL::errstr());
} else {
Thanks to https://bugs.archlinux.org/task/30280
Do not forget to re-apply this patch after updating ddclient!