FTPS error in WeeWX version 4.0.0

179 views
Skip to first unread message

Stephen

unread,
May 11, 2020, 1:30:04 PM5/11/20
to weewx-user

Hi

My WeeWX installation is failing to upload files to my website.  I'm using FTPS and from the logs it looks like the connection to the server is made OK but things go wrong as soon as the first file transfer is attempted.  Using an ftp client I can connect manually and write files successfully using FTPS.  The debug output and logs below are from running wee_reports but it also fails when running as a daemon.

There is another error when it tries to make the directory /font on the server but I suspect that is a consequence of the earlier failure. At the start the "MKD /" command behaves as expected. In addition there appears to be a problem with the exception handling.

This is a fresh install using apt-get on Ubuntu 19.10 but I have had the same problem with WeeWX 3.9.2 on Ubuntu 16.04 LTS. Python is version 3.7.5.

Can anyone help?

Thanks

Stephen

------------------
wee_reports output
------------------
Using configuration file /etc/weewx/weewx.conf
Generating for all time
*get* '220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------\n'
*get* '220-You are user number 1 of 50 allowed.\n'
*get* '220-Local time is now 22:49. Server port: 21.\n'
*get* '220-This is a private system - No anonymous login\n'
*get* '220-IPv6 connections are also welcome on this server.\n'
*get* '220 You will be disconnected after 15 minutes of inactivity.\n'
*resp* '220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------\n220-You are user number 1 of 50 allowed.\n220-Local time is now 22:49. Server port: 21.\n220-This is a private system - No anonymous login\n220-IPv6 connections are also welcome on this server.\n220 You will be disconnected after 15 minutes of inactivity.'
*cmd* 'AUTH TLS'
*put* 'AUTH TLS\r\n'
*get* '234 AUTH TLS OK.\n'
*resp* '234 AUTH TLS OK.'
*cmd* 'USER us...@mydomain.com'
*put* 'USER us...@mydomain.com\r\n'
*get* '331 User us...@mydomain.com OK. Password required\n'
*resp* '331 User us...@mydomain.com OK. Password required'
*cmd* 'PASS ************'
*put* 'PASS ************\r\n'
*get* '230 OK. Current restricted directory is /\n'
*resp* '230 OK. Current restricted directory is /'
*cmd* 'PBSZ 0'
*put* 'PBSZ 0\r\n'
*get* '200 PBSZ=0\n'
*resp* '200 PBSZ=0'
*cmd* 'PROT P'
*put* 'PROT P\r\n'
*get* '200 Data protection level set to "private"\n'
*resp* '200 Data protection level set to "private"'
*cmd* 'MKD /'
*put* 'MKD /\r\n'
*get* "550 Can't create directory: File exists\n"
*resp* "550 Can't create directory: File exists"
*cmd* 'TYPE I'
*put* 'TYPE I\r\n'
*get* '200 TYPE is now 8-bit binary\n'
*resp* '200 TYPE is now 8-bit binary'
*cmd* 'PASV'
*put* 'PASV\r\n'
*get* '227 Entering Passive Mode (185,24,98,215,210,73)\n'
*resp* '227 Entering Passive Mode (185,24,98,215,210,73)'
*cmd* 'STOR /yearrain.png'
*put* 'STOR /yearrain.png\r\n'
*get* '150 Accepted data connection\n'
*resp* '150 Accepted data connection'
*cmd* 'TYPE I'
*put* 'TYPE I\r\n'
*get* ''

repeats last three lines > 200 times

*cmd* 'TYPE I'
*put* 'TYPE I\r\n'
*get* ''
*cmd* 'MKD /font'
*put* 'MKD /font\r\n'
*get* ''
*cmd* 'MKD /font'
*put* 'MKD /font\r\n'
*get* ''
*cmd* 'MKD /font'
*put* 'MKD /font\r\n'
*get* ''
*cmd* 'QUIT'
*put* 'QUIT\r\n'
*get* ''

-----------
Log extract
-----------
May 11 17:15:13 localhost wee_reports[17945] DEBUG weewx.reportengine: Running report 'FTP'
May 11 17:15:13 localhost wee_reports[17945] DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/Ftp/skin.conf for report 'FTP'
May 11 17:15:13 localhost wee_reports[17945] DEBUG weeutil.ftpupload: Attempting secure connection to server.myhost.net
May 11 17:15:13 localhost wee_reports[17945] DEBUG weeutil.ftpupload: Secure data connection to server.myhost.net
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Attempt #1. Failed uploading /yearrain.png to server.myhost.net. Reason: [Errno 0] Error
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Attempt #2. Failed uploading /yearrain.png to server.myhost.net. Reason:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Attempt #3. Failed uploading /yearrain.png to server.myhost.net. Reason:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Failed to upload file /yearrain.png
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Attempt #1. Failed uploading /seasons.css to server.myhost.net. Reason:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Attempt #2. Failed uploading /seasons.css to server.myhost.net. Reason:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Attempt #3. Failed uploading /seasons.css to server.myhost.net. Reason:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Failed to upload file /seasons.css

