Commit Graph
32 Commits
Author SHA1 Message Date
Adam Cooke 957b784658 chore: Upgrade to Ruby 3.2.1 & Rails 6.0
* chore: upgrade to rails 6.0

* chore: upgrade ruby to 3.2.1

* chore: upgrade bundler

* chore: upgrade execjs

* chore: upgrade to rails 6.1

* chore: switch to sentry-ruby from raven

* chore: add extra platforms to gemfile
2023-04-06 11:40:45 +01:00
Charlie Smurthwaite fd289c46fd style(rubocop): fix all safe auto correctable offenses 2023-03-16 15:50:53 +00:00
wadabum 9b1ed1e7e1 Log access CRAM-MD5 authentication failures (#2304)
see https://github.com/postalserver/postal/issues/1182#issuecomment-1360832523
2023-03-13 11:41:51 +00:00
Wouter van Os 9f4ef8f57a fix: do not change \r to \r\n (#2154)
As this may cause issues when a new buffer is exactly in between \r and \n.

Fixes #1624
2023-01-23 15:09:35 +00:00
Charlie Smurthwaite a7dd19baac Use non-blocking function to negotiate TLS connections 2022-11-09 13:55:17 +00:00
Grex 6bace2c905 Add explicit DNS timeout
This makes DNS timeouts occur much more quickly and avoid clients with nonfunctional reverse DNS timing out while waiting for a response to their EHLO requests.
2022-08-17 11:13:24 +01:00
Vishnu SudhakaranandVishnu S e8ba9ee427 fix(smtp_server): updated line split logic, normalize all linebreaks to \r\n (#897)
Co-authored-by: Vishnu S <vishnu@zerodha.com>
2021-07-27 23:15:38 +01:00
Adam Cooke 4a410c8c9f feat(smtp_server): allow bind address to be configured
closes #1166
2021-07-27 22:00:16 +00:00
Adam Cooke e0ba05acb1 fix(smtp_server): fixes issue with malformed rcpt to
closes #1299
closes #1019
2021-07-27 14:32:29 +00:00
Adam Cooke fcb63616e1 fix(smtp_server): attempt to redact plain-text passwords from log output 2021-07-27 13:10:32 +00:00
Jim 70d9ba6d09 Add log line for failed authentication attempts
Resolves #1182
2020-10-01 12:35:34 +01:00
Charlie Smurthwaite 9a3d568b27 Add IP-based SMTP authentication (#1149) 2020-07-17 11:43:51 +01:00
Charlie Smurthwaite 0fb323af3f reset SMTP transaction automatically after any DATA response, not just success 2019-04-08 15:05:55 +01:00
Adam Cooke ce68d9eacd update Received headers to use UTC timestamps 2018-01-13 19:28:31 +00:00
Petter Helset 67e37b0770 Configurable OpenSSL versions and ciphers (#387) 2017-12-05 11:25:42 +00:00
Petter Helset 83ada69662 Handle exception ETIMEDOUT in SMTP server (#384) 2017-12-05 11:21:57 +00:00
Petter Helset 93434bbb7e Configurable message size limit. Defaults to 14MB. (#383) 2017-12-05 11:21:23 +00:00
Charlie Smurthwaite a63c62ba62 strip continuation of received headers 2017-08-10 02:06:32 +01:00
mackinra 2a9702ba47 Added option to strip incoming Received headers (#282) 2017-08-10 00:05:40 +01:00
Charlie Smurthwaite f1bee5644b allow auth login with inline username 2017-07-11 09:52:49 +01:00
Charlie Smurthwaite 90075769e0 set state to welcomed after successful email
fixes #151
2017-05-17 22:20:06 +01:00
Charlie Smurthwaite dacddb4d8e don't forget credentials on rset, helo or ehlo
resolves:137
2017-05-17 22:16:01 +01:00
Adam Cooke 4106ac6c7e fixes bug with receiving messages to the return path
treats all messages sent to the return path and any domain with the return path prefix the same
2017-05-16 14:49:56 +01:00
Charlie Smurthwaite 5a757e722a remove AUTH= paramater from "MAIL FROM" before processing 2017-05-10 11:47:13 +01:00
Adam Cooke d4fd6b9925 By default, we will now listen directly on various ports [breaking]
This allows us to avoid messing around with changes to iptables and generally makes installation easier for everyone.

If you have an instance of postal before this, you will need to do a couple of things to ensure your installation continues to work.

1. You will need to specify a `fast_server.bind_address` in your postal.yml configuration file. This is the IP that you dedicated to the fast server.
2. You will need to allow Ruby to listen on privileged ports (sudo setcap 'cap_net_bind_service=+ep' /usr/bin/ruby2.3).
3. You will need to remove any iptables rules that you may have added previously to accomodate the older way of doing this.
2017-05-05 11:45:27 +01:00
Charlie Smurthwaite b90632b525 replace epoll and threaded servers with single nio4r evented server 2017-05-02 13:07:03 +01:00
Adam Cooke 2be702fac3 make sure resolv is required before it is used everywhere
closes #67
2017-04-30 19:25:03 +01:00
Adam Cooke caacaa7f92 disable SMTP TLS by default and add custom paths for SMTP key/cert
TLS can be enabled by setting 'smtp_server.tls_enabled' to true.
2017-04-28 15:12:56 +01:00
Adam Cooke 0f10481da0 ensure that we only try to log exceptions when raven is available 2017-04-26 20:54:50 +01:00
Adam Cooke a06e9b27cd can't shift those any more, config returns a frozen array 2017-04-26 12:51:53 +01:00
Adam Cooke 50609a77cc update references to old certificates on smtp & fast server 2017-04-26 12:44:01 +01:00
Adam Cooke 2fdba0ceb5 initial commit from appmail 2017-04-19 13:07:25 +01:00