<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Security Archives - SurgeMail</title>
	<atom:link href="https://surgemail.com/article-categories/security/feed/" rel="self" type="application/rss+xml" />
	<link>https://surgemail.com/article-categories/security/</link>
	<description>Windows/Linux Mail Server Software</description>
	<lastBuildDate>Sun, 22 Dec 2024 19:46:18 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.1</generator>

<image>
	<url>https://surgemail.com/wp-content/uploads/2019/11/cropped-robot_80-32x32.png</url>
	<title>Security Archives - SurgeMail</title>
	<link>https://surgemail.com/article-categories/security/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>SMTP Injection issue (crlf line termination)</title>
		<link>https://surgemail.com/knowledge-base/smtp-smuggling/</link>
		
		<dc:creator><![CDATA[chrisp]]></dc:creator>
		<pubDate>Sun, 14 Jan 2024 23:40:26 +0000</pubDate>
				<guid isPermaLink="false">https://surgemail.com/?post_type=ht_kb&#038;p=10283</guid>

					<description><![CDATA[<p>Case VU#302671: SMTP Smuggling This issue relates to "End of data sequence handling" or SMTP Injection. Traditionally SMTP servers have been 'flexible' with line termination, however, it was recently (2024) discovered that this leads to a possible injection exploit whereby users could possibly send messages with forged content/origin by exploiting the fact that some servers<br /><a class="moretag" href="https://surgemail.com/knowledge-base/smtp-smuggling/">+ Read More</a></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/smtp-smuggling/">SMTP Injection issue (crlf line termination)</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading">Case VU#302671: SMTP Smuggling </h2>



<p>This issue relates to "End of data sequence handling" or SMTP Injection.  </p>



<p>Traditionally SMTP servers have been 'flexible' with line termination, however, it was recently (2024) discovered that this leads to a possible injection exploit whereby users could possibly send messages with forged content/origin by exploiting the fact that some servers will see the end of message and others wont.  </p>



<p><strong>To fix this problem UPGRADE TO 7.8</strong></p>



<p>If a legacy client/fax system is sending LF characters, you need to whitelist them individually like this:</p>



<pre class="wp-block-code"><code><strong> g_lf_fix_list "1.2.3.4"</strong></code></pre>



<p>Legacy devices that rely on this behaviour should be exceedingly rare, and should normally be patched rather than relying on this exception setting.</p>



<p>This is a relatively low level security risk (so don't panic) but do upgrade at your earliest convenience.  </p>



<p>Other references:  CVE-2023-51764 postfix, CVE-2023-51765 sendmail, CVE-2023-51766 exim</p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/smtp-smuggling/">SMTP Injection issue (crlf line termination)</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MTA-STS support</title>
		<link>https://surgemail.com/knowledge-base/mta-sts-support/</link>
		
		<dc:creator><![CDATA[chrisp]]></dc:creator>
		<pubDate>Thu, 25 Mar 2021 22:15:30 +0000</pubDate>
				<guid isPermaLink="false">https://surgemail.com/?post_type=ht_kb&#038;p=3876</guid>

					<description><![CDATA[<p>(MTA-STS) is a mechanism enabling mail service providers (SPs) to declare their ability to receive Transport Layer Security (TLS) secure SMTP connections and to specify whether sending SMTP servers should refuse to deliver to MX hosts that do not offer TLS with a signed certificate. G_MTASTS "True" Enable MTA-STS ssl/tls rules. This uses DNS entries<br /><a class="moretag" href="https://surgemail.com/knowledge-base/mta-sts-support/">+ Read More</a></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/mta-sts-support/">MTA-STS support</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>(<strong>MTA</strong>-<strong>STS</strong>) is a mechanism enabling mail service providers (SPs) to declare their ability to receive Transport Layer Security (TLS) secure SMTP connections and to specify whether sending SMTP servers should refuse to deliver to MX hosts that do not offer TLS with a signed certificate.</p>



<p>G_MTASTS "True" </p>



<p>Enable MTA-STS ssl/tls rules. This uses DNS entries to discover if receiving server should have a signed SSL certificate" </p>



<p>G_MTASTS_WHITE "xyz.com,fred.com"</p>



<p>Domains to ignore MTA-STS rules, Whitelist for destination domains we should just send to anyway even if MTA-STS suggests otherwise.</p>



<p>G_MTASTS_REPORT "true" </p>



<p>Alert manager on MTASTS failures. Most failures will be due to something other than real hackers, so this alert helps you resolve issues, and add whitelist rules g_mtasts_white settings for problem domains</p>



<p>In addition you may wish to add your own MTA-STS file to your domain to enforce your own policy.  </p>



<p>The url you need to create should be:</p>



<pre class="wp-block-preformatted"><a href="https://mta-sts.user.example/.well-known/mta-sts.txt">https://mta-sts.YOUR.DOMAIN/.well-known/mta-sts.txt</a>" </pre>



<p>And in that file you should have something like:</p>



<pre class="wp-block-code"><code>version: STSv1
mode: enforce
mx: mail1.your.domain.com
mx: mail2.your.domain.com
max_age: 604800</code></pre>



<p>If mta-sts.your.domain points to your surgemail server!, then you could place this file in the folder:  (surgemail home)/www/.well-known</p>



<p>You must also add a dns 'txt' record for your domain:</p>



<p><code>_mta-sts.</code>your.domain.com  "v=STSv1; id=20240610T010101;"</p>



<p>If your policy changes you must update the id FIELD.</p>



<p></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/mta-sts-support/">MTA-STS support</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Twofactor Authentication 2fa</title>
		<link>https://surgemail.com/knowledge-base/twofactor-authentication/</link>
		
		<dc:creator><![CDATA[chrisp]]></dc:creator>
		<pubDate>Wed, 24 Mar 2021 20:51:04 +0000</pubDate>
				<guid isPermaLink="false">https://surgemail.com/?post_type=ht_kb&#038;p=3865</guid>

					<description><![CDATA[<p>To enable two factor authentication set &#160;g_pass_twofactor “true”&#160;then the users can enable two factor authentication in their user self admin interface: https://your.mail.server/cgi/user.cgi The user can then specify what level of two factor authentication they wish, as imap smtp and pop were never intended to use this type of authentication it only works really well for<br /><a class="moretag" href="https://surgemail.com/knowledge-base/twofactor-authentication/">+ Read More</a></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/twofactor-authentication/">Twofactor Authentication 2fa</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>To enable two factor authentication set &nbsp;g_pass_twofactor “true”&nbsp;then the users can enable two factor authentication in their user self admin interface:</p>



<p>https://your.mail.server/cgi/user.cgi</p>



<p>The user can then specify what level of two factor authentication they wish, as imap smtp and pop were never intended to use this type of authentication it only works really well for surgeweb logins.  But it can still add a layer of security for the others as well. </p>



<p>The user.cgi page allows users to also create or delete application passwords for legacy applications (normal desktop email clients).  </p>



<p>Alternatively the setting g_pass_twofactor_merged "true", can be used, then the user logs into legacy applications with their regular password+twofactorcode. So lets say your password is 'secret' and your 2fa app was showing code '1232", you would enter "secret+1232" as your password, it would then work as normal for a few hours, and then it would require the password to be entered again.</p>



<p>Lets be blunt, legacy applications (all normal email clients) are not designed to be used with two factor authentication, so it's a question of 'which cludge do you wish to use'.  Both are much more secure than not having 2 factor authentication, but not nearly as secure as true 2fa.  And both add a level of inconvenience. </p>



<p></p>



<p></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/twofactor-authentication/">Twofactor Authentication 2fa</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Manual SSL Certificates</title>
		<link>https://surgemail.com/knowledge-base/manual-ssl-certificates/</link>
		
		<dc:creator><![CDATA[chrisp]]></dc:creator>
		<pubDate>Tue, 21 Jan 2020 19:25:22 +0000</pubDate>
				<guid isPermaLink="false">https://surgemail.com/?post_type=ht_kb&#038;p=1366</guid>

					<description><![CDATA[<p>We strongly recommend you use LetsEncrypt instead of manual certificates How to get a signed certificate (STOP, GO TO THE LetsEncrypt page instead of doing this!) Open the SSL Configure page in the Web Admin interface. Click on 'Create CSR', if you have never done this before, and give the details of your server. Click<br /><a class="moretag" href="https://surgemail.com/knowledge-base/manual-ssl-certificates/">+ Read More</a></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/manual-ssl-certificates/">Manual SSL Certificates</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p><a href="https://surgemail.com/knowledge-base/enable-ssl/"><strong>We strongly recommend you use LetsEncrypt instead of manual certificates</strong></a></p>



<h3 class="wp-block-heading">How to get a signed certificate</h3>



<ul class="wp-block-list"><li>(STOP, GO TO THE LetsEncrypt page instead of doing this!)</li><li>Open the SSL Configure page in the Web Admin interface.</li><li>Click on 'Create CSR', if you have never done this before, and give the details of your server.</li><li>Click on 'Show CSR' and copy the code.</li><li>Go to your favorite certificate registry and request a signed certificate or use LetsEncrypt (see notes below), The registry service will want this CSR .</li><li>They will then give you a signed certificate and intermediate certificates, ask for 'Apache' or 'Other' format.</li><li>Upload the two files using the buttons on the web interface</li></ul>



<h3 class="wp-block-heading">Warning:</h3>



<p>If your certificate doesn't match the current private key, or is miss formatted etc, then you may loose connection to this page when you press 'save changes', instead use the non ssl admin port: http://your.server:7026, examine mail.err for&nbsp; the cause, remove ssl/surge_cert.pem and restart surgemail to recreate a working unsigned certificate!<br></p>



<h3 class="wp-block-heading">Manual Installation of Certificates - And debugging bad certificates....</h3>



<p>You can install your certificate manually by replacing the file ssl/surge_cert.pem it should contain start with your certificate, and then it should have your intermediate chain certificates appended to the end of it.<br></p>



<p><strong>If your certificate was created from a different private key </strong>then also replace ssl/surge_priv.pem.  If your certificate is faulty in any way ssl will not work, in that case examine mail.err to find the cause, and remove surge_cert.pem and restart surgemail to recreate an unsigned but working certificate.</p>



<p>If you are using g_ssl_perdomain "true" then place certifictes in ssl/mail.domain.name folders</p>



<p>Generally for an ssl certificate you should make sure you have url_host defined for each domain, e.g. for xyz.com url_host should be "mail.xyz.com"</p>



<p>If you are using a wild card ssl certificate and want it to match correctly with any sub domain used, then use the new setting ssl_wildcard "*.xyz.com" so it will match correctly.</p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/manual-ssl-certificates/">Manual SSL Certificates</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>SurgeVault encryption sending to other systems. HIPAA compliant.</title>
		<link>https://surgemail.com/knowledge-base/surgevault-encryption-sending-to-other-systems-hipaa-compliant/</link>
		
		<dc:creator><![CDATA[chrisp]]></dc:creator>
		<pubDate>Mon, 11 Nov 2019 02:31:20 +0000</pubDate>
				<guid isPermaLink="false">https://surgemail.com/?post_type=ht_kb&#038;p=1019</guid>

					<description><![CDATA[<p>SurgeVault is an optional feature in SurgeMail that allows users to add a layer of encryption to standard email messages they send when desirable, it can be used with regular email clients or with the SurgeWeb 'webmail' interface. The SurgeVault feature allows you to define some rules (per domain) that specify when a message should<br /><a class="moretag" href="https://surgemail.com/knowledge-base/surgevault-encryption-sending-to-other-systems-hipaa-compliant/">+ Read More</a></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/surgevault-encryption-sending-to-other-systems-hipaa-compliant/">SurgeVault encryption sending to other systems. HIPAA compliant.</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>SurgeVault is an optional feature in SurgeMail that allows users to add a layer of encryption to standard email messages they send when desirable, it can be used with regular email clients or with the SurgeWeb 'webmail' interface.</p>



<p>The SurgeVault feature allows you to define some rules (per domain) that specify when a message should be encrypted (based on subject, or content or destination etc) and then instead of sending the raw naked message the destination user is either sent an encrypted message, or a link to an encrypted message. In either case the destination user is required to login and set a password to read that and future messages. Then they are either shown the message, or given a key to decrypt the message they were sent.</p>



<h3 class="wp-block-heading">How to configure/turn on SurgeVault encryption:</h3>



<ol class="wp-block-list"><li>Upgrade to SurgeMail 4.2b-11 or later</li><li>Set the global setting&nbsp;<strong>G_ENCRYPT_SURGEWEB_SHOW "true"</strong>&nbsp;if you want the encryption icon at the top of surgeweb compose new email page to appear.</li><li>Set a domain level rule in surgemail.ini for each domain you want to be able to send encrypted messages (without this you can only send encryption from surgeweb)<strong><br>encrypt_rule header="subject" contains="encrypt:" method="server"</strong></li><li>Send an email to someone from the domain in question, with "encrypt:" in the subject.</li><li>Or, in surgeweb send an email to someone and click on the encrypt icon before sending it.</li><li>If you wish to use the feature regularly you will need a new Key to enable this feature (sorry this is a paid add on feature), otherwise it is limited to '2' messages per day!</li></ol>



<h3 class="wp-block-heading">Inline based encryption</h3>



<p>In this mode the message is encrypted, then sent to the destination user as an html attachment which contains javascript to 'decrypt' the message, to obtain the 'key' to decrypt the message the user must login to the sending server and request it. The first time they do this they must set a password. This means the security of 'subsequent' messages is enhanced as the password cannot be 'reset' by the receiving customer. (this applies to the server based method too)</p>



<h3 class="wp-block-heading">Server based encryption</h3>



<p>In this mode the destination user is sent a link containing a key that is needed to decode the message which is kept on the sending server. This is equally secure.</p>



<h3 class="wp-block-heading">Secure Reply</h3>



<p>In either case a secure reply can be sent once the user has logged in to fetch the key or decrypt the message.</p>



<h3 class="wp-block-heading">Encoding used</h3>



<p>AES 256 CBC mode with MD5 hash.</p>



<h3 class="wp-block-heading">How secure is it - what does it protect and what doesn't it protect you from...</h3>



<p>After the first email exchange and the password for a user has been set, then the encryption will prevent someone spying on the message in the 'middle' between your sending sever and the receiving user. It does not prevent the administrator of your server from spying on the message as they can certainly circumvent this mechanism (with some difficulty).</p>



<p>However it provides you with a way of being sure that no one outside your server see's the message other than the intended recipient and it also gives you an audit trail to know that the receiving user did (or didn't) view the message. You can further enhance security by using https and ssl to send the message so that no one other than the administrator on your network can spy on the message before it gets to your server.</p>



<p>This mechanism is suitable and possibly a legal requirement for some forms of email, for example when a doctor sends an email to a patient that includes test results it would be an appropriate way of doing it. Or any time someone is sending personal private information via email and must provide some assurance that the message cannot be intercepted trivially!</p>



<h3 class="wp-block-heading">Relevant Settings</h3>



<table class="wp-block-table"><tbody><tr><td>Setting</td><td>Description</td></tr><tr><td>G_ENCRYPT_EXPIRE "30"</td><td>Days to keep encrypted messages before deleting</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>Domain based settings</td></tr><tr><td>encrypt_rule header="subject" contains="secret" method="server"</td><td>Specify rule for encrypting messages</td></tr><tr><td>encrypt_subject</td><td>Private message</td></tr></tbody></table>



<p><br>Full encrypt_rule settings are:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>encrypt_rule header=string contains=string from=string to=string method=string</p></blockquote>



<h3 class="wp-block-heading">SurgeWeb integration</h3>



<p>In addition to encrypt_rule rule based triggering, the sending of encrypted email is integrated into the surgeweb compose pane.</p>



<pre class="wp-block-preformatted">g_encrypt_surgeweb_show true 
</pre>



<p>Also note that there is a setting on the surgeweb customisation page that disables the SurgeVault interface in surgeweb.</p>



<pre class="wp-block-preformatted">encrypt_hide true
</pre>



<h3 class="wp-block-heading">Warning replying to messages:</h3>



<p>If you use a rule like this:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>encrypt_rule header="subject" contains="encrypt:" from="" to="" noconfirm="" method="server"<br></p></blockquote>



<p>And you send someone an email, lets say for some reason they cannot read it and send you a reply then you reply to their email the 'encrypt' rule will still match and the message will be encrypted again... So just be aware of that! <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Obviously this is normally exactly what you want so all your emails to them on this subject remain encrypted.</p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/surgevault-encryption-sending-to-other-systems-hipaa-compliant/">SurgeVault encryption sending to other systems. HIPAA compliant.</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Atrest encryption</title>
		<link>https://surgemail.com/knowledge-base/atrest-encryption/</link>
		
		<dc:creator><![CDATA[chrisp]]></dc:creator>
		<pubDate>Mon, 11 Nov 2019 02:28:45 +0000</pubDate>
				<guid isPermaLink="false">https://surgemail.com/?post_type=ht_kb&#038;p=1017</guid>

					<description><![CDATA[<p>The AtRest encryption feature allows individual users to encrypt their mail messages when they are stored 'at rest' on the mail system.&#160; All messages in all folders are encrypted using a public encryption key, and decryption can only occur when the system has your actual password so it can use the private decryption key.&#160; The<br /><a class="moretag" href="https://surgemail.com/knowledge-base/atrest-encryption/">+ Read More</a></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/atrest-encryption/">Atrest encryption</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>The AtRest encryption feature allows individual users to encrypt their mail messages when they are stored 'at rest' on the mail system.&nbsp; All messages in all folders are encrypted using a public encryption key, and decryption can only occur when the system has your actual password so it can use the private decryption key.&nbsp; The password is never stored on disk so neither the administrator or Netwin or any external agency can decode the messages without having your password.</p>



<p>To enable AtRest encryption first the administrator must enable the feature<br></p>



<pre class="wp-block-preformatted">&nbsp;<strong>&nbsp;&nbsp; g_atrest_enable "true"</strong></pre>



<p><strong>BEFORE YOU DO THIS, BACKUP YOUR EXISTING MAIL!!!</strong> If something goes wrong with encryption it is irreversible. </p>



<p><strong>Read the warning at the bottom of this page!</strong></p>



<p>Then the user must login via http://your.server/cgi/user.cgi and click on 'At Rest' on the left hand panel and enable encryption, at this time the user must provide their current password to ensure they really do know it!<br></p>



<p>As of version 7.3p we have added a new feature whereby the administrator can SET a global decryption password. This allows your files to be restored if you forget your password. The administrator MUST NOT forget this password, it cannot be changed, or reset!</p>



<p><br>To configure the admin recovery password, <strong>this cannot be changed later,</strong> if it is changed, it will not work for any existing encrypted messages!<br>&nbsp;&nbsp;&nbsp;&nbsp;<strong>tellmail atrest_admin YourSecretPassword&nbsp;&nbsp;&nbsp;</strong><br></p>



<p>After setting that password you can make users data automatically encrypt next time they login, this will impact performance initially.</p>



<pre class="wp-block-preformatted">&nbsp;&nbsp;&nbsp; g_atrest_all "true"</pre>



<p>Again, this feature is dangerous!<br></p>



<pre class="wp-block-preformatted">To decrypt a users mail folders (e.g. if they forget their own password)
<strong>&nbsp;&nbsp;&nbsp; tellmail atrest_admin_decrypt user@xyz.com YourSecretPassword
</strong>To change a users password use this command:
tellmail atrest_set_user_pass test1@book.netwin.co.nz Mytes3 secret</pre>



<pre class="wp-block-preformatted"></pre>



<p></p>



<p><strong><br>NOTE: Upgrade to at least version 7.4 or later before turning on!</strong></p>



<h2 class="wp-block-heading">Advantages of At Rest encryption</h2>



<ul class="wp-block-list">
<li>If a hacker gains access to the mail file system they will not be able to see any of your email messages.</li>



<li>If an administrator wants to look at your email messages they will not be able to.</li>



<li>If an outside agency gains physical access by legal or illegal means to the mail server they will still not be able to decode and see your email messages.</li>



<li>Files are encrypted using industry standard AES 256bit CBC. <br></li>
</ul>



<h2 class="wp-block-heading">Disadvantages of at rest encryption.<br></h2>



<ul class="wp-block-list">
<li>If you forget your password, and you also loose the recovery code that you are given when you first encrypt your messages, then ALL your email messages will be lost forever, there is no other recovery mechanism, the administrator CANNOT reset your password and get you access to the files again. (See notes above regarding the new administrator decrypt command, which is now supported.&nbsp; If you want a higher level of security then disable this feature with the setting: g_atrest_crazy "true")<br></li>



<li>There is a mild performance hit as the data must be decrypted and surgeweb has to do less 'caching'.</li>



<li>Saved login sessions on surgeweb will not persist as long as login credentials cannot be saved to disk.</li>



<li>If you change a users password in the backend user database manually, then they will be able to login, but all their email will be invisible as the decryption will not work!&nbsp; To resolve first decrypt using the atrest_admin_decrypt command noted above.<br></li>
</ul>



<h2 class="wp-block-heading">Limitations, what it cannot protect you from<br></h2>



<ul class="wp-block-list">
<li>If your password can be guessed with a dictionary attack or brute force guessing millions of passwords, then your messages could be decoded, be sure to set a complex password that is not based on simple words etc...<br></li>



<li>In some situations the server will write temporary files containing unencrypted mail messages before displaying them via imap or surgeweb, in theory an administrator could at this time spy on those files.&nbsp; But only the messages you were actively reading! And it would not be easy.<br></li>



<li>The administrator can enable features to keep copies of all email messages even when this feature is turned on, nothing can prevent this as the administrator controls the server.&nbsp; The normal archiving feature is automatically disabled though so this will not occur by accident.</li>



<li>So it's critical to 'stop' accessing your mail server if the administrator is compromised legally or otherwise.</li>



<li>Your email client may have your password stored, anyone who gets access to your email client/stored password can then crack your account instantly, so if security is important to you don't allow your email client to remember your password.<br></li>
</ul>



<h2 class="wp-block-heading">Recovery Code</h2>



<p>At the time the user enables encryption they are given a recovery code, this is also emailed to the user.&nbsp; The user should print and save this code, if the users normal password is lost or forgotten then it's the only mechanism by which they can reset their password without loosing all their messages. This does not apply if g_atrest_all is enabled.&nbsp; If g_atrest_crazy is not defined, then the admin recover password can be used<br></p>



<h2 class="wp-block-heading">Warning</h2>



<p>It cannot be emphasized enough, there are risks with this feature.  Users WILL forget their passwords and loose their recovery codes.  Even with the admin feature if you forget the admin password it cannot ever be reset or fixed!!!! Please don't enable this unless you truly understand how dangerous it is.  <strong>There is almost no good reason for using this feature <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Unless you are actually a professional spy! <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /> </strong></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/atrest-encryption/">Atrest encryption</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>DKIM / DomainKeys DMARC</title>
		<link>https://surgemail.com/knowledge-base/dkim-domainkeys/</link>
		
		<dc:creator><![CDATA[chrisp]]></dc:creator>
		<pubDate>Wed, 06 Nov 2019 22:26:15 +0000</pubDate>
				<guid isPermaLink="false">http://surgemail.com/?post_type=ht_kb&#038;p=823</guid>

					<description><![CDATA[<p>How to turn it on Set g_dkim_sign "true" On the web admin interface search for "Create DKIM" then click on the Configure link. Add the DNS setting it suggests for your domains(s). Also add the suggested DMARC settings, (this requires a recent version of surgemail) See https://surgemail.com/knowledge-base/sending-email-to-avoid-spam-filters-best-practices/ How it works: DomainKeys is a cryptographic method<br /><a class="moretag" href="https://surgemail.com/knowledge-base/dkim-domainkeys/">+ Read More</a></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/dkim-domainkeys/">DKIM / DomainKeys DMARC</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h3 class="wp-block-heading">How to turn it on</h3>



<p>Set g_dkim_sign "true"</p>



<p>On the web admin interface search for "Create DKIM" then click on the <strong>Configure link.</strong></p>



<p>Add the DNS setting it suggests for your domains(s).</p>



<p>Also add the suggested DMARC settings, (this requires a recent version of surgemail)</p>



<p>See <a href="https://surgemail.com/knowledge-base/sending-email-to-avoid-spam-filters-best-practices/">https://surgemail.com/knowledge-base/sending-email-to-avoid-spam-filters-best-practices/</a></p>



<h3 class="wp-block-heading">How it works:</h3>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>DomainKeys is a cryptographic method that allows a receiving server/client to verify that the From/Sender header was accurate and not forged.</p>



<p>It does this by looking up the senders _domainkey.domain.name dns record to get the public key which it uses to check the signature in the message headers is correct.</p>



<p>SurgeMail makes use of this information to avoid grey bouncing a message when no SPF information exists. And may in future score signed messages differently.</p>



<p>SurgeMail can also 'sign' outgoing email, this helps your email get delivered to servers that use this information to further verify a message. And this makes it harder for spammers to forge your domain successfully.</p>



<p>There is a button in surgemail to generate your private/public keys. This creates the file domainkey.pem, if you have several servers sending email for your domain you will need to copy this file to each server.</p>



<p>As well as entering your public key into your dns you will define your policy in the txt dns record default._domainkey.your.domain and _domainkey.your.domain, this policy defines if you are testing or not, and if you sign all or some of the messages from your domain. A receiving system 'should' use this information to determine what action is valid if a signature does not exist or fails to verify.</p>
</blockquote>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/dkim-domainkeys/">DKIM / DomainKeys DMARC</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Enable SSL (LetsEncrypt)</title>
		<link>https://surgemail.com/knowledge-base/enable-ssl/</link>
		
		<dc:creator><![CDATA[chrisp]]></dc:creator>
		<pubDate>Wed, 06 Nov 2019 22:05:32 +0000</pubDate>
				<guid isPermaLink="false">http://surgemail.com/?post_type=ht_kb&#038;p=816</guid>

					<description><![CDATA[<p>Add or check these settings. The config checker will do this for you. g_ssl_per_domain "true" g_ssl_auto "true" g_webmail_port "80,7080" Then issue the command: tellmail ssl_update (or use tellmail ssl_update_test to check your settings first, too many failures will cause a lockout for a day) That's it. NOTE: It's essential that you are running SurgeMail on<br /><a class="moretag" href="https://surgemail.com/knowledge-base/enable-ssl/">+ Read More</a></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/enable-ssl/">Enable SSL (LetsEncrypt)</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Add or check these settings. The config checker will do this for you.</p>



<pre class="wp-block-preformatted"><strong>g_ssl_per_domain "true"
g_ssl_auto "true"</strong>
<strong>g_webmail_port "80,7080"</strong> </pre>



<p>Then issue the command:</p>



<p><strong>tellmail ssl_update</strong> </p>



<p>(or use <strong>tellmail ssl_update_test</strong> to check your settings first, too many failures will cause a lockout for a day)</p>



<p>That's it. </p>



<p><strong>NOTE: It's essential that you are running SurgeMail on port 80 and NOT some other web server! </strong>(or use the notes below about IIS/APACHE)</p>



<hr class="wp-block-separator has-css-opacity"/>



<p>But also check your other ssl settings are enabled:</p>



<pre class="wp-block-preformatted">g_ssl_allow "*" 
g_ssl_try_out "*" 
g_ssl_perfect "true"  
# You may also want to disable older ssl protocols, e.g.
g_ssl_disable "tlsv1,tlsv1_1,sslv2,sslv3"</pre>



<h2 class="wp-block-heading">Requirements for Lets Encrypt.</h2>



<ul class="wp-block-list">
<li>SurgeMail version 7.3j2 or later</li>



<li>Your server must be accessable on port 80 directly  to surgemail (not apache or IIS)</li>



<li>Each domains url_host setting must point at your server.  e.g.<strong> url_host "mail.fred.com"</strong></li>



<li>Ensure each domains 'url_host' setting is the name you want to use to refer to that domains server, typically mail.domain.name, e.g. for 'fred.com' you would usually use 'mail.fred.com', this dns entry must exist!  </li>



<li>Add aliases you want to also work in each domain with the ssl_alias setting, e.g.<strong> ssl_alias "webmail.fred.com"</strong></li>
</ul>



<h2 class="wp-block-heading">Forcing SSL connections</h2>



<p>If you wish to force the use of SSL use the following settings:</p>



<pre class="wp-block-preformatted"># Block imap/pop/smtp logins without SSL enabled for all ip addresses.
g_ssl_require_login "*"</pre>



<pre class="wp-block-preformatted"># Redirect users to the https url automatically.
g_url_redirect from=”http://*/surgeweb” to=”https://%1/surgeweb” ports=”80″
g_url_redirect from=”http://*/user.cgi” to=”https://%1/user.cgi” ports=”80″</pre>



<h2 class="wp-block-heading">Exclude some domains</h2>



<p>Use this setting:</p>



<p>g_ssl_lets_exclude "xyz.com"</p>



<p>To exclude one or more domains, then copy their certificates into the ssl folders.</p>



<p>copy surgemail\ssl\xyz.com\*.pem surgemail\lets\xyz.com</p>



<p></p>



<h2 class="wp-block-heading">Windows IIS  on the same system.</h2>



<p>If you have IIS or Apache running on the same mail server, and it's assigned port 80 then you need to define this setting so surgemail knows where to put the challenge file:</p>



<p>Remove port 80 from g_webmail_port, restart surgemail and IIS.</p>



<p>Set in surgemail:  g_ssl_lets_path "c:\surgemail\wellknown"</p>



<p>And in IIS create a virtual path ".well-known" and map it to c:\surgemail\wellknown</p>



<p>Then on IIS add a file extension of type "." with mime type text/xml </p>



<ol class="wp-block-list">
<li>Open IIS Manager and right click on the website, select “<strong>Add Virtual Directory…</strong>“</li>



<li>For the Alias Entry field, enter&nbsp;<strong>.well-known</strong>&nbsp;and for the Physical Path field enter the location of the new well-known folder you created.</li>



<li>Press&nbsp;<strong>OK</strong>&nbsp;to save the input and make the file accessible on the website.</li>



<li>Test it by placing a file in c:\surgemail\wellknown\test and check you can view it via http://your.web.server/well-known/test Now test tellmail ssl_update and it should work</li>
</ol>



<h2 class="wp-block-heading">Linux/Apache  on same system</h2>



<p>If you are running apache on port 80 then you can do this, correct the path to be whatever you have used for apache's web path...</p>



<p>(In surgemail.ini add)</p>



<p> &nbsp;G_SSL_LETS_PATH "/var/www/html/.well-known"</p>



<p>(Then)</p>



<p> &nbsp; mkdir /var/www/html/.well-known/acme-challenge<br>&nbsp;&nbsp; chown mail /var/www/html/.well-known/acme-challenge</p>



<h2 class="wp-block-heading">Using reverse proxy insetad with apache (alternative)</h2>



<p>If you have Surgemail on port 7080 (g_webmail_port = "7080") and then put the following in default virtual server configuration (using the actual server and domain name):<br>ProxyPass /.well-known http://servername.mydomain.com:7080/.well-known<br>ProxyPassReverse /.well-known http://servername.mydomain.com:7080/.well-known</p>



<p>Then "tellmail ssl_update" should work just as if surgemail was on port 80...</p>



<p></p>



<h2 class="wp-block-heading">Manual SSL certificates</h2>



<p> Alternatively you may wish to<strong> <a href="https://surgemail.com/knowledge-base/manual-ssl-certificates/">configure ssl certificates Manually </a></strong><a href="https://surgemail.com/knowledge-base/manual-ssl-certificates/">if so click here.</a> </p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/enable-ssl/">Enable SSL (LetsEncrypt)</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Global settings g_ssl</title>
		<link>https://surgemail.com/knowledge-base/global-settings-g_ssl/</link>
		
		<dc:creator><![CDATA[chrisp]]></dc:creator>
		<pubDate>Wed, 06 Nov 2019 00:31:03 +0000</pubDate>
				<guid isPermaLink="false">http://surgemail.com/?post_type=ht_kb&#038;p=753</guid>

					<description><![CDATA[<p>g_ssl_allow - IP Wild card of connections to allow to use SSL This setting controls which connecting IP numbers are permitted to use SSL on POP and IMAP. They will see TLS in the protocol extension command (ETRN for SMTPor CAPA for POP). Typically, to enable SSL you set this to "*" after getting a<br /><a class="moretag" href="https://surgemail.com/knowledge-base/global-settings-g_ssl/">+ Read More</a></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/global-settings-g_ssl/">Global settings g_ssl</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h3 class="wp-block-heading">g_ssl_allow - IP Wild card of connections to allow to use SSL</h3>



<p>This setting controls which connecting IP numbers are permitted to use SSL on POP and IMAP. They will see TLS in the protocol extension command (ETRN for SMTPor CAPA for POP). Typically, to enable SSL you set this to "*" after getting a certificate. If you don't have a valid certificate then turning this on can cause problems as mail clients will try to use SSL and fail.&nbsp;</p>



<p>Syntax: g_ssl_allow string</p>



<h3 class="wp-block-heading">g_ssl_allow_fix - Disable incoming ssl on ssl failure from an ip</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_allow_fix bool</p>



<h3 class="wp-block-heading">g_ssl_allow_imap - IP Wild card list to allow SSL encryption from for imap</h3>



<p>This setting controls which connecting IP numbers are permitted to use SSL on IMAP.</p>



<p>Syntax: g_ssl_allow_imap string</p>



<h3 class="wp-block-heading">g_ssl_auto - Generate letsencrpt ssl certificates automatically for all domains</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_auto bool</p>



<h3 class="wp-block-heading">g_ssl_ciphers - List permitted ciphers</h3>



<p>This can be used to enhance security, not recommended but is useful if you are trying to pass a security audit of some kind. A value of MEDIUM:HIGH is probably what you want to set it to. It is case sensitive. If your list exceeds 800 bytes use g_ssl_ciphers_add for the second half</p>



<p>Syntax: g_ssl_ciphers string</p>



<h3 class="wp-block-heading">g_ssl_ciphers_add - More permitted ciphers (added to g_ssl_ciphers)</h3>



<p>This can be used to enhance security, not recommended but is useful if you are trying to pass a security audit of some kind. A value of MEDIUM:HIGH is probably what you want to set it to. It is case sensitive.</p>



<p>Syntax: g_ssl_ciphers_add string</p>



<h3 class="wp-block-heading">g_ssl_ciphers_web - List permitted ciphers for web</h3>



<p>This list is for web connections only, restart surgemail after changing</p>



<p>Syntax: g_ssl_ciphers_web string</p>



<h3 class="wp-block-heading">g_ssl_disable - Disable protocols tlsv1,tlsv1_1,tlsv1_2,sslv2,sslv3</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_disable string</p>



<h3 class="wp-block-heading">g_ssl_disable_des - Disable DES ciphers, breaks outlook on XP</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_disable_des bool</p>



<h3 class="wp-block-heading">g_ssl_disable_port25 - Prevent ssl on port 25</h3>



<p>May help virus fire walls to detect viruses, that's the theory anyway...</p>



<p>Syntax: g_ssl_disable_port25 bool</p>



<h3 class="wp-block-heading">g_ssl_disable_sslv2 - Obsolte, Disable ssl 2.0 support for enhanced security</h3>



<p>Disables one of the older ssl protocols which slightly increases security and decreases compatibility with older clients. Use g_ssl_disable and g_ssl_disable_web instead</p>



<p>Syntax: g_ssl_disable_sslv2 bool</p>



<h3 class="wp-block-heading">g_ssl_disable_sslv3 - Obsolte, Disable ssl 3.0 support for enhanced security</h3>



<p>Disables one of the ssl protocols which slightly increases security. Use g_ssl_disable and g_ssl_disable_web instead</p>



<p>Syntax: g_ssl_disable_sslv3 bool</p>



<h3 class="wp-block-heading">g_ssl_disable_tlsv1 - Obsolte, Disable tls 1.0, not recommended</h3>



<p>Use g_ssl_disable and g_ssl_disable_web instead</p>



<p>Syntax: g_ssl_disable_tlsv1 bool</p>



<h3 class="wp-block-heading">g_ssl_disable_tlsv1_1 - Obsolte, Disable tls 1.1 support, not recommended</h3>



<p>Use g_ssl_disable and g_ssl_disable_web instead</p>



<p>Syntax: g_ssl_disable_tlsv1_1 bool</p>



<h3 class="wp-block-heading">g_ssl_disable_tlsv1_2 - Obsolte, Disable tls 1.2 support, not recommended</h3>



<p>Use g_ssl_disable and g_ssl_disable_web instead</p>



<p>Syntax: g_ssl_disable_tlsv1_2 bool</p>



<h3 class="wp-block-heading">g_ssl_disable_web - Disable protocols for web only</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_disable_web string</p>



<h3 class="wp-block-heading">g_ssl_dmalloc - Enable dmalloc tracking in ssl</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_dmalloc bool</p>



<h3 class="wp-block-heading">g_ssl_fips - Enable FIPS mode crash if not available (DO NOT USE)</h3>



<p>For future use</p>



<p>Syntax: g_ssl_fips bool</p>



<h3 class="wp-block-heading">g_ssl_honor - Honor server cipher order</h3>



<p>Maybe useful to force certain types of security/encryption</p>



<p>Syntax: g_ssl_honor bool</p>



<h3 class="wp-block-heading">g_ssl_lets_exclude - Domains urls to not update, user must copy from ssl to lets folder</h3>



<p>The certifictes must be coppied from the ssl to the lets folder manually!</p>



<p>Syntax: g_ssl_lets_exclude string</p>



<h3 class="wp-block-heading">g_ssl_lets_path - Path to webservers /.well-known folder for letsencrypt</h3>



<p>Use this if you have a webserver that is running on port 80 but you still wish to generate ssl certificates automatically. Folder must be writeable by user 'mail' on linux</p>



<p>Syntax: g_ssl_lets_path string</p>



<h3 class="wp-block-heading">g_ssl_per_domain - Create/use an SSL certificate for each domain</h3>



<p>SurgeMail can be set to use a single SSL certificate for the server or individual certificates on a per domain basis.<br></p>



<p>SurgeMail will create private key / certificate pairs if required on startup. Alternatively these can be created using the 'SSL Config' link on the global settings page. These can be replaced with your own trusted signed certificates using the web admin interface or by placing the appropriate private key and certificate pem files in the following location: &lt;surgemail&gt;/ssl for a single certificate for the whole server and under &lt;surgemail&gt;/ssl/&lt;vdomain&gt; for per vdomain certificates.</p>



<p>Some mail clients and web browsers will complain if the certificate domain does not match the domain they are connecting to.</p>



<p>Changing g_ssl_per_domain will require surgemail to be restarted to take affect. Changes to certificates using the web admin interface now take affect immediately.</p>



<p>Syntax: g_ssl_per_domain bool</p>



<h3 class="wp-block-heading">g_ssl_perfect - Apply good SSL settings, best to remove g_ssl_ciphers setting too</h3>



<p>Just an easy way of setting the ciphers etc for perfect forward secrecy</p>



<p>Syntax: g_ssl_perfect bool</p>



<h3 class="wp-block-heading">g_ssl_require - IP Wild card of connections to require to use SSL</h3>



<p>This forces all matching IP addresses to use SSL for SMTP, POP and IMAP connections. Typically you would use this for non local connections to increase security local connections might be comparatively safe in un-encrypted mode.&nbsp;</p>



<p>Syntax: g_ssl_require string</p>



<h3 class="wp-block-heading">g_ssl_require_imap - IP Wild card of connections to require to use SSL for IMAP</h3>



<p>This forces all matching IP addresses to use SSL for IMAP connections.</p>



<p>Syntax: g_ssl_require_imap string</p>



<h3 class="wp-block-heading">g_ssl_require_in - Local domains that must only receive SSL messages</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_require_in string</p>



<h3 class="wp-block-heading">g_ssl_require_login - IP wildcard of connections fur users needing to use SSL</h3>



<p>This setting forces all matching IP addresses to use SSL for any action that requires a user login. eg: POP, IMAP and SMTP authentication but not plain SMTP. So this is ideal if you want all users to use SSL but still want email to come in from non SSL SMTP servers.<br></p>



<p>Syntax: g_ssl_require_login string</p>



<h3 class="wp-block-heading">g_ssl_require_out - Other machines we only send to using SSL</h3>



<p>This forces all matching IP addresses to use SSL for SMTP outgoing connections. Typically you would use this for outgoing connections to increase security.&nbsp;</p>



<p>Syntax: g_ssl_require_out string</p>



<h3 class="wp-block-heading">g_ssl_require_web - Require https for most web features (excluding blogs file sharing and surgeplus)</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_require_web bool</p>



<h3 class="wp-block-heading">g_ssl_retry_seconds - Second to try and establish ssl connection, default is 5</h3>



<p>Best not to change generally</p>



<p>Syntax: g_ssl_retry_seconds int</p>



<h3 class="wp-block-heading">g_ssl_sha1_sign - Obsolete, sha256 is now always used</h3>



<p>This will probably be made the default in the near future</p>



<p>Syntax: g_ssl_sha1_sign bool</p>



<h3 class="wp-block-heading">g_ssl_test_fail - Break ssl to test auto downgrade</h3>



<p>Break ssl for outgoing sends</p>



<p>Syntax: g_ssl_test_fail bool</p>



<h3 class="wp-block-heading">g_ssl_throttle_renegotiation - Slow renegotiation to prevent simple dos attack.</h3>



<p>GEnerally this shouldn't be used unless you have to keep some paranoid security scan happy</p>



<p>Syntax: g_ssl_throttle_renegotiation bool</p>



<h3 class="wp-block-heading">g_ssl_try_from - Try and start ssl mode if from this user, e.g. *@xyz.com</h3>



<p>Must also match the g_ssl_try_out rule, this lets you only do ssl when the email is 'from' certain domains/users</p>



<p>Syntax: g_ssl_try_from string</p>



<h3 class="wp-block-heading">g_ssl_try_not - Skip ssl for these hosts</h3>



<p>If the hosts match then SurgeMail Does not try ssl even if g_ssl_try_out matches.</p>



<p>Syntax: g_ssl_try_not string</p>



<h3 class="wp-block-heading">g_ssl_try_out - Try and start ssl mode to these hosts</h3>



<p>If the hosts match then SurgeMail tries to start SSL security on the SMTP session. Note that this may cause failures if the link is dropped by the receiving server.</p>



<p>Syntax: g_ssl_try_out string</p>



<h3 class="wp-block-heading">g_ssl_warn - Send users weekly reminder if they keep using non SSL logins</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_warn bool</p>



<h3 class="wp-block-heading">g_ssl_warn_ignore - Don't give warnings if user is from this trusted host</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_warn_ignore string</p>



<h3 class="wp-block-heading">g_ssl_warn_text - Last line of email warning sent to user if SSL not used</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_ssl_warn_text string</p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/global-settings-g_ssl/">Global settings g_ssl</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Global settings g_hack</title>
		<link>https://surgemail.com/knowledge-base/global-settings-g_hack/</link>
		
		<dc:creator><![CDATA[chrisp]]></dc:creator>
		<pubDate>Wed, 06 Nov 2019 00:15:17 +0000</pubDate>
				<guid isPermaLink="false">http://surgemail.com/?post_type=ht_kb&#038;p=718</guid>

					<description><![CDATA[<p>g_hack_detect_disable - Stop admin emails when users login with a weak password Useful if you must have weak passwords for some reason Syntax: g_hack_detect_disable bool g_hack_msg - Message to send to users with a weak password Message to send to users with a weak password Syntax: g_hack_msg string g_hack_noemail - Disable weak password reports This<br /><a class="moretag" href="https://surgemail.com/knowledge-base/global-settings-g_hack/">+ Read More</a></p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/global-settings-g_hack/">Global settings g_hack</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h3 class="wp-block-heading">g_hack_detect_disable - Stop admin emails when users login with a weak password</h3>



<p>Useful if you must have weak passwords for some reason</p>



<p>Syntax: g_hack_detect_disable bool</p>



<h3 class="wp-block-heading">g_hack_msg - Message to send to users with a weak password</h3>



<p>Message to send to users with a weak password</p>



<p>Syntax: g_hack_msg string</p>



<h3 class="wp-block-heading">g_hack_noemail - Disable weak password reports</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_hack_noemail bool</p>



<h3 class="wp-block-heading">g_hack_report - Address to send weak password reports to</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_hack_report string</p>



<h3 class="wp-block-heading">g_hack_touser - Send warnings about hacking directly to users</h3>



<p>Send warnings directly to users</p>



<p>Syntax: g_hack_touser bool</p>



<h3 class="wp-block-heading">g_hack_url - Url for users to change password</h3>



<p>Url to your server for users to change password, if not given the user.cgi url will be generated</p>



<p>Syntax: g_hack_url string</p>



<h3 class="wp-block-heading">g_hacker_alert - Email manager if address is locked out</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_hacker_alert bool</p>



<h3 class="wp-block-heading">g_hacker_days - Days to keep ipaddress locked out, default 7</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_hacker_days int</p>



<h3 class="wp-block-heading">g_hacker_fwd - Email manager if user sets fowarding rule</h3>



<p>Useful to identify a spammer trying to set a bounce address to pickup incoming email</p>



<p>Syntax: g_hacker_fwd bool</p>



<h3 class="wp-block-heading">g_hacker_max - Login guesses for one ip address before we lockout the ip address</h3>



<p>Stops hackers from guessing passwords every day until they find one, use tellmail unlock ip.number to unlock, or whitelist it...</p>



<p>Syntax: g_hacker_max int</p>



<h3 class="wp-block-heading">g_hacker_more - Be more restrictive, don't allow /24 netblocks based on loginip</h3>



<p>This setting has no further documentation currently available</p>



<p>Syntax: g_hacker_more bool</p>



<h3 class="wp-block-heading">g_hacker_password - If hacker attempts to login with account name as password, then blacklist ip</h3>



<p>Good for stopping robots guessing accounts</p>



<p>Syntax: g_hacker_password bool</p>



<h3 class="wp-block-heading">g_hacker_passwords - Failed logins that use these passwords will lockout the ip address</h3>



<p>List commonly guessed passwords, e.g. 12345678</p>



<p>Syntax: g_hacker_passwords string</p>



<h3 class="wp-block-heading">g_hacker_poison - Poison accounts. Instantly blacklist ip address e.g. root@*</h3>



<p>If user tries to login with this account then their ip address is blocked from further logins. Give full domain name or wild card, e.g. root@your.domain,staff@*</p>



<p>Syntax: g_hacker_poison string</p>



<h3 class="wp-block-heading">g_hacker_weak - If user tries weak password, lockout ip address</h3>



<p>If someone is 'guessing' weak passwords their ip address will be locked out</p>



<p>Syntax: g_hacker_weak bool</p>



<h3 class="wp-block-heading">g_hacker_whitelist - Ip addresses to avoid guessing issues</h3>



<p>Whitelist for gateways or other systems that you expect multiple failed logins from (e.g. webmail host)</p>



<p>Syntax: g_hacker_whitelist string</p>
<p>The post <a rel="nofollow" href="https://surgemail.com/knowledge-base/global-settings-g_hack/">Global settings g_hack</a> appeared first on <a rel="nofollow" href="https://surgemail.com">SurgeMail</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