repeats for >60 files

May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Attempt #1. Failed uploading /monthwind.png to server.myhost.net. Reason:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Attempt #2. Failed uploading /monthwind.png to server.myhost.net. Reason:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Attempt #3. Failed uploading /monthwind.png to server.myhost.net. Reason:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Failed to upload file /monthwind.png
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Got error while attempting to make remote directory /font
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload:      ****  Error:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Got error while attempting to make remote directory /font
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload:      ****  Error:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Got error while attempting to make remote directory /font
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload:      ****  Error:
May 11 17:15:13 localhost wee_reports[17945] ERROR weeutil.ftpupload: Unable to create remote directory /font
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine: Caught unrecoverable exception in generator 'weewx.reportengine.FtpGenerator'
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****  catching classes that do not inherit from BaseException is not allowed
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****  Traceback (most recent call last):
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 326, in run
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****      n = ftp_data.run()
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weeutil/ftpupload.py", line 145, in run
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****      self._make_remote_dir(ftp_server, remote_dir_path)
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weeutil/ftpupload.py", line 242, in _make_remote_dir
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****      raise IOError("Unable to create remote directory %s" % remote_dir_path)
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****  OSError: Unable to create remote directory /font
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****  
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****  During handling of the above exception, another exception occurred:
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****  
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****  Traceback (most recent call last):
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 197, in run
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****      obj.start()
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 280, in start
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****      self.run()
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 327, in run
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****      except (socket.timeout, socket.gaierror, ftplib.all_errors, IOError) as e:
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****  TypeError: catching classes that do not inherit from BaseException is not allowed
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****  Generator terminated

---------------------
Configuration extract
---------------------
    [[FTP]]
        # FTP'ing the results to a webserver is treated as just another report,
        # albeit one with an unusual report generator!
        skin = Ftp
        
        # If you wish to use FTP, set "enable" to "true", then
        # fill out the next four lines.
        # Use quotes around passwords to guard against parsing errors.
        enable = true
        user = XXX obfuscated by wee_debug XXX
        password = XXX obfuscated by wee_debug XXX
        server = server.myhost.net
        path = /    # The destination directory, e.g., /weather
        
        # Set to True for an FTP over TLS (FTPS) connection. Not all servers
        # support this.
        secure_ftp = True
        secure_data = True
        
        # To upload files from something other than what HTML_ROOT is set
        # to above, specify a different HTML_ROOT here.
        #HTML_ROOT = /var/www/html/weewx
        
        # Most FTP servers use port 21
        port = 21
        
        # Set to 1 to use passive mode, zero for active mode
        passive = 1
        
        debug = 2

Stephen

unread,
May 11, 2020, 6:21:09 PM5/11/20
to weewx-user
Just realised that because I'd added some of my own debug to ftpupload.py, the line numbers in the unrecoverable exception error messages will be misleading.  They should be as follows:

May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****  Traceback (most recent call last):
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 326, in run
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****      n = ftp_data.run()
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weeutil/ftpupload.py", line 143, in run

May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****      self._make_remote_dir(ftp_server, remote_dir_path)
May 11 17:15:13 localhost wee_reports[17945] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weeutil/ftpupload.py", line 240, in _make_remote_dir

Tom Keffer

unread,
May 11, 2020, 6:42:53 PM5/11/20
to weewx-user
It's possible you are getting hit by issue #284. Try changing this

        # Set to True for an FTP over TLS (FTPS) connection. Not all servers
        # support this.
        secure_ftp = True
        secure_data = True
 
to this

        # Set to True for an FTP over TLS (FTPS) connection. Not all servers
        # support this.
        secure_ftp = True
        secure_data = False
 
See if that helps.

-tk

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/abb04feb-d199-4d15-a484-c0d04ec77087%40googlegroups.com.

Stephen

unread,
May 12, 2020, 3:51:21 AM5/12/20
to weewx-user


On Monday, 11 May 2020 23:42:53 UTC+1, Tom Keffer wrote:
It's possible you are getting hit by issue #284. Try changing this

        # Set to True for an FTP over TLS (FTPS) connection. Not all servers
        # support this.
        secure_ftp = True
        secure_data = True
 
