Commit Graph
96 Commits
Author SHA1 Message Date
Joshua Tauberer 80b367ab07 test_mail: gracefully handled when the server has no reverse DNS available 2014-05-06 10:02:29 -04:00
Joshua Tauberer 63ef8f7b04 missing wget dependency used by roundcube installation 2014-05-06 10:02:06 -04:00
Joshua Tauberer 189dd6000e docker: re-run the start script on the container's first run because it won't know its hostname or IP address until then 2014-05-02 14:23:56 -04:00
Joshua Tauberer 3fdcbe542f don't ask the user to create an email account if the shell is non-interactive and provide a better default for the domain name 2014-05-02 14:22:59 -04:00
Joshua Tauberer 89bb5da986 dns: missing dependency on bc 2014-05-02 14:18:26 -04:00
Joshua Tauberer acec82950b docker: disable the ufw firewall because it is not supported in a docker container and produces a lot of error output (by reverting a510e08f9e and setting an environment variable) 2014-05-01 22:39:45 -04:00
Joshua Tauberer 2f6e0ded7a docker: cleanup comments and make the installation of sshd quieter 2014-05-01 22:36:14 -04:00
Joshua Tauberer f0afa7e8dc docker: add some example run commands for debugging a container or having it take over host ports 2014-05-01 22:29:00 -04:00
Joshua Tauberer 89240a4fab docker: do ADD container/docker later on so that the Dockerfile can be updated and still reuse a cached image after the major setup steps are done 2014-05-01 22:18:45 -04:00
Joshua Tauberer 16c0a9d342 docker: if container was launched with a tty start bash otherwise loop forever to keep the container going 2014-05-01 22:16:14 -04:00
Joshua Tauberer 7999eae857 Merge pull request #47 from randallsquared/master
don't reject mail to domains that only have aliases and not users
2014-05-01 18:21:19 -04:00
Joshua Tauberer 74ec3d9696 ssl: there is no need to use -des3 in key generation if we're just going to remove the passphrase
thanks @konklone for discussion
2014-05-01 16:47:24 -04:00
Joshua Tauberer 532c9aa7fd move the Dockerfile to the root to allow the working directory of the repo to be pushed inside the image (rather than inside the container getting a fresh mailinabox from github) so changes in the working copy can be tested in Docker quickly / without pushing to github 2014-05-01 16:39:12 -04:00
Joshua Tauberer 19f5f144ae installing roundcube from debian would cause update from ubuntu later, now install from Ubuntu debs
We were installing .deb's from Debian. The next apt-get upgrade would cause roundcube to be upgraded.
Maybe that also triggered the installation of apache. Now install roundcube from Ubuntu. So long as
Ubuntu doesn't post an update to roundcube, at least it won't trigger an upgrade on the next
apt-get upgrade. This should also mean we don't need to purge the installation of apache2.

Also try using apt-mark hold to prevent roundcube from being updated, in case that will trigger
dependencies.
2014-05-01 20:34:41 +00:00
Joshua Tauberer e413680f62 add a bash function ufw_allow which calls 'ufw allow' but hides its totally useless output 2014-05-01 19:35:18 +00:00
Joshua Tauberer 66269f910f make a bash function to use everywhere we apt-get-install (DEBIAN_FRONTEND=noninteractive apt-get -qq -y )
ensures the output is quiet
2014-05-01 19:24:16 +00:00
Joshua Tauberer 80bf60715e Merge pull request #45 from randallsquared/master
enable roundcube's password-change plugin
2014-04-30 15:11:23 -04:00
Joshua Tauberer 52fe6922ee add warnings about using a fresh machine because I wont support installing this on an existing machine 2014-04-26 12:08:17 +00:00
Joshua Tauberer ef40f9247d Merge pull request #40 from jmedding/master
List a DKIM and SPF testing tool in the documentation.
2014-04-26 07:50:31 -04:00
Joshua Tauberer 296d2941db 'service nsd rebuild' is no longer a thing
Seems like it was removed in nsd4 (since Ubuntu 14.04). It now
silently does nothing.

