Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 635866 - net-dns/ddclient-3.8.1-r5: unable to update over SSL due to error loading IO::Socket::SSL as systemd service
Summary: net-dns/ddclient-3.8.1-r5: unable to update over SSL due to error loading IO:...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Aaron W. Swenson
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-10-30 03:43 UTC by Maciej Mrozowski
Modified: 2019-05-22 10:42 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (emerge--info.txt,20.22 KB, text/plain)
2017-10-30 03:44 UTC, Maciej Mrozowski
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Maciej Mrozowski gentoo-dev 2017-10-30 03:43:36 UTC
ddclient (over SSL) refuses to work with systemd, perhaps due to some weird sandboxing preventing perl module loading?
On the other hand, ddclient.service doesn't have any "security features" enabled like private tmp or etc.

In ddclient.conf, set ssl=yes to enforce dyndns update over SSL.

systemctl restart ddclient.service:

paź 30 04:08:25 myhost ddclient[2885]: WARNING:  forcing update of myhost.no-ip.org from old_ip to some_new_ip; 25 days since last update on Sat Mar 18 01:51:46 2017.
paź 30 04:08:25 myhost ddclient[3029]: WARNING:  forcing update of myhost.no-ip.org from old_ip to some_new_ip; 25 days since last update on Sat Mar 18 01:51:46 2017.
paź 30 04:08:25 myhost ddclient[2885]: FATAL:    Error loading the Perl module IO::Socket::SSL needed for SSL connect.
paź 30 04:08:25 myhost ddclient[2885]: FATAL:     On Debian, the package libio-socket-ssl-perl must be installed.
paź 30 04:08:25 myhost ddclient[2885]: FATAL:     On Red Hat, the package perl-IO-Socket-SSL must be installed.
paź 30 04:08:25 myhost ddclient[3030]: FATAL:    Error loading the Perl module IO::Socket::SSL needed for SSL connect.
paź 30 04:08:25 myhost ddclient[3030]: FATAL:     On Debian, the package libio-socket-ssl-perl must be installed.
paź 30 04:08:25 myhost ddclient[3030]: FATAL:     On Red Hat, the package perl-IO-Socket-SSL must be installed.
paź 30 04:08:25 myhost systemd[1]: ddclient.service: Main process exited, code=exited, status=1/FAILURE
paź 30 04:08:25 myhost systemd[1]: ddclient.service: Unit entered failed state.
paź 30 04:08:25 myhost systemd[1]: ddclient.service: Failed with result 'exit-code'.

(no idea why some syslogs are doubled btw)

while running ddclient manually with the same config file:

sudo /usr/sbin/ddclient --ssl --force --debug --verbose:

INFO:     setting IP address to some_new_ip for myhost.no-ip.org
UPDATE:   updating myhost.no-ip.org
DEBUG:    proxy  = 
DEBUG:    url    = http://dynupdate.no-ip.com/nic/update?system=dyndns&hostname=myhost.no-ip.org&myip=some_new_ip
DEBUG:    server = dynupdate.no-ip.com
CONNECT:  dynupdate.no-ip.com
CONNECTED:  using SSL
SENDING:  GET /nic/update?system=dyndns&hostname=myhost.no-ip.org&myip=some_new_ip HTTP/1.0
SENDING:   Host: dynupdate.no-ip.com
SENDING:   Authorization: Basic cmVhdmVydG1AZ21haWwuY29tOnBAc3N3MHJk
SENDING:   User-Agent: ddclient/3.8.1
SENDING:   Connection: close
SENDING:   
RECEIVE:  HTTP/1.1 200 OK
RECEIVE:  Content-Type: text/plain; charset=UTF-8
RECEIVE:  Connection: close
RECEIVE:  Cache-Control: private, must-revalidate
RECEIVE:  pragma: no-cache
RECEIVE:  expires: -1
RECEIVE:  Date: Mon, 30 Oct 2017 03:24:16 GMT
RECEIVE:  
RECEIVE:  nochg some_new_ip
WARNING:  updating myhost.no-ip.org: nochg: No update required; unnecessary attempts to change to the current address are considered abusive

Changing to ssl=no in ddclient.conf of course will work but is not viable workaround.
Comment 1 Maciej Mrozowski gentoo-dev 2017-10-30 03:44:51 UTC
Created attachment 500964 [details]
emerge --info
Comment 2 Conrad Kostecki gentoo-dev 2018-09-04 17:45:20 UTC
Does this happen still with 3.9.0?