to this

        # Set to True for an FTP over TLS (FTPS) connection. Not all servers
        # support this.
        secure_ftp = True
        secure_data = False
 
See if that helps.

-tk


I've tried that and it eliminates the error at the start that seems to cause everything else to go wrong and the unhandled exception, but now the server complains (reasonably, it seems to me).

This is output for each file:

*cmd* 'TYPE I'
*put* 'TYPE I\r\n'
*get* '200 TYPE is now 8-bit binary\n'
*resp* '200 TYPE is now 8-bit binary'
*cmd* 'PASV'
*put* 'PASV\r\n'
*get* '227 Entering Passive Mode (185,24,98,215,244,34)\n'
*resp* '227 Entering Passive Mode (185,24,98,215,244,34)'

*cmd* 'STOR /yearrain.png'
*put* 'STOR /yearrain.png\r\n'
*get* '521 Data connection cannot be opened with this PROT setting.\n'
*resp* '521 Data connection cannot be opened with this PROT setting.'
 
and it ends politely...

*cmd* 'QUIT'
*put* 'QUIT\r\n'
*get* '221-Goodbye. You uploaded 0 and downloaded 0 kbytes.\n'
*get* '221 Logout.\n'
*resp* '221-Goodbye. You uploaded 0 and downloaded 0 kbytes.\n221 Logout.'

Tom Keffer

unread,
May 12, 2020, 7:39:08 AM5/12/20
to weewx-user
I know this is probably not what you want to hear, but can you use rsync? It tends to be faster and is very secure.

-tk

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.

Stephen

unread,
May 12, 2020, 11:03:39 AM5/12/20
to weewx-user


On Tuesday, 12 May 2020 12:39:08 UTC+1, Tom Keffer wrote:
I know this is probably not what you want to hear, but can you use rsync? It tends to be faster and is very secure.

rsync isn't available and neither is plain ftp.

Leon Shaner

unread,
May 12, 2020, 11:10:39 AM5/12/20
to weewx...@googlegroups.com
Stephen,

Not looking at the code, but shouldn't there be some prefix to these paths?
Nobody is going to let you write to root (/).

*put* 'MKD /\r\n'
*put* 'STOR /yearrain.png\r\n'
*put* 'MKD /font\r\n'
*put* 'MKD /font\r\n'
*put* 'MKD /font\r\n'

Regards,
\Leon
--
Leon Shaner :: Dearborn, Michigan (iPad)

On May 11, 2020, at 1:30 PM, Stephen <stephen...@gmail.com> wrote:


--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.

Stephen

unread,
May 12, 2020, 11:55:06 AM5/12/20
to weewx-user


On Tuesday, 12 May 2020 16:10:39 UTC+1, Leon Shaner wrote:
Stephen,

Not looking at the code, but shouldn't there be some prefix to these paths?
Nobody is going to let you write to root (/).


It's relative to the ftp account home directory, not root on the server.  If I set the path to something else the directory is created correctly in the ftp account's home directory.

Tom Keffer

unread,
May 12, 2020, 12:31:10 PM5/12/20
to weewx-user
...and yet you can ftps using a client? Does the client have access to any ssh keys? Is there a debug mode for the client where you can watch what it's doing, and see what's different?

If you're willing, you can send me username and password and I can try from my end. Entirely optional.

-tk

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.

Stephen

unread,
May 12, 2020, 6:05:13 PM5/12/20
to weewx-user


On Tuesday, 12 May 2020 17:31:10 UTC+1, Tom Keffer wrote:
Does the client have access to any ssh keys?

No 

Is there a debug mode for the client where you can watch what it's doing, and see what's different?

 Yes, here is the output.  I'm using lftp.  There are some differences so I modified the WeeWX code to make it do the same but it didn't fix it.

