Email alerts and notifications
Oct 29, 2014
Overview
Release 71 adds email alerts and notifications.
Alert conditions
The program can now send an email when a backup completes a run, either with or without errors (configurable). It can also send an alert when backup misses a run or when a backup is cancelled by the user.
App-wide and backup-specific configuration
Email content, Subject, From and To fields are app-wide settings. As is the preference for attaching the logs and parameters for talking to the mail server.
At the backup level it is possible to specify if an alert should be sent or not and whether it should be sent after each run or only when the run completes with errors -
https://bvckup2.com/wip/r71-configure-alerts.gif
The "Configure" button in the above screenshot leads to an email alert configuration window that does the *app-wide* configuration. You will get a warning about this when appropriate.
Message configuration
From, Subject and the email message itself are configurable, all initialized to the reasonable defaults -
https://bvckup2.com/wip/r71-email-details.png
There are over 80 variables that are available for dynamically constructing these fields, covering the OS environment, app's properties (version, license, etc), backup config and the state of the last backup run. In the above screenshot, clicking on "Show variables" will expand the window with a full list of variables.
Incidentally, the same variables are now also made available to the pre/post-backup commands.
Mail server configuration
When it comes to actually sending the alert, the app can do it in two ways.
It can take the To address, look up its mail server and talk to it directly:
Alternatively, you can tell it to which mail server to connect and optionally provide credentials for logging into it:
Direct delivery is the simplest to configure, but it will likely not work if you are to try it from a network address of a residential ISP. The reason for this is that it's a common way of distributing spam, so larger email providers refuse to talk to anyone from residential IP ranges. But do try it first. If it works - great!
Relayed delivery is when you are asking "your" server to take on delivering your email to whatever it needs to go. The app comes with a list of few dozen large providers (Gmail, Hotmail, Yahoo, etc), so it can help you configuring the host/port/security settings for them. But if in doubts, click on the "?" next to "How to send" and you'll get a quick guide on settings things up.
Once all set and good to go, click on "Send test email" to, unsurprisingly, send a test email -
https://bvckup2.com/wip/r71-email-config-test.png
Logs
The app also gives an option of attaching backup logs - either a full log from the last run or just the errors (in the context).
Logs larger than 4 Megs are trimmed at the bottom, but preserving at least 20 lines at the end. After that, logs larger than 128 KB are zipped.
4 MB, 20 lines and 128 KB are configurable through an .ini edit. Ask me how.
Lastly
1. If an email alert cannot be sent (due to machine being offline, for example), it is *not* queued, but discarded. If you need reliable delivery for these scenarios, you will need to do it through a post-backup command with a custom script.
2. In direct delivery mode, the app connects to port 25 and it expects STARTTLS support on server's end. It's possible to adjust both settings. You guessed it - "via an .ini edit, ask me how".
---
All in all, this worked out to be a remarkably deep rabbit hole of a feature. If you have few spare minutes, see here for an executive summary -
https://bvckup2.com.dev/wip/15102014.
Most likely it will require a bit of TLC and tweaking, but it should also be pretty functional right out of the box.
1
Peacecamper :
Oct 29, 2014
I just tried the mail notifications, however I can't get it to work with my GMX account (german ISP).
"Send to target mail server" doesn't work, but with my configuration for the server it even crashes the hole program.
Hostname: mail.gmx.net
Port: 465
Security: SMTP + STARTTLS
The test mail log stops at "Exchanging pleasantries" and when I cancel it, Bvckup 2 chrashes completly.
I tried the other security method, but then I get "Error talking to the mail server". Also I have a second port I can use (587), but then I get "Error securing the connection" for both security methods.
Thunderbird works just fine with my ISP. I'll try my Google account now and report back.
2
Peacecamper :
Oct 29, 2014
Exactly the same behaviour with smtp.gmail.com.
Port 587 -> Error securing the connection
Port 465 SMTP over TLS -> Error talking to the mail server
Port 465 SMTP + STARTTLS -> Crash
3
Alex Pankratov :
Oct 29, 2014
I'm looking at the crash, but for the settings you need "SMTP over TLS" for 465 and "STARTTLS" for 587.
4
Alex Pankratov :
Oct 29, 2014
Alright, I got the crash, will release the patch in a second, but for this -
Port 587 -> Error securing the connection
Port 465 SMTP over TLS -> Error talking to the mail server
I really need to see your %LocalAppData%\Bvckup2\bvckup2-smtp.log. The log is re-created with every "Send test email", so can you just run first scenario and either email me the .log or post it here (the password is not logged, but you may want to edit out the account name).
Thanks.
5
Alex Pankratov :
Oct 29, 2014
A patch to resolve the crash issue is out. Please pull it down and install via Help / Check for updates.
The root of the issue was with how the SMTP connection was shutdown. The app tries to be polite and say QUIT when it takes the connection down, but then it hit an error trying to send this out, so in response it would start shutting down the connection again (even though it was already halfway through just that) and it looped, leading to the stack overflow. Rookie mistake. Not sure who would write such a nonsense.
6
Alex Pankratov :
Oct 29, 2014
... and "Revision 3" is out. One of the changes is that the app now uses Unicode (UTF16) version of DNS Resolver API, which is apparently better supported and documented than the previously used UTF8 version of it.
7
baconmessy :
Oct 29, 2014
I am seeing same as Peacecamper. Here is my log:
2014.10.30 00:12:11.657 (UTC-6) 3 State 3 -> 5
2014.10.30 00:12:11.658 (UTC-6) 3 (dns) Looking up A record for mailer.xxxxxxxxxx.com ...
2014.10.30 00:12:11.658 (UTC-6) 3 (dns) x.x.113.82
2014.10.30 00:12:11.659 (UTC-6) 3 Mail server address - x.x.113.82, port 465
2014.10.30 00:12:11.659 (UTC-6) 3 State 5 -> 6
2014.10.30 00:12:11.659 (UTC-6) 3 Connecting ...
2014.10.30 00:12:11.703 (UTC-6) 3 Connected
2014.10.30 00:12:11.704 (UTC-6) 3 State 6 -> 8
2014.10.30 00:12:25.581 (UTC-6) 0 recv() failed with 10053
8
Alex Pankratov :
Oct 30, 2014
@baconmessy - on port 465 you must use SMTPS as the security option as this is effectively a TLS port. So the app first needs to establish TLS session and then start talking SMTP over it. If you make it talk SMTP first, it obviously won't work.
9
baconmessy :
Oct 30, 2014
I have tried it each way. I also have other applications that work with these settings.
2014.10.30 08:47:10.695 (UTC-6) 3 State 3 -> 5
2014.10.30 08:47:10.696 (UTC-6) 3 (dns) Looking up A record for mailer.xxxxxxx.com ...
2014.10.30 08:47:10.698 (UTC-6) 3 (dns) x.x.x.x
2014.10.30 08:47:10.698 (UTC-6) 3 Mail server address - x.x.x.x, port 465
2014.10.30 08:47:10.698 (UTC-6) 3 State 5 -> 6
2014.10.30 08:47:10.698 (UTC-6) 3 Connecting ...
2014.10.30 08:47:10.744 (UTC-6) 3 Connected
2014.10.30 08:47:10.744 (UTC-6) 3 State 6 -> 7
2014.10.30 08:47:10.744 (UTC-6) 3 Securing ...
2014.10.30 08:47:10.744 (UTC-6) 3 (tls) init(), host = "mailer.xxxxxxxx.com"
2014.10.30 08:47:10.744 (UTC-6) 3 (tls) <- 128
2014.10.30 08:47:10.744 (UTC-6) 3 (tls) handshake ...
2014.10.30 08:47:10.745 (UTC-6) 3 (tls) waiting for data ...
2014.10.30 08:47:10.807 (UTC-6) 3 (tls) -> 3753, total 3753
2014.10.30 08:47:10.810 (UTC-6) 3 (tls) InitializeSecurityContext() 80090322, 3753 bytes in, 0 bytes out
2014.10.30 08:47:10.810 (UTC-6) 0 Function InitializeSecurityContext failed with 80090322
2014.10.30 08:47:10.810 (UTC-6) 0 tls->init() failed
2014.10.30 08:47:10.810 (UTC-6) 3 State 7 -> 18
2014.10.30 08:47:10.810 (UTC-6) 3 Shutting down TCP ...
2014.10.30 08:47:10.821 (UTC-6) 3 (tls) discard()
10
baconmessy :
Oct 30, 2014
Is there a limit to password length or special chars?
11
Peacecamper :
Oct 30, 2014
Here is my log for Port 587:
2014.10.30 15:51:45.521 (UTC+1) 3 State 3 -> 5
2014.10.30 15:51:45.521 (UTC+1) 3 (dns) Looking up A record for mail.gmx.net ...
2014.10.30 15:51:45.521 (UTC+1) 3 (dns) 212.227.17.190
2014.10.30 15:51:45.521 (UTC+1) 3 (dns) 212.227.17.168
2014.10.30 15:51:45.521 (UTC+1) 3 Mail server address - 212.227.17.190, port 587
2014.10.30 15:51:45.521 (UTC+1) 3 State 5 -> 6
2014.10.30 15:51:45.522 (UTC+1) 3 Connecting ...
2014.10.30 15:51:45.522 (UTC+1) 3 Connected
2014.10.30 15:51:45.522 (UTC+1) 3 State 6 -> 8
2014.10.30 15:51:45.752 (UTC+1) 3 --[ raw ]-->
220 gmx.com (mrgmx002) Nemesis ESMTP Service ready
2014.10.30 15:51:45.752 (UTC+1) 3 State 8 -> 9
2014.10.30 15:51:45.752 (UTC+1) 3 <--[ raw ]--
EHLO localhost
2014.10.30 15:51:45.752 (UTC+1) 3 sent
2014.10.30 15:51:45.851 (UTC+1) 3 --[ raw ]-->
250-gmx.com Hello localhost [79.243.255.39]
250-SIZE 69920427
250-AUTH LOGIN PLAIN
250 STARTTLS
2014.10.30 15:51:45.851 (UTC+1) 3 Extensions :
2014.10.30 15:51:45.851 (UTC+1) 3 starttls - yes
2014.10.30 15:51:45.851 (UTC+1) 3 max_size - 69920427
2014.10.30 15:51:45.851 (UTC+1) 3 authent. - plain
2014.10.30 15:51:45.851 (UTC+1) 3 State 9 -> 10
2014.10.30 15:51:45.851 (UTC+1) 3 <--[ raw ]--
STARTTLS
2014.10.30 15:51:45.851 (UTC+1) 3 sent
2014.10.30 15:51:45.931 (UTC+1) 3 --[ raw ]-->
220 OK
2014.10.30 15:51:45.931 (UTC+1) 3 State 10 -> 11
2014.10.30 15:51:45.931 (UTC+1) 3 Securing ...
2014.10.30 15:51:45.931 (UTC+1) 3 (tls) init(), host = "mail.gmx.net"
2014.10.30 15:51:45.931 (UTC+1) 3 (tls) <- 116
2014.10.30 15:51:45.931 (UTC+1) 3 (tls) handshake ...
2014.10.30 15:51:45.931 (UTC+1) 3 (tls) waiting for data ...
2014.10.30 15:51:46.158 (UTC+1) 3 (tls) -> 2324, total 2324
2014.10.30 15:51:46.159 (UTC+1) 3 (tls) InitializeSecurityContext() 00090312, 2324 bytes in, 326 bytes out
2014.10.30 15:51:46.159 (UTC+1) 3 (tls) <- 326
2014.10.30 15:51:46.159 (UTC+1) 3 (tls) waiting for data ...
2014.10.30 15:51:46.164 (UTC+1) 3 (tls) -> 59, total 59
2014.10.30 15:51:46.164 (UTC+1) 3 (tls) InitializeSecurityContext() 00000000, 59 bytes in, 0 bytes out
2014.10.30 15:51:46.164 (UTC+1) 3 (tls) handshake completed
2014.10.30 15:51:46.164 (UTC+1) 3 (tls) protocol - 00000080 - TLS1
2014.10.30 15:51:46.164 (UTC+1) 3 cipher - 0000660e / 128 - AES
2014.10.30 15:51:46.164 (UTC+1) 3 digest - 00008004 / 160 - SHA1
2014.10.30 15:51:46.164 (UTC+1) 3 exchange - 0000a400 / 2048 - RSA/KEYX
2014.10.30 15:51:46.164 (UTC+1) 3 cert :
2014.10.30 15:51:46.164 (UTC+1) 3 serial - [08:0c:94:0c]
2014.10.30 15:51:46.164 (UTC+1) 3 subject - [C=DE, O=1&1 Mail & Media GmbH, S=Rhineland-Palatinate, L=Montabaur, E=server-certs@1und1.de, CN=mail.gmx.net]
2014.10.30 15:51:46.164 (UTC+1) 3 issuer - [OU=generated by avast! antivirus for SSL scanning, O=avast! Mail Scanner, CN=avast! Mail Scanner Root]
2014.10.30 15:51:46.164 (UTC+1) 3 Secured
2014.10.30 15:51:46.164 (UTC+1) 3 <--[ tls ]--
EHLO localhost
2014.10.30 15:51:46.164 (UTC+1) 3 (tls) <- 53
2014.10.30 15:51:46.164 (UTC+1) 3 sent
2014.10.30 15:51:46.276 (UTC+1) 3 (tls) -> 154, total 154
2014.10.30 15:51:46.276 (UTC+1) 3 (tls) decrypt() 154 bytes -> 00000000
2014.10.30 15:51:46.276 (UTC+1) 0 Server has closed the connection
2014.10.30 15:51:46.276 (UTC+1) 3 State 11 -> 18
2014.10.30 15:51:46.276 (UTC+1) 3 Shutting down TCP ...
2014.10.30 15:51:46.346 (UTC+1) 3 (tls) discard()
12
Peacecamper :
Oct 30, 2014
And the log for 465:
And mine for 465:
2014.10.30 15:53:48.357 (UTC+1) 3 State 3 -> 5
2014.10.30 15:53:48.357 (UTC+1) 3 (dns) Looking up A record for mail.gmx.net ...
2014.10.30 15:53:48.358 (UTC+1) 3 (dns) 212.227.17.190
2014.10.30 15:53:48.358 (UTC+1) 3 (dns) 212.227.17.168
2014.10.30 15:53:48.358 (UTC+1) 3 Mail server address - 212.227.17.190, port 465
2014.10.30 15:53:48.358 (UTC+1) 3 State 5 -> 6
2014.10.30 15:53:48.358 (UTC+1) 3 Connecting ...
2014.10.30 15:53:48.358 (UTC+1) 3 Connected
2014.10.30 15:53:48.358 (UTC+1) 3 State 6 -> 7
2014.10.30 15:53:48.358 (UTC+1) 3 Securing ...
2014.10.30 15:53:48.358 (UTC+1) 3 (tls) init(), host = "mail.gmx.net"
2014.10.30 15:53:48.358 (UTC+1) 3 (tls) <- 116
2014.10.30 15:53:48.360 (UTC+1) 3 (tls) handshake ...
2014.10.30 15:53:48.360 (UTC+1) 3 (tls) waiting for data ...
2014.10.30 15:53:48.407 (UTC+1) 3 (tls) -> 2324, total 2324
2014.10.30 15:53:48.408 (UTC+1) 3 (tls) InitializeSecurityContext() 00090312, 2324 bytes in, 326 bytes out
2014.10.30 15:53:48.408 (UTC+1) 3 (tls) <- 326
2014.10.30 15:53:48.408 (UTC+1) 3 (tls) waiting for data ...
2014.10.30 15:53:48.420 (UTC+1) 3 (tls) -> 59, total 59
2014.10.30 15:53:48.421 (UTC+1) 3 (tls) InitializeSecurityContext() 00000000, 59 bytes in, 0 bytes out
2014.10.30 15:53:48.421 (UTC+1) 3 (tls) handshake completed
2014.10.30 15:53:48.421 (UTC+1) 3 (tls) protocol - 00000080 - TLS1
2014.10.30 15:53:48.421 (UTC+1) 3 cipher - 0000660e / 128 - AES
2014.10.30 15:53:48.421 (UTC+1) 3 digest - 00008004 / 160 - SHA1
2014.10.30 15:53:48.421 (UTC+1) 3 exchange - 0000a400 / 2048 - RSA/KEYX
2014.10.30 15:53:48.421 (UTC+1) 3 cert :
2014.10.30 15:53:48.421 (UTC+1) 3 serial - [08:0c:94:0c]
2014.10.30 15:53:48.421 (UTC+1) 3 subject - [C=DE, O=1&1 Mail & Media GmbH, S=Rhineland-Palatinate, L=Montabaur, E=server-certs@1und1.de, CN=mail.gmx.net]
2014.10.30 15:53:48.421 (UTC+1) 3 issuer - [OU=generated by avast! antivirus for SSL scanning, O=avast! Mail Scanner, CN=avast! Mail Scanner Root]
2014.10.30 15:53:48.421 (UTC+1) 3 Secured
2014.10.30 15:53:48.421 (UTC+1) 3 State 7 -> 8
2014.10.30 15:53:48.617 (UTC+1) 3 (tls) -> 122, total 122
2014.10.30 15:53:48.617 (UTC+1) 3 (tls) decrypt() 122 bytes -> 00000000
2014.10.30 15:53:48.617 (UTC+1) 0 Server has closed the connection
2014.10.30 15:53:48.617 (UTC+1) 3 State 8 -> 18
2014.10.30 15:53:48.617 (UTC+1) 3 Shutting down TCP ...
2014.10.30 15:53:48.837 (UTC+1) 3 (tls) discard()
13
baconmessy :
Oct 30, 2014
Interesting. I just tried with no encryption at all and got this:
2014.10.30 09:57:50.858 (UTC-6) 3 State 3 -> 5
2014.10.30 09:57:50.859 (UTC-6) 3 (dns) Looking up A record for mailer.xxxxxxx.com ...
2014.10.30 09:57:50.861 (UTC-6) 3 (dns) x.x.x.x
2014.10.30 09:57:50.861 (UTC-6) 3 Mail server address - x.x.x.x, port 26
2014.10.30 09:57:50.861 (UTC-6) 3 State 5 -> 6
2014.10.30 09:57:50.861 (UTC-6) 3 Connecting ...
2014.10.30 09:57:50.907 (UTC-6) 3 Connected
2014.10.30 09:57:50.907 (UTC-6) 3 State 6 -> 8
2014.10.30 09:57:50.955 (UTC-6) 3 --[ raw ]-->
220-xxxxxx.xxxxxxx.com ESMTP Exim 4.82 #2 Thu, 30 Oct 2014 10:57:50 -0400
220-We do not authorize the use of this system to transport unsolicited,
220 and/or bulk e-mail.
2014.10.30 09:57:50.955 (UTC-6) 3 State 8 -> 9
2014.10.30 09:57:50.955 (UTC-6) 3 <--[ raw ]--
EHLO localhost
2014.10.30 09:57:50.956 (UTC-6) 3 sent
2014.10.30 09:57:51.003 (UTC-6) 3 --[ raw ]-->
250-xxxxxx.xxxxxxxxx.com Hello localhost [x.x.x.x]
250-SIZE 52428800
250-8BITMIME
250-PIPELINING
250-AUTH PLAIN LOGIN
250-STARTTLS
250 HELP
2014.10.30 09:57:51.003 (UTC-6) 3 Extensions :
2014.10.30 09:57:51.003 (UTC-6) 3 starttls - yes
2014.10.30 09:57:51.003 (UTC-6) 3 max_size - 52428800
2014.10.30 09:57:51.003 (UTC-6) 3 authent. - plain
2014.10.30 09:57:51.003 (UTC-6) 3 State 9 -> 12
2014.10.30 09:57:51.003 (UTC-6) 3 State 12 -> 13
2014.10.30 09:57:51.003 (UTC-6) 3 Logging in ...
2014.10.30 09:57:51.003 (UTC-6) 3 <--[ raw ]--
AUTH PLAIN ******
2014.10.30 09:57:51.003 (UTC-6) 3 sent
2014.10.30 09:57:51.214 (UTC-6) 3 --[ raw ]-->
235 Authentication succeeded
2014.10.30 09:57:51.214 (UTC-6) 3 Logged in
2014.10.30 09:57:51.214 (UTC-6) 3 State 13 -> 14
2014.10.30 09:57:51.214 (UTC-6) 3 <--[ raw ]--
MAIL FROM: <noreply@bvckup2.com>
2014.10.30 09:57:51.214 (UTC-6) 3 sent
2014.10.30 09:57:51.263 (UTC-6) 3 --[ raw ]-->
250 OK
2014.10.30 09:57:51.263 (UTC-6) 3 State 14 -> 15
2014.10.30 09:57:51.263 (UTC-6) 3 <--[ raw ]--
RCPT TO: <xxx@xxxx.com>
2014.10.30 09:57:51.264 (UTC-6) 3 sent
2014.10.30 09:57:51.319 (UTC-6) 3 --[ raw ]-->
550-"Your IP: 69.76.xxx.xxx : Your domain bvckup2.com is not allowed in header
550 From"
2014.10.30 09:57:51.319 (UTC-6) 0 Non-2xx code: 550
2014.10.30 09:57:51.319 (UTC-6) 3 State 15 -> 18
2014.10.30 09:57:51.319 (UTC-6) 3 <--[ raw ]--
QUIT
2014.10.30 09:57:51.320 (UTC-6) 3 sent
2014.10.30 09:57:51.320 (UTC-6) 3 Shutting down TCP ...
------------
Makes sense. I don't want it to come from @bvckup2.com.
14
baconmessy :
Oct 30, 2014
I found a super secret variable in the engine INI that was set to noreply@bvckup2.com and changed it :)
Unfortunately still no dice.
15
Alex Pankratov :
Oct 30, 2014
Alright, so...
@baconmessy -
Post #9 above, port 465, InitializeSecurityContext() 80090322
This means that the mail server wants the client to authenticate itself with a certificate. This is something that is simply not supported in current code, because frankly I assumed this is not going to be widely used in practice... How do you have your other apps configured in this regard?
Is there a limit to password length or special chars?
No.
I found a super secret variable in the engine INI that was set to noreply@bvckup2.com and changed it :)
I was just going to mention it.
16
Alex Pankratov :
Oct 30, 2014
@baconmessy - What do you get over 587 with authentication?
17
baconmessy :
Oct 30, 2014
Ok, I think I was connecting to the IP of mail server using hostname not defined as alternate name of the certificate. Now that I'm using the correct hostname I get this:
587 & SMTP + STARTTLS
2014.10.30 10:30:47.958 (UTC-6) 3 State 3 -> 5
2014.10.30 10:30:47.958 (UTC-6) 3 (dns) Looking up A record for xxx.xxx.com ...
2014.10.30 10:30:47.971 (UTC-6) 3 (dns) x.x.x.x
2014.10.30 10:30:47.971 (UTC-6) 3 Mail server address - x.x.x.x, port 587
2014.10.30 10:30:47.971 (UTC-6) 3 State 5 -> 6
2014.10.30 10:30:47.971 (UTC-6) 3 Connecting ...
2014.10.30 10:30:48.018 (UTC-6) 3 Connected
2014.10.30 10:30:48.018 (UTC-6) 3 State 6 -> 8
2014.10.30 10:30:48.067 (UTC-6) 3 --[ raw ]-->
220-xxx.xxx.com ESMTP Exim 4.82 #2 Thu, 30 Oct 2014 11:30:48 -0400
220-We do not authorize the use of this system to transport unsolicited,
220 and/or bulk e-mail.
2014.10.30 10:30:48.067 (UTC-6) 3 State 8 -> 9
2014.10.30 10:30:48.067 (UTC-6) 3 <--[ raw ]--
EHLO localhost
2014.10.30 10:30:48.067 (UTC-6) 3 sent
2014.10.30 10:30:48.114 (UTC-6) 3 --[ raw ]-->
250-xxx.xxx.com Hello localhost [x.x.x.x]
250-SIZE 52428800
250-8BITMIME
250-PIPELINING
250-AUTH PLAIN LOGIN
250-STARTTLS
250 HELP
2014.10.30 10:30:48.114 (UTC-6) 3 Extensions :
2014.10.30 10:30:48.114 (UTC-6) 3 starttls - yes
2014.10.30 10:30:48.114 (UTC-6) 3 max_size - 52428800
2014.10.30 10:30:48.114 (UTC-6) 3 authent. - plain
2014.10.30 10:30:48.115 (UTC-6) 3 State 9 -> 10
2014.10.30 10:30:48.115 (UTC-6) 3 <--[ raw ]--
STARTTLS
2014.10.30 10:30:48.115 (UTC-6) 3 sent
2014.10.30 10:30:48.169 (UTC-6) 3 --[ raw ]-->
220 TLS go ahead
2014.10.30 10:30:48.169 (UTC-6) 3 State 10 -> 11
2014.10.30 10:30:48.169 (UTC-6) 3 Securing ...
2014.10.30 10:30:48.169 (UTC-6) 3 (tls) init(), host = "xxx.xxx.com"
2014.10.30 10:30:48.170 (UTC-6) 3 (tls) <- 128
2014.10.30 10:30:48.170 (UTC-6) 3 (tls) handshake ...
2014.10.30 10:30:48.170 (UTC-6) 3 (tls) waiting for data ...
2014.10.30 10:30:48.217 (UTC-6) 3 (tls) -> 3753, total 3753
2014.10.30 10:30:48.219 (UTC-6) 3 (tls) InitializeSecurityContext() 00090312, 3753 bytes in, 326 bytes out
2014.10.30 10:30:48.219 (UTC-6) 3 (tls) <- 326
2014.10.30 10:30:48.219 (UTC-6) 3 (tls) waiting for data ...
2014.10.30 10:30:48.272 (UTC-6) 3 (tls) -> 59, total 59
2014.10.30 10:30:48.273 (UTC-6) 3 (tls) InitializeSecurityContext() 00000000, 59 bytes in, 0 bytes out
2014.10.30 10:30:48.273 (UTC-6) 3 (tls) handshake completed
2014.10.30 10:30:48.273 (UTC-6) 3 (tls) protocol - 00000080 - TLS1
2014.10.30 10:30:48.273 (UTC-6) 3 cipher - 0000660e / 128 - AES
2014.10.30 10:30:48.273 (UTC-6) 3 digest - 00008004 / 160 - SHA1
2014.10.30 10:30:48.273 (UTC-6) 3 exchange - 0000a400 / 2048 - RSA/KEYX
2014.10.30 10:30:48.273 (UTC-6) 3 cert :
2014.10.30 10:30:48.273 (UTC-6) 3 serial - [17:6d:9d:25:19:0d:10:57:c5:3f:98:27:48:18:58:61]
2014.10.30 10:30:48.273 (UTC-6) 3 subject - [OU=Domain Control Validated, OU=PositiveSSL Wildcard, CN=*.xxxxx.com]
2014.10.30 10:30:48.273 (UTC-6) 3 issuer - [C=GB, S=Greater Manchester, L=Salford, O=COMODO CA Limited, CN=PositiveSSL CA 2]
2014.10.30 10:30:48.273 (UTC-6) 3 Secured
2014.10.30 10:30:48.273 (UTC-6) 3 <--[ tls ]--
EHLO localhost
2014.10.30 10:30:48.273 (UTC-6) 3 (tls) <- 53
2014.10.30 10:30:48.273 (UTC-6) 3 sent
2014.10.30 10:30:48.317 (UTC-6) 3 (tls) -> 218, total 218
2014.10.30 10:30:48.317 (UTC-6) 3 (tls) decrypt() 218 bytes -> 00000000
2014.10.30 10:30:48.317 (UTC-6) 0 Server has closed the connection
2014.10.30 10:30:48.317 (UTC-6) 3 State 11 -> 18
2014.10.30 10:30:48.317 (UTC-6) 3 Shutting down TCP ...
2014.10.30 10:30:48.335 (UTC-6) 3 (tls) discard()
18
Alex Pankratov :
Oct 30, 2014
@Peacecamper -
Port 587
My only guess is that it doesn't like "localhost" in EHLO. Or perhaps that it expects AUTH to be the first command after STARTTLS.
"localhost" can be changed by editing %LocalAppData%\Bvckup2\engine\bvckup2-engine.ini - "email.smtp.ehlo_host" line. Just make sure to exit the app before editing the .ini.
Port 465
The server gracefully closes the connection after completing the TLS handshake. I have no idea why it would do that :-/ ... and I can't test it from here, because apparently my IP is on their "blacklist" so it refuses to even talk to me.
19
Alex Pankratov :
Oct 30, 2014
Shall we take this over to the email, gentlemen? Just drop me an email and let's go from there.
20
Alex Pankratov :
Oct 30, 2014
Ok, with baconmessy's help this has been resolved. Stay tuned for an update.
21
tommyla :
Nov 01, 2014
would have been nice if there was email notify on "device removed/disconnected"
it kinda pointless to backup when the device is disconnected :P
22
Alex Pankratov :
Nov 01, 2014
Hmm... I can make it an advanced per-backup option (i.e. send an alert when entering or leaving the "Waiting for device..." mode), but is this really needed? What's the actual use case?
23
tommyla :
Nov 01, 2014
please do, when someone accidentally removes the backup drive (disk crash?), people would want an email about it
24
pjb :
Nov 01, 2014
If the destination drive is not there, there is a failure code. I have a backup job where the backup job's destination is a shared folder on a USB flash drive connected to my router (samba share).
Yesterday since I was away from home, I ran the job manually on my laptop and I got an email, content of which had status and failure condition:
Status: Failed
Failure: Destination device is missing
25
tommyla :
Nov 01, 2014
pjb yes, it works when you run it manually, but if the plan is set to "continuously" and the drive disappear/disconnected there is no email notify
26
pjb :
Nov 02, 2014
Hmm, program would need to differentiate between scenario of the drive has not yet been plugged in or not yet available on the network vs the drive disappeared (unplugged or not on network).
I guess query for existence of device as the interval schedule is met but would need to be mindful if destination is a network device since you may not want frequent checks to add to the network traffic...
27
galileo :
Nov 07, 2014
The time stamps noted in the email notifications are not consistent with my time zone. Looks like bvckup2 is not using the local system time...
galileo
28
Alex Pankratov :
Nov 08, 2014
Now that's a name I haven't heard in a long time. :)
I can't reproduce this. The code queries local time from Windows. What is the difference you get?
29
dimtar :
Nov 09, 2014
I am getting notifications from my 3 machines each night because they encountered errors. Somewhere between 10 and 200 files per machine couldn't be accessed for whatever reason.
This is normal but I am now getting 3 emails a night telling me this when there is effectively nothing wrong. When talk first came up about this I thought I read there would be 3 levels of tracking, 1. Send on every backup 2. Send on error or 3. Send on failure, such as the destination is missing.
Ideally I want just number 3. Have I got my settings wrong or does scenario 3 not exist?
30
Alex Pankratov :
Nov 09, 2014
Right, good point. I was basically deciding if to differentiate between file- and backup-level errors and ultimately folded both into a single option. I will add an option for sending alerts on critical failures only, will be out in the next R71 revision (probably mid- next week).
31
dimtar :
Nov 10, 2014
Thank you Alex, much appreciated.
32
wtip :
Nov 24, 2014
Changing the From address to something other than noreply@bvckup2.com has no effect. My SMTP server requires the From address to be one if it's authorized domains. The email notification feature won't work without this fixed.
33
Alex Pankratov :
Nov 25, 2014
wtip, the From email address for the SMTP envelope is controlled by a setting that can be changed by a direct edit to the INI file.
1. Exit the app
2. Open %LocalAppData%\Bvckup2\engine\bvckup2-engine.ini in Notepad
3. Find the "email.smtp.smtp_from" line and change it as needed
4. Save changes, exit Notepad
5. Start the app
34
wtip :
Nov 25, 2014
Alex, That worked! Thanks
35
Shai :
Nov 30, 2014
The email notification feature is very good to have, but I was wondering if it is possible to post the same information as a text file to the user's folder of choice (Desktop for example), or a similar method that doesn't require the computer to be online?
36
Alex Pankratov :
Dec 01, 2014
Certainly. Just use post-backup command. It has the exact same set of variables set up as environment variables (each prefixed with BVCKUP_), so you can just dump the whole thing into the text file.
See here for details -
https://bvckup2.com/support/forum/topic/9837
srappaport :
Jan 12, 2015
I cannot seem to put more than one address in the TO field. I've tried separating with comma, semi-colon, and space. Is this not supported or am I formatting incorrectly?
38
Alex Pankratov :
Jan 13, 2015
It's just not supported. Does it need to be?
39
Ces_ar :
Jan 13, 2015
I think that the srappaport idea might be usefull; specially on enterprise environment.
40
srappaport :
Jan 13, 2015
I was just converting from a post-job email script to the integrated email feature and found this because I was sending to multiple recipients. I could probably set up a distribution list in Exchange if I had to, but it would be helpful to have the ability natively.
41
PeteZ :
Jan 21, 2015
As a webmaster, I typically would set up one address to be used from within the app, and then froward that as necessary. That said, many people may not have the ability or knowledge to do that, so allowing a simple comma separated list of email addresses is a common and sensible option often found in apps. I would recommend limiting the number though, for instance, truncating after 5 or 10 at the most.
42
Sputnik-ETO :
Feb 09, 2015
Hi Alex,
Hope the your well and that business is good for you.
I have an issue with the email notification from one of my servers. Ive set it up and the test email is being received when its sent but im not receiving any mail on completion of the backup. All my other machines are functioning correctly and sending the mail, ive checked my mail server and they arnt going to spam. Any Ideas?
by the way your email addy isnt working, i get the following message:
----- The following addresses had permanent fatal errors ----- <support@pipemetrics.com>
43
Alex Pankratov :
Feb 09, 2015
What does the backup log say? There's a "Sending email ..." section and it should have the details.
your email addy isnt working, i get the following message
This is because your mail server somehow ended up on the spamcop.net blocklist. I have whitelisted your email address, can you please try again?
44
srappaport :
Mar 02, 2015
Hi Alex. Are you still considering allowing for multiple SMTP recipients in an upcoming release? (See above posts from Jan 13).
Thanks.
45
Alex Pankratov :
Mar 02, 2015
I'd rather not be adding it to be honest.
For one, it will complicate matters quite a bit for the case when the mail server is looked up automatically - the app will potentially need to talk to multiple mail servers for each alert and while it's not rocket science, it's still something that I think shouldn't be a part of a simple backup app.
The option would be to allow multiple recipients only when sending over authenticated SMTP, but then we now have two email modes that are configured similarly but act differently. Again, this is not something that I'd like to have in the app.
So I mean ... I can add an .ini file override to enable multiple recipients for the authenticated mode, but that's as far as I think this should go. Would this work?
46
srappaport :
Mar 02, 2015
Yes, that would probably work ok for me, but it's truly not an imperative feature if it's a hassle for you. I can certainly work around it.
I'd like to just clarify my own point of view, because I forgot you even included the ability to send directly to target server in bvckup2. I will never use the option to send directly to target mail servers and I generally don't think it's a good idea. I always offload to smtp smart hosts and it is the duty of the smart host to do all of the MX lookups and relaying/delivering. I completely agree that the backup app should not have to do all of that work and in my case, bvckup will only ever talk to the 1 smtp server specified in the app.
Thanks.
47
PetieG :
Mar 30, 2015
I vote yes for multiple recipients for authenticated outgoing emails. I never assumed it wouldn't. Copying my client for their own bvckup logs as well as me seems appropriate. If you have to make an .ini exception to do so, please do.
48
msharland :
Sep 19, 2015
Has the email multiple recipients (or CC field) .ini exception been added yet?
I am dying for it!
49
Alex Pankratov :
Sep 21, 2015
It hasn't been, sorry. Will try and get it into the next major release (R75).
50
Jodes :
Jan 17, 2016
I cannot send mails to my gmail account at all.
When I use the "Send mail directly to the target server" option, I get the following response with the test message: "We have detected unusual unsolicited mail originating from your IP address".
When, instead, I use "Use the following mail server",
"SMTP over TLS" it says "Please log in via your web browser and try again".But logging out then in again didn't work, it gives the same message.
Finally I tried connecting via unsecured SMTP to the gmail server, (without a password - for security) and unsurprisingly it says "Error logging into the mail server".
51
Alex Pankratov :
Jan 17, 2016
Google is pushing everyone to never type their google passwords into anything that is not explicitly owned by Google. As such, they label 3rd party mail clients that speak standard authenticated SMTP as "Less safe software" and disable their access to Gmail account by default:
https://support.google.com/accounts/answer/6010255
There are instructions on how to lift that restriction. Alternatively, you can set up a separate Gmail account for receiving emails via regular SMTP and then forwarding them to your primary account.
52
jginabreda :
May 09, 2017
I really need email multiple recipients feature. It's really basic need.
53
Alex Pankratov :
May 09, 2017
This has been supported for over a year now -
https://bvckup2.com/support/forum/topic/769/4221
That said, I disagree that it's a basic need. If a setup involves email alerts, then it would normally be possible to send alerts to a mail distribution list that clones and delivers the alert as needed.
54
Psychicactus :
Mar 18, 2020
How does Bvckup2 store the email password? What security? If a computer was hacked, could the hacker go into the software and pull out the login credentials from the email alert settings and therefore be able to log in to the email address?
55
Alex Pankratov :
Mar 18, 2020
It is stored obfuscated and you should assume that someone can reverse it back into plaintext if they are determined to do so.
56
Psychicactus :
Mar 21, 2020
Okay, thanks.
57
bu-287 :
Sep 16, 2020
I bought a personal license in 2017 and today I noticed that email notifications are only included in the "Pro" licenses. I am using Bvckup 2 (78.20) and have email notifications in use. The webinterface gives me an option to upgrade to a "Pro" license. Does it mean I will lose email notifications if I upgrade to a newer version?