Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "postfix"
-
I absolutely love the email protocols.
IMAP:
x1 LOGIN user@domain password
x2 LIST "" "*"
x3 SELECT Inbox
x4 LOGOUT
Because a state machine is clearly too hard to implement in server software, clients must instead do the state machine thing and therefore it must be in the IMAP protocol.
SMTP:
I should be careful with this one since there's already more than enough spam on the interwebs, and it's a good thing that the "developers" of these email bombers don't know jack shit about the protocol. But suffice it to say that much like on a real letter, you have an envelope and a letter inside. You know these envelopes with a transparent window so you can print the address information on the letter? Or the "regular" envelopes where you write it on the envelope itself?
Yeah not with SMTP. Both your envelope and your letter have them, and they can be different. That's why you can have an email in your inbox that seemingly came from yourself. The mail server only checks for the envelope headers, and as long as everything checks out domain-wise and such, it will be accepted. Then the mail client checks the headers in the letter itself, the data field as far as the mail server is concerned (and it doesn't look at it). Can be something else, can be nothing at all. Emails can even be sent in the future or the past.
Postfix' main.cf:
You have this property "mynetworks" in /etc/postfix/main.cf where you'd imagine you put your own networks in, right? I dunno, to let Postfix discover what your networks are.. like it says on the tin? Haha, nope. This is a property that defines which networks are allowed no authentication at all to the mail server, and that is exactly what makes an open relay an open relay. If any one of the addresses in your networks (such as a gateway, every network has one) is also where your SMTP traffic flows into the mail server from, congrats the whole internet can now send through your mail server without authentication. And all because it was part of "your networks".
Yeah when it comes to naming things, the protocol designers sure have room for improvement... And fuck email.
Oh, bonus one - STARTTLS:
So SMTP has this thing called STARTTLS where you can.. unlike mynetworks, actually starts a TLS connection like it says on the tin. The problem is that almost every mail server uses self-signed certificates so they're basically meaningless. You don't have a chain of trust. Also not everyone supports it *cough* government *cough*, so if you want to send email to those servers, your TLS policy must be opportunistic, not enforced. And as an icing on the cake, if anything is wrong with the TLS connection (such as an MITM attack), the protocol will actively downgrade to plain. I dunno.. isn't that exactly what the MITM attacker wants? Yeah, great design right there. Are the designers of the email protocols fucking retarded?9 -
N e v e r, fucking e v e r chmod/ chown permissions recursive on the linux /etc folder❗
I did yesterday (, because I am fucking dumb and know little about linux systems) and got the result today. My whole mailserver wasn't working.
After fucking tons of googling and searching and log-digging I found that postfix and opendkim require specific permissions on their respective folders and files.
After changing a fucking amount of permissions on those fucking files the fucking mailserver worked and I can send and receive mails, now. 😤😤😤
What a torture. Lesson learned. Never will repeat this mistake.16 -
That feeling when your client connection is more stable than the connection of a fucking game server... Incompetent pieces of shit!!! BEING ABLE TO PUT A COUPLE OF SPRITES DOESN'T MAKE YOU A FUCKING SYSADMIN!!!
Oh and I sent those very incompetent fucks a mail earlier, because my mailers are blocking their servers as per my mailers' security policy. A rant from the old box - their mail servers self-identify a fucking .local!!! Those incompetent shitheads didn't even properly change the values from test into those from prod!! So I sent them an email telling them exactly how they should fix it, as I am running the same MTA on my mailers (Postfix), at some point had to fix my mailers against the exact same issue as well, and clearly noticed in-game that they have deliverability problems (they explicitly mention to unblock their domain). Guess why?! Because their server's shitty configuration triggers fucking security mechanisms that are built against rogue mailers that attempt to spoof themselves as an internal mailer, with that fucking .local! And they STILL DIDN'T CHANGE IT!!!! Your fucking domain has no issues whatsoever, it's your goddamn fucking mail servers that YOU ASOBIMO FUCKERS SHOULD JUST FIX ALREADY!!! MOTHERFUCKERS!!!!!rant hire a fucking sysadmin already incompetent pieces of shit piece of shit game dev doesn't make you a sysadmin2 -
I was just testing the Postfix server on one of my mailers, for the hell of it.. EHLO, STARTTLS, all good. Then comes the mail submission part.
MAIL FROM test@nixmagic.com
Connection closed by foreign host.
Right after I say mail from, it just closes the connection! Is it just me or does this feel like the server says to me "fuck off"? :')18 -
Often I hear that one should block spam email based on content match rather than IP match. Sometimes even that blocking Chinese ranges in particular is prejudiced and racist. Allow me to debunk that after I've been looking at traffic on port 25 with tcpdump for several weeks now, and got rid of most of my incoming spam too.
There are these spamhausen that communicate with my mail server as much as every minute.
- biz-smtp.com
- mailing-expert.com
- smtp-shop.com
All of them are Chinese. They make up - rough guess - around 90% of the traffic that hits my edge nodes, if not more.
The network ranges I've blocked are apparently as follows:
- 193.106.175.0/24 (Russia)
- 49.64.0.0/11 (China)
- 181.39.88.172 (Ecuador)
- 188.130.160.216 (Russia)
- 106.75.144.0/20 (China)
- 183.227.0.0/16 (China)
- 106.75.32.0/19 (China)
.. apparently I blocked that one twice, heh
- 116.16.0.0/12 (China)
- 123.58.160.0/19 (China)
It's not all China but holy hell, a lot of spam sure comes from there, given how Golden Shield supposedly blocks internet access to the Chinese citizens. A friend of mine who lives in China (how he got past the firewall is beyond me, and he won't tell me either) told me that while incoming information is "regulated", they don't give half a shit about outgoing traffic to foreign countries. Hence all those shitty filter bag suppliers and whatnot. The Chinese government doesn't care.
So what is the alternative like, that would block based on content? Well there are a few solutions out there, namely SpamAssassin, ClamAV and Amavis among others. The problem is that they're all very memory intensive (especially compared to e.g. Postfix and Dovecot themselves) and that they must scan every email, and keep up with evasion techniques (such as putting the content in an image, or using characters from different character sets t̾h̾a̾t̾ ̾l̾o̾o̾k̾ ̾s̾i̾m̾i̾l̾a̾r̾).
But the thing is, all of that traffic comes from a certain few offending IP ranges, and an iptables rule that covers a whole range is very cheap. China (or any country for that matter) has too many IP ranges to block all of them. But the certain few offending IP ranges? I'll take a cheap IP-based filter over expensive content-based filters any day. And I don't want to be shamed for that.7 -
Oh boy IntelliJ IDEA is gonna spoil me bad
This postfix completion feature just blew my mind. I didn't know I wanted this until I found out about it.
I missed a proper IDE for a long time. VSCode is fine but holy shit I forgot how much a good IDE can do for you.5 -
Is there someone here that is capable of developing a postfix smtp milter?
I need a milter that can do following:
Rewrite a defined mail-header4 -
Oh man setting up postfix and dovecot (plus things like rspamd) is a pain in the ass.
But it's worth it, having your own mail server is just quite a good feeling.
Now I just need to find out how to get it to pass the spam filter of Google, despite the server and the DNS zone being well-configured (better than my school's mail server according to tests, but that one still manages to pass. I have no idea why.)9 -
There are a few email addresses on my domain that I keep on receiving spam on, because I shared them on forums or whatever and crawlers picked it up.
I run Postfix for a mail server in a catch-all configuration. For whatever reason in this setup blacklisting email addresses doesn't work, and given Postfix' complexity I gave up after a few days. Instead I wrote a little bash script called "unspam" to log into the mail server, grep all the emails in the mail directory for those particular email addresses, and move whatever comes up to the .Junk directory.
On SSD it seems reasonably fast, and ZFS caching sure helps a lot too (although limited to 1GB memory max). It could've been a lot slower than it currently is. But I'm not exactly proud of myself for doing that. But hey it works!1 -
Need to change host for my sites, but no money for a good one. Trying to put everything in one cloud (5 USD) but... How the duck can I create a mail server with multiple domains?
A good fight with postfix, dovecot... The first account, just to the sake of make it work, is almost working (I reckon)9 -
WHY!
Email was invented a gazillion years ago and it's still a shiit experience to setup on linux. Just give me ONE complete package!!
nooo i need to get postfix, dovecot, spamassassain mailscanner, antivirus, opendmarc, opendkim, dovecot-managesieve dovecot-sieve, roundcube, database, webserver and then i still have to configure everything and setup certs, spf, dnssec, dkimkeys on the domains, domains, mailboxes, deny weak certs etc.
I know the whole do one thing and do that one thing well but how about you just be a mailserver and do that ONE thing well without me needing to putting all of the puzzle pieces together myself! I don't want to waste time setting all this shit up. and don't even get me started on symantec and live.com and their blocking!14 -
tt = *src++;
The C programmers that use dereferencing and postfix de-/increment in the same statement, can go and fuck themselves18 -
The moment when you accidentally delete the final product instead of the experimental one because they have the same prefix and the shell's completion choose the final product when you type the name.
That happened to me today. I accidentally deleted a postfix calculator that I wrote in Scala instead of the sbt one (Which does nothing) because both of them have the same prefix (nimtha is the program's directory name, and nimtha-sbt is the sbt one). I don't notice that until I go back to the project directory and don't see the program's directory. I tried to recover it with TestDisk, but it can't. All because of fish's shell completion, and also because of me.
At least that was a pretty small project so I don't feel very bad.4 -
If you have 5 classes using the same postfix... and inside, 4 methods en each, called EXACTLY THE SAME... Please, create at least an abstract class!! or else next week you'll have to make the EXACT same change 5 times!!! or more!!... I don't know man! just saying... Patterns exist for a reason!1
-
That moment when the cash point gets restarted, a Linux with kernel 2.6 boots and you wonder why there is a postfix service running...
-
I've been working on migrating my personal e-mail server for nearly a month.
Old (Linode): opensuse 13.1 (no longer gets update) running postfix + amavis-new(with spamassassin and clamav) + dkimproxy + dovecot
New (Vultr): OpenBSD 6.3 running opensmtpd + spampd(spamassassin proxy) + clamav + dkimproxy + dovecot
I'm surprised I only have 5GB of e-mail, considering I migrated all my gmail there a while back; 5GB for ever e-mail since 2004.
I finally got all the DNS switched over and tested all the end points this morning. The whole thing is done in Ansible so hopefully switching to another provider will be a lot faster:
https://github.com/sumdog/bee2/...4 -
The first company I ever worked for thought it was a good idea to have all business logic in stored procedures "for speed".
It worked. Except when you need to add BC breaking features.
The solution? Keep the legacy code in file do_something.sql and add the new functionality in do_something_1.sql.
It became a sordid game trying to find the highest postfix. My record was 16.2 -
Alright, here we go again with issues on Vector. (My home server that we're transitioning our website, infiniit.co to.)
I'm trying to get the email server up and running. It's a PITA which is evident by the fact we are now on attempt number 6, at least on the 6th VM now. At this time I'm installing a Ubuntu 16.04 LTS ISO and I'll be installing IRedMail unless someone else has any recommendations. So far I've had nothing but problems doing it manually, installing dovecot and postfix, trying to get them linked, and then the last failure was sending a test email locally.
Also, a continuation of the last issue that I had here, now my VMRC isn't working anymore for some reason. Ive forwarded websockets but it won't work unless I use local IP since everything (except direct local IP connections) is running through an apache VHost setup... My head hurts. Help pls.2 -
Am I a selfish asshole for not allowing my email server to be the relay whore of the internet?
I just hate postfix log files filled with messages not related to my own domain.3 -
Index, currIndex and i are all -1.
The real index is a postfix on a string in another class passed through several layers of reflection and delegates.
Tomorrow will be better. Tomorrow will be better. Tommorow will be better.... -
No...
I didn't spend the whole weekend (some 20 hours) wiping my server and setting it back up because it was a steaming pile of garbage...
then fucking it up again and redoing the whole process again....
.... and for good measure again because stupid me.....
GAAAAAAAAAAA
but at least it is working now :) -
Lol all my creations are useless to a good extent. I work on them just for practice. Here is a short list of them.
1) c program for every kind of sorting algo
2) stack implementation for checking paranthesis and prefix postfix shit in java
3) Treeview implemention with basic utils like create, update, delete in python -
Need some help,
I am setting up postfix and I need it to accept all emails, from any domain (without a domain list), and forward it to a local address on the machine (It pipes into PHP, toscript@).
I have a catch-all working where it is forwarding the emails to the toscript@ mailbox dispite of the to address. But if I send an email to it that is not in the domain list it gets rejected as it's not in the domain list, Is their a known way to force Postfix to accept all domain emails without having a list of the domains in the server.
I have searched but no luck of a working solution, I have looked at the following with no working solution
Server Fault: 133190
Server Fault: 422468
Server Fault: 179419
Server Fault: 105641
Server Fault: 161321
Server Fault: 318426
Server Fault: 514643
Server Fault: 410053
Stack Overflow: 4772229
Super User: 353488
Looking at the docs I do not see anything for it but making it an open relay but I can't figure what settings to update to make it the open relay to capture all of the mail.
I know I am missing something but I can't figure out what it is!
::Rant::
I'd like to use Postfix as it seems very stable and it's not a hack job as some of the projects that I have seen. It also can communicate with all of the proper channels for SMTP and the Protocol as well as some very easy configs.2 -
Any alternative to Postfix for sending email? I followed this guide from DO https://digitalocean.com/community/... but for the life of me my Gmail account receives nothing from my app13