server.myhost.net <--- 220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
server.myhost.net <--- 220-You are user number 3 of 50 allowed.
server.myhost.net <--- 220-Local time is now 19:53. Server port: 21.
server.myhost.net <--- 220-This is a private system - No anonymous login
server.myhost.net <--- 220-IPv6 connections are also welcome on this server.
server.myhost.net <--- 220 You will be disconnected after 15 minutes of inactivity.
server.myhost.net ---> FEAT
server.myhost.net <--- 211-Extensions supported:
server.myhost.net <---  EPRT
server.myhost.net <---  IDLE
server.myhost.net <---  MDTM
server.myhost.net <---  SIZE
server.myhost.net <---  MFMT
server.myhost.net <---  REST STREAM
server.myhost.net <---  MLST type*;size*;sizd*;modify*;UNIX.mode*;UNIX.uid*;UNIX.gid*;unique*;
server.myhost.net <---  MLSD
server.myhost.net <---  AUTH TLS
server.myhost.net <---  PBSZ
server.myhost.net <---  PROT
server.myhost.net <---  UTF8
server.myhost.net <---  TVFS
server.myhost.net <---  ESTA
server.myhost.net <---  PASV
server.myhost.net <---  EPSV
server.myhost.net <---  SPSV
server.myhost.net <---  ESTP
server.myhost.net <--- 211 End.
server.myhost.net ---> AUTH TLS
server.myhost.net <--- 234 AUTH TLS OK.
server.myhost.net ---> OPTS UTF8 ON
server.myhost.net <--- 200 OK, UTF-8 enabled
server.myhost.net ---> USER us...@mydomain.com
server.myhost.net <--- 331 User us...@mydomain.com OK. Password required
server.myhost.net ---> PASS **************
server.myhost.net <--- 230 OK. Current restricted directory is /
server.myhost.net ---> OPTS MLST type;size;modify;UNIX.mode;UNIX.uid;UNIX.gid
server.myhost.net <--- 200  MLST OPTS type;size;sizd;modify;UNIX.mode;UNIX.uid;UNIX.gid;unique;
server.myhost.net ---> PWD
server.myhost.net <--- 257 "/" is your current location
server.myhost.net ---> PBSZ 0
server.myhost.net <--- 200 PBSZ=0
server.myhost.net ---> PROT P
server.myhost.net <--- 200 Data protection level set to "private"
server.myhost.net ---> TYPE I
server.myhost.net <--- 200 TYPE is now 8-bit binary
server.myhost.net ---> PASV
server.myhost.net <--- 227 Entering Passive Mode (185,24,98,215,210,134)
server.myhost.net ---- Connecting data socket to (185.24.98.215) port 53894
server.myhost.net ---> STOR yearrain.png
server.myhost.net <--- 150 Accepted data connection
server.myhost.net <--- 226-File successfully transferred
server.myhost.net <--- 226 0.054 seconds (measured here), 115.09 Kbytes per second
server.myhost.net ---> MFMT 20200510200531 yearrain.png
server.myhost.net <--- 213 UTIME OK
server.myhost.net ---> QUIT
server.myhost.net <--- 221-Goodbye. You uploaded 7 and downloaded 0 kbytes.
server.myhost.net <--- 221 Logout.

Tom Keffer

unread,
May 13, 2020, 12:51:24 PM5/13/20
to weewx-user
Stephen and I had an offline conversation and came up with a fix. Commit 3c81cd2.

To use the fix, replace your copy of weewx/reportengine.py.

Then under [[FTP]] add this option

  [[FTP]]
    ... (as before)
    reuse_ssl = True

The fix will only work with Python >= 3.6. 

-tk


--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.

Juan Antonio Mosquera

unread,
Apr 26, 2021, 2:45:06 PM4/26/21
to weewx-user
I tried reuse_ssl = True..... but... impossible connect... with lftp connects OK with this config:

lftp -u $USER,$PASSWORD ftps://$HOST:$PORT <<EOF set ssl:verify-certificate no set ftp:ssl-protect-data true put test.txt exit EOF

Weewx logs:

Apr 26 20:41:04 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine: ftpgenerator: (0): caught exception '<class 'socket.timeout'>': timed out
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****  Traceback (most recent call last):
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 331, in run
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****      n = ftp_data.run()
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weeutil/ftpupload.py", line 133, in run
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****      ftp_server.connect(self.server, self.port)
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****    File "/usr/lib/python3.7/ftplib.py", line 155, in connect
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****      self.welcome = self.getresp()
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****    File "/usr/lib/python3.7/ftplib.py", line 236, in getresp
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****      resp = self.getmultiline()
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****    File "/usr/lib/python3.7/ftplib.py", line 222, in getmultiline
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****      line = self.getline()
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****    File "/usr/lib/python3.7/ftplib.py", line 204, in getline
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****      line = self.file.readline(self.maxline + 1)
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****    File "/usr/lib/python3.7/socket.py", line 589, in readinto
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****      return self._sock.recv_into(b)
Apr 26 20:41:05 raspberrypi python3[1399]: weewx[1399] ERROR weewx.reportengine:         ****  socket.timeout: timed out

Juan Antonio Mosquera

unread,
Apr 29, 2021, 2:56:45 AM4/29/21
to weewx-user
Is it possible that the problem is that the component is waiting to accept the certificate? Is it possible to add an option to always accept the certificate (trust the certificate always)?

RSYNC is not possible.

Thank you.
Reply all
Reply to author
Forward
0 new messages