Fixes #41.
2014-04-26 11:47:31 +00:00
Joshua Tauberer f713d9232f initial Dockerfile 2014-04-25 13:04:32 -04:00
Joshua Tauberer 7c5c9774ea Merge pull request #34 from daniellawrence/handle_no_sshd
move the ssh PasswordAuthentication check to after installing ssh
2014-04-25 09:23:19 -04:00
Joshua Tauberer 58881f72db instead of installing roundcube from Ubuntu (before replacing it), just install the dependencies we need 2014-04-25 12:40:32 +00:00
Joshua Tauberer bb62c433fc minor fixes to comments, argument order (consistency?), the github URL changed long ago 2014-04-25 12:25:07 +00:00
Joshua Tauberer 9bab925123 use purge to get rid of apache 2014-04-25 11:41:50 +00:00
Joshua Tauberer beae591a0e messed up markdown in the README, in 263fdb15f9 2014-04-24 17:15:42 +00:00
Joshua Tauberer a510e08f9e enable ufw firewall again
I had previously awkwardly disabled it because on my VPS the necessary kernel
module wasn't available. I meant to make it an option, but instead I took
out the apt-get install. Now it works for me so I'm putting everything back.
2014-04-24 17:09:34 +00:00
Joshua Tauberer 263fdb15f9 refine the goals in the README 2014-04-24 10:59:02 -04:00
Joshua Tauberer 07b43c2bba set dovecot postmaster_address setting, fixes #31 2014-04-24 11:58:53 +00:00
Joshua Tauberer ac13f7ffca Merge pull request #29 from xLegoz/master
Force the scripts to run in bash
2014-04-23 19:02:09 -04:00
Joshua Tauberer dc996278af nsd doesn't install without creating the nsd user first - merge branch from randallsquared-master, fixes #25 2014-04-23 18:40:43 -04:00
Joshua Tauberer 1c02803b50 tweak @randallsquared's workaround for the nsd package's brokenness 2014-04-23 18:40:33 -04:00
Joshua Tauberer 0be47c414d in the DNS test, use dnspython3 rather than dig 2014-04-23 18:27:50 -04:00
Joshua Tauberer 1b4dd98270 test that the SMTP server's EHLO name matches its reverse DNS name 2014-04-23 18:02:30 -04:00
Joshua Tauberer 22ad668699 rename test modules to not conflict with global package names (e.g. dns) 2014-04-23 17:43:38 -04:00
Joshua Tauberer ccbbc930e2 in the mail test script, forgot to remove the dkim import 2014-04-23 17:32:41 -04:00
Joshua Tauberer 6e4670bbd0 adding CONTRIBUTING.md, see #23 2014-04-23 15:52:49 -04:00
Joshua Tauberer 0fb7d02e81 add CC0 1.0 Universal in LICENSE
fixes #23
2014-04-23 15:49:23 -04:00
Joshua Tauberer 48f5421b82 Merge pull request #21 from Keats/master
Fix install of php5-cgi, roundcube SQL directory on Ubuntu 14.04
2014-04-23 15:00:55 -04:00
Joshua Tauberer ec11241a7a also test reverse DNS 2014-04-23 14:10:04 -04:00
Joshua Tauberer be39f50aeb acknowledge iRedMail 2014-04-23 12:49:04 -04:00
Joshua Tauberer fe3485e13a spamassassin: enable pyzor
Not sure if I've tested this. Also because of graylisting there's not much of a need
to do sophisticated spam filtering, at least based on the email I get.
2014-04-23 12:48:04 -04:00
Joshua Tauberer 95a17a00c0 DNS test: also check a public nameserver to verify that the registrar (or up-host) configuration is correct too 2014-04-20 12:26:35 -04:00
Joshua Tauberer 6fd768d6ee update to @konklone's latest nginx SSL configuration recommendations 2014-04-17 20:27:52 -04:00
Joshua Tauberer 04d97a11e9 new tests for DNS and IMAP/SMTP 2014-04-17 20:18:10 -04:00
Joshua Tauberer 304bf3d360 update for Ubuntu 14.04 2014-04-17 20:17:24 -04:00
Joshua Tauberer 48bbdd9999 branding 2014-04-17 18:05:05 -04:00
Joshua Tauberer 9dc665e7cd remove apache before installing nginx --- it's not needed and will start complaining about the port being in use, or it might interfere with nginx 2014-04-17 18:01:14 -04:00
Joshua Tauberer d5fe5bd2a2 php-fcgid should have been configured in web.sh not webmail.sh
When I re-did this, I left in an old reference to the php-fcgid
script that never made it into the repo. Deleting that and moving
the php-fcgid configuration on top of it.

fixes #9
see 2ebd9706ec
2014-03-17 01:46:47 +00:00
Joshua Tauberer 6d1d9e1cc9 remove old Amazon EC2-related things since no one should ever deploy a mail server to EC2 (IPs have bad reputation) 2014-03-17 01:11:07 +00:00
Joshua Tauberer 511453adf7 update how we get the missing roundcube SQL directory: not sure previous URL was correct, should also match the deb version 2014-03-17 01:05:02 +00:00
Joshua Tauberer ebf19c197d bump roundcube version since the Debian ftp site isn't providing the previous version anymore 2014-03-17 00:52:20 +00:00
Joshua Tauberer 97083a1e0c to run webmail.sh directly, it needs to source the global variables 2014-03-17 00:46:59 +00:00
Joshua Tauberer 84e8ac25b8 block users who aren't running the distro that the docs specifically require 2014-03-17 00:42:00 +00:00
Joshua Tauberer 2ebd9706ec add php-fastcgi init script to start the FastCGI process needed to run Roundcube (and any other PHP scripts, really) 2014-03-17 00:03:19 +00:00
Joshua Tauberer 0564136bd7 advertise who we are in the SMTP 220 banner 2014-03-16 22:38:42 +00:00
Joshua Tauberer d4465d7ea3 paste my KNC entry into the README, move docs to a new file 2014-03-16 17:38:05 -04:00
Joshua Tauberer f27ef21f53 install Python 3, fixes #4 2014-03-16 16:50:24 -04:00
Joshua Tauberer b3ec80b301 Merge pull request #5 from vzvenyach/master
Documentation fixes
2014-03-16 16:39:57 -04:00
Joshua Tauberer cf0f26d58d update project webpage because I renamed my github account 2014-01-27 15:49:00 +00:00
Joshua Tauberer 5b4af391d5 set the postfix helo string to the machine's hostname, overriding the Debian default 'localhost', since some MTAs require a hostname there 2014-01-27 15:46:32 +00:00
Joshua Tauberer 08e7c315c9 fix a -z test, quotes needed 2014-01-27 15:46:32 +00:00
Joshua Tauberer afda0405cf apply @konklone's nginx https: recommendations from https://gist.github.com/konklone/6532544 2013-09-14 10:11:47 -04:00
Joshua Tauberer 9cd5fc34a9 refactoring dns_update: use global vars stored in /etc/mailinabox.conf 2013-09-08 11:47:27 +00:00
Joshua Tauberer 548cc8a0f6 generate a self-signed certificate for PUBLIC_HOSTNAME and change DNS MX records to PRIMARY_HOSTNAME so it matches 2013-09-08 11:27:25 +00:00
Joshua Tauberer 0403d27712 set the DNS SOA RNAME domain contact email to hostmaster@PRIMARY_HOSTNAME and add an alias when creating the first mail user 2013-09-08 10:16:09 +00:00
Joshua Tauberer b4e7d6ba5e create a basic hello world page on http/https 2013-09-08 09:55:58 +00:00
Joshua Tauberer b770c5370b web and roundcube webmail 2013-09-07 16:53:25 -04:00
Joshua Tauberer 43f4ef94b7 if I'm going to credit @shevski, I should also mention @konklone 2013-09-05 15:34:25 -04:00
Joshua Tauberer 7f5830117f Merge pull request #1 from shevski/patch-1
Credit @shevski for early conversations around decentralizing email.
2013-09-05 12:32:33 -07:00
Joshua Tauberer 08241795a4 improving README 2013-09-05 07:21:53 -04:00
Joshua Tauberer 1cc81e480d increase dovecot mx connections per mailbox 2013-09-04 06:53:01 -04:00
Joshua Tauberer a50f30c411 smtp server test 2013-09-01 10:40:12 -04:00
Joshua Tauberer 7f63c199a6 move the sieve script configuration to tools/mail.py 2013-09-01 10:40:12 -04:00
Joshua Tauberer 0c199b2e32 improve comments throughout the scripts 2013-09-01 10:40:12 -04:00
Joshua Tauberer acaa29e8db mail.py: check that mailboxes don't exist before creating them 2013-09-01 10:40:12 -04:00
Joshua Tauberer 5b82bbb5b3 preliminary script for nginx 2013-09-01 14:24:49 +00:00
Joshua Tauberer 5d26c490af enable postgrey and zen.spamhaus.org RBL blacklisting 2013-09-01 13:12:05 +00:00
Joshua Tauberer 166aebb2b3 more for the README 2013-08-31 19:46:42 -04:00
Joshua Tauberer cff3d561c2 dovecot antispam was not setup right 2013-08-31 19:46:42 -04:00
Joshua Tauberer 4a06e93b1e put all DKIM on the primary hostname since that's the only one guaranteed to be actually hosted (DNS) here; give new users a Spam folder too 2013-08-31 18:52:13 +00:00
Joshua Tauberer fe02d58b77 when updating DNS, use /etc/mailinabox.conf 2013-08-31 18:18:19 +00:00
Joshua Tauberer f37a508b74 forgot to define ns1, ns2 hostnames 2013-08-31 13:40:25 -04:00
Joshua Tauberer 560cd73b80 add a new mail user/alias configuration tool 2013-08-31 14:51:23 +00:00
Joshua Tauberer a1260b75fb various fixes; rewrote test scripts 2013-08-31 10:50:27 -04:00
Joshua Tauberer 3839054b96 rewriting README 2013-08-31 10:48:32 -04:00
Joshua Tauberer 981d162f19 write configuration info to /etc/mailinabox.conf; other cleanup 2013-08-31 14:46:10 +00:00
Joshua Tauberer 2d8ee99393 stop if the machine permits password login; remove testing code 2013-08-31 13:05:58 +00:00
Joshua Tauberer d307633abb postfix needs to be told to listen on public network interfaces 2013-08-26 21:22:48 +00:00
Joshua Tauberer c869f67e3d ask the user for inputs 2013-08-26 21:02:31 +00:00
Joshua Tauberer 8ac35be22c notes for setting up dspam, but it crashed a lot so I'm not using it 2013-08-23 12:03:26 -04:00
Joshua Tauberer 97b2105a1f spamassassin 2013-08-23 11:59:28 -04:00
Joshua Tauberer 5cef1bb63d DNS, SPF, and DKIM 2013-08-21 16:53:22 -04:00
Joshua Tauberer e06b4f5ccf assume scripts are running as root, dont sudo everything 2013-08-21 14:23:43 -04:00
Joshua Tauberer eb47a1471b mail seems to work 2013-08-21 09:37:33 -04:00
Joshua Tauberer d3a20b3369 initial commit of some preliminary notes 2013-08-20 22:27:32 -04:00