# I installed squirrelmail on OpenBSD again 2022-09-14T15:52:05Z => https://squirrelmail.org Squirrelmail is an old webmail. "Old" since it looks old. Actually, it doesn't even require javascript. And that's fine to me, I'm self-hosting and only need a webmail access for friends who don't configure a mail client. It is a very simple software, light and easy to set up compared to big alternatives. No database, no mess. Just PHP. Good news, PHP-8 is supported. So, I installed squirrelmail and it feels great. => https://0x0.st/oOQu.png This is how it looks with custom CSS. ## Notes to install squirrelmail on OpenBSD ### Install files and set permissions ``` mkdir /var/www/htdocs/webmail/ cd /var/www/htdocs/webmail ftp -o squirrelmail.tar.gz https://squirrelmail.org/countdl.php?fileurl=http%3A%2F%2Fsnapshots.squirrelmail.org%2Fsquirrelmail-20220914_0200-SVN.stable.tar.gz ftp -o locales.tar.gz https://squirrelmail.org/countdl.php?fileurl=http%3A%2F%2Fsnapshots.squirrelmail.org%2Fsquirrelmail-20220914_0200-SVN.locales.tar.gz for i in *.tar.gz; do tar xvzf $i; done mv squirrelmail.stable squirrelmail rm *.tar.gz cp -r squirrelmail.locales/locale/fr_FR squirrelmail/locale/ cp -r squirrelmail.locales/images/*fr_FR* squirrelmail/images/ cp -r squirrelmail.locales/help/fr_FR squirrelmail/help/ rm -r squirrelmail.locales mkdir -p {data,temp} chown -R www:daemon . chmod -R 750 . chmod 0730 data chmod 0730 temp ``` ### Configure ``` cd squirrelmail/config ./conf.pl ``` Have fun in Organization Preferences and Server Settings. Defaults are fine if webmail is on the same machine that the mail server. Just make sure in "General Options" to set : ``` 1. Data Directory : ../data/ 2. Attachment Directory : ../temp/ ``` ### Configure httpd I suppose here you already have a SSL certificate. ``` server "squirrelmail.host.tld" { listen on * port 80 no log location * { block return 301 "https://$SERVER_NAME$REQUEST_URI" } } server "squirrelmail.host.tld" { root "/htdocs/squirrelmail.host.tld/squirrelmail" connection max request body 36700160 directory index index.php listen on * tls port 443 hsts preload hsts subdomains tls { certificate "/etc/ssl/host.tld.crt" key "/etc/ssl/private/host.tld.key" ticket lifetime default } location "*.php*" { fastcgi socket "/run/php-fpm.sock" } location "/.well-known/acme-challenge/*" { root "/acme" request strip 2 } # block everything not listed in .htaccess location "README" { block } location "class" { block } location "config" { block } location "configure" { block } location "contrib" { block } location "data" { block } location "doc" { block } location "functions" { block } location "help" { block } location "include" { block } location "locale" { block } location "po" { block } } ``` ### Subscribe => https://squirrelmail.org/docs/admin/admin-12.html#mailinglists subscribe to annouces to get important notices.