PostfixAdmin - web based virtual user administration interface for Postfix mail servers

Overview

GitHubBuild Gitter Coverage Status GitHub repo size IRC Chat - #postfixadmin

PostfixAdmin

An open source, web based interface for managing domains/mailboxes/aliases etc on a Postfix based mail server.

Integrates with :

  • Postfix
  • IMAP/POP3 server (e.g. Dovecot or Courier)
  • Database backend (choose one of: sqlite, mysql, postgresql)
  • Fetchmail (optional)

Features

  • Unlimited domains/aliases/mailboxes
  • Optional storage quota support
  • Optional password expiry (beta)
  • Multiple password hashing formats
  • Supports PostgreSQL, MySQL, MariaDB, SQLite database backends (choose one)
  • Supports retrieval of mail from a remote POP3 server (via fetchmail)
  • Vacation / Autoresponder / Out Of Office support
  • Users have the ability to login, change their password or vacation (out of office) status.
  • Integration with Squirrelmail / Roundcube (via plugins)
  • Optional XMLRPC based API
  • Supports PHP7.2+ (older versions of PHP should work with older releases)

Some screenshots of Postfixadmin in action (as admin and user)

Useful Links

Comments
  • Your email address or password are not correct.

    Your email address or password are not correct.

    I dida an upgrade to latest version of postfixadmin. But whatever I do I get the same problem. Your email address or password are not correct.

    I have setup $CONF['setup_password'] = but still the same

    opened by Blisk 28
  • I can not install on PostgreeSQL

    I can not install on PostgreeSQL

    I try to install postfixadmin on a server with a post-hess database and get the following errors:

    2020/06/19 21:02:45 [error] 14580#0: 643 FastCGI sent in stderr: "PHP message: Invalid query: ERROR:  invalid input syntax for integer: "t" LINE 1: ..._domain_count,0) as domain_count,CASE active WHEN 't' THEN '...                                                             ^ PHP message: caused by query:  SELECT username,password,password as password2,CASE superadmin WHEN 't' THEN '1'    WHEN 'f' THEN '0'   END as superadmin,CASE superadmin WHEN 't' THEN 'ДА' W HEN 'f' THEN 'НЕТ' END as _superadmin,coalesce(domains,'') as domains,coalesce(__domain_count,0) as domain_count,CASE active WHEN 't' THEN '1'    WHEN 'f' THEN '0'   END as active,CASE acti ve WHEN 't' THEN 'ДА' WHEN 'f' THEN 'НЕТ' END as _active,TO_CHAR(modified, 'YYYY-mm-dd') AS modified, modified AS _modified,1 as _can_edit,1 as _can_delete  FROM admin  LEFT JOIN (  SELECT count() AS __domain_count, array_to_string(array_agg(domain), ',') AS domains, username AS __domain_username  FROM domain_admins WHERE domain != 'ALL' GROUP BY username  ) AS __domain on u sername = __domain_username  WHERE 1=1    AND    ( username='[email protected]' )  ORDER BY username" while reading response header from upstream, client: 192.168.0.1, server: _, request: "POST /postfixadmin/setup. php?debug=1 HTTP/1.1", upstream: "fastcgi://127.0.0.1:9999" Please tell me what they are connected with, how can I fix them?

    opened by player1905 25
  • postfix doesn't work after postfixadmind upgrade

    postfix doesn't work after postfixadmind upgrade

    Hello! We run a postfix mail server on Debian 9. I've upgraded manually from Postfixadmin 3.0.2 (this is the default deb package on Debian 9) to Postfixadmin 3.8.8 After the upgrade, Postfix started to report errors and doesn't work. Here is the log:

    Jan 24 20:18:04 testmail postfix/proxymap[976]: warning: mysql query failed: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (latin1_general_ci,IMPLICIT) for operation '=' Jan 24 20:18:04 testmail postfix/submission/smtpd[975]: warning: proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_maps.cf lookup error for "[email protected]" Jan 24 20:18:04 testmail postfix/submission/smtpd[975]: NOQUEUE: reject: RCPT from unknown[192.168.0.50]: 451 4.3.0 <[email protected]

    I had to drop "Postfix" Mysql database and import it from a backup. After that Postfix worked again. I think, Postfixadmin upgrade process changed some tables in the "Postfix" MYsql database, this caused the problem.

    Thanks.

    opened by tjano1960 22
  • Dovecotpw needs to read my TLS certificate and its private key

    Dovecotpw needs to read my TLS certificate and its private key

    I can't find it documented anywhere and I also don't understand the logic behind this: why does PostfixAdmin need to read my TLS certificate private key to allow login or create users?

    Postfix, Dovecot and IMAP clients work well with the default ownership and permissions settings of Let's Encrypt files and folders (probably because their master processes are run as root), however to login on PostfixAdmin or create an account I need to run, as root:

    # replace "postfixadmin" with your php-fpm user group, e.g. "www-data" for Ubuntu
    
    # from root:root
    chown root:postfixadmin /etc/letsencrypt/live/example.org/privkey.pem
    chown root:postfixadmin /etc/letsencrypt/live
    chown root:postfixadmin /etc/letsencrypt/archive
    
    # from 600
    chmod 640 /etc/letsencrypt/live/example.org/privkey.pem
    
    # from 700
    chmod 750 /etc/letsencrypt/live
    chmod 750 /etc/letsencrypt/archive
    

    If settings are different from above, when logging in, the page will simply refresh, throwing this vague error in NginX error log:

    2020/11/28 01:08:46 [error] 534#534: *548 FastCGI sent in stderr: 
    "PHP message: PostfixAdmin login failed (username: [email protected], ip_address: 127.0.0.1)" 
    while reading response header from upstream, client: 127.0.0.1, server: postfixadmin, request: "POST /login.php HTTP/1.0", upstream: "fastcgi://unix:/run/postfixadmin/postfixadmin.sock:", host: "example.org"
    

    By creating a new admin from setup.php the error gets more useful:

    2020/11/28 01:11:36 [error] 534#534: *641 FastCGI sent in stderr: 
    "PHP message: dovecotpw password encryption failed. STDERR output: doveconf: Fatal: Error in configuration file /etc/dovecot/dovecot.conf line 154: ssl_cert: Can't open file /etc/letsencrypt/live/example.org/fullchain.pem: Permission denied"
    while reading response header from upstream, client: 127.0.0.1, server: postfixadmin, request: "POST /setup.php HTTP/1.0", upstream: "fastcgi://unix:/run/postfixadmin/postfixadmin.sock:", host: "example.org"
    

    By changing ownership and permissions of only the directories /etc/letsencrypt/live and /etc/letsencrypt/archive, the error becomes:

    2020/11/28 01:14:22 [error] 534#534: *641 FastCGI sent in stderr: 
    "PHP message: dovecotpw password encryption failed. STDERR output: doveconf: Fatal: Error in configuration file /etc/dovecot/dovecot.conf line 154: ssl_key: Can't open file /etc/letsencrypt/live/example.org/privkey.pem: Permission denied"
    while reading response header from upstream, client: 127.0.0.1, server: postfixadmin, request: "POST /setup.php HTTP/1.0", upstream: "fastcgi://unix:/run/postfixadmin/postfixadmin.sock:", host: "example.org"
    
    opened by AlphaJack 22
  • $CONF['password_validation'] default prevents a012312321 as a valid password

    $CONF['password_validation'] default prevents a012312321 as a valid password

    Checked on https://regex101.com/

    Current default does not allow a password that does not have 3 consecutive letters. Correct validation should be 3 consecutive CHARACTERS. Spaces should be allowed inside the password as well as special characters. Otherwise this restriction violates the premise of strong passwords.

    $CONF['password_validation'] = array(
    #    '/regular expression/' => '$PALANG key (optional: + parameter)',
        '/.{5}/'                => 'password_too_short 5',      # minimum length 5 characters
        '/([a-zA-Z]){3}/'     => 'password_no_characters 3',  # must contain at least 3 characters
        '/([0-9].*){2}/'        => 'password_no_digits 2',      # must contain at least 2 digits
    );
    

    Should be

    $CONF['password_validation'] = array(
    #    '/regular expression/' => '$PALANG key (optional: + parameter)',
        '/.{5}/'                => 'password_too_short 5',      # minimum length 5 characters
        '/[a-zA-Z0-9!@#$%^&*\(\)~`;:\'\",.<>\/?{}\[\]\\=+-_][ a-zA-Z0-9!@#$%^&*\(\)~`;:\'\",.<>\/?{}\[\]\\=+-_]{2}/'     => 'password_no_characters 3',  # must contain at least 3 characters
        '/([0-9].*){2}/'        => 'password_no_digits 2',      # must contain at least 2 digits
    );
    
    bug passwords 
    opened by ShamimIslam 20
  • MailboxHandler crashed on empty quota value

    MailboxHandler crashed on empty quota value

    When you add a new mailbox to a domain using an empty quota field then the model/MailBoxHandler.php crashes.

    Actual behaviour: edit.php page crashes (database entry seems to be created nevertheless) Expected behaviour: Regard quota as -1 (non-existent or default) or complain about empty field

    Please find a patch MailboxHandler.txt for this as attachment

    bug 
    opened by technicalguru 19
  • Postfix admin don't work after moving from php 7.4 to 8.0.5

    Postfix admin don't work after moving from php 7.4 to 8.0.5

    After I moved from php 7.4 to 8.0.4 postfixadmin don't work, i didn't change any postfixadmin or database settings. When I try to connect to my domain under /postfixadmin i see HTTP 500 error, before update all works well.

    opened by Arturitu12 18
  • Error: Smarty template compile directory templates_c is not writable.

    Error: Smarty template compile directory templates_c is not writable.

    I cannot install postfixadmin Setup.php gives me following info

    Postfix Admin Setup Checker
    
    Running software:
    
        PHP version 7.0.33-0+deb9u1
        Apache/2.4.25 (Debian)
    
    Checking for dependencies:
    
        Magic Quotes: Disabled - OK
        Depends on: presence config.inc.php - OK
        Checking $CONF['configured'] - OK
        Error: Smarty template compile directory templates_c is not writable.
        Please make it writable.
        If you are using SELinux or AppArmor, you might need to adjust their setup to allow write access.
        Depends on: MySQL 4.1 - OK
        Testing database connection - OK - mysqli://postfixadmin:xxxxx@localhost/postfixadmin
        Depends on: session - OK
        Depends on: pcre - OK
        Depends on: multibyte string - OK
        Depends on: IMAP functions - OK
    
    Please fix the errors listed above.
    

    Then I tried to do actions described in https://github.com/postfixadmin/postfixadmin/blob/master/INSTALL.TXT

    root@mail:~# mkdir -p /srv/postfixadmin/templates_c
    root@mail:~# chown -R www-data /srv/postfixadmin/templates_c
    

    But nothing changed. I have same error anyway.

    My system is Debian GNU/Linux 9.6 (stretch) 10.1.37-MariaDB PHP version 7.0.33-0+deb9u1 Apache/2.4.25 (Debian)

    opened by schel4ok 18
  • How can I add admin user

    How can I add admin user

    Hello, We are using in our company postfix.admin v 2.3.6 The person who installed the application is not working any more in our co. We need to create another admin user. I attached a picture with the login screen. May anybody help us? Thank you for your support,

    opened by forrotransfer 17
  • Trying to install version 3.3.1 error 500

    Trying to install version 3.3.1 error 500

    I have version 3.2 installed running fine. I've installed version 3.3.1 in the neighboring folder and copied config.local.php to the root of new folder. Permissions are correct on the new folder machine web server user and I'm able to open /postfixadmin/index.php for test. But when trying to open /postfixadmin/public/index.php /postfixadmin/public/setup.php or /postfixadmin/public/login.php it generates 500 error. There is nothing specific in the web server logs that could explain the issue , so it points to PHP root cause.

    When I enabled PHP display errors it is showing up PHP error: Parse error: syntax error, unexpected ':', expecting ';' or '{' in /home/ipnets/public_html/pa-3.3/model/Config.php on line 48

    Indeed, source line 48 refers to: public static function read_array(string $var) : array {

    Is there any PHP incompatibility with PHP 5.6.37? Please help to fix the issue.

    php 
    opened by Alex-JTI 16
  • When setting up a forward email address, it doesn't forward the mail there

    When setting up a forward email address, it doesn't forward the mail there

    I have created a mailbox user, and set up their email forwarding to forward the mail to my gmail account.

    However, when I send them an email, it just ends up in their mailbox. What do i do?

    Thanks!

    opened by barrychapman 16
  • Problems upgrading from 3.3.8 to postfixadmin_3.3 branch

    Problems upgrading from 3.3.8 to postfixadmin_3.3 branch

    Today I saw that my installed 3.3.8 version of postfixadmin was out of date.

    I have been trying to migrate all my websites to git repositories, so I pulled this repo down and switched to the postfixadmin_3.3 branch, then went about bringing it online.

    I ran into some problems when trying to run setup.php to upgrade the database.

    First problem was that the created and modified dates were all zeroes in the ALL record in the domain table, so altering the table failed. I updated those to 1970-01-01 00:00:00 and then that step worked.

    Second problem was that it could not add a foreign key to the vacation_notification table. I updated the permissions of the user to "ALL PRIVILEGES" on its database so that was allowed.

    Then it failed again, trying to remove the foreign key that it had just failed to add. Turns out that the named foreign key was not there, which I found strange because I had just fixed the access to allow creating of that foreign key.

    Wed Jan 04 11:06:17.125124 2023] [proxy_fcgi:error] [pid 2489788:tid 139947371697920] [client 172.31.8.104:56522] AH01071: Got error 'PHP message: Invalid query: SQLSTATE[42000]: Syntax error or access violation: 1091 Can't DROP 'vacation_notification_pkey'; check that column/key exists caused by ALTER TABLE `vacation_notification` DROP FOREIGN KEY vacation_notification_pkey
    

    So I manually created a foreign key with that name, and then setup.php was able to complete successfully. Problem solved, but I think it does mean that the SQL commands in the upgrade script(s) need a look.

    Then I noticed something that I haven't been able to fix. In the footer, it still shows the version as 3.3.8. The version in config.inc.php is 3.3.13, and I was not able to find 3.3.8 anywhere in the repo or the database.

    opened by elyograg 4
  • Proxy url rewrite support etc

    Proxy url rewrite support etc

    See https://github.com/postfixadmin/docker/issues/51

    Add configuration support for a 'base url' for PostfixAdmin - in case it's being hidden behind some sort of reverse proxy

    This would rewrite any URLs in template(s) and any redirects we do.

    opened by DavidGoodwin 0
  • Database collation change after upgrade - need of UTF8

    Database collation change after upgrade - need of UTF8

    We have tables and mysql set to UTF8 for many years.

    # cat /etc/my.cnf
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    bind_address=127.0.0.1 
    #character
    init_connect='SET collation_connection = utf8_unicode_ci'
    init_connect='SET NAMES utf8'
    character-set-server=utf8
    collation-server=utf8_unicode_ci
    skip-character-set-client-handshake
    

    Upgrade to 3.1.1 changes collation from utf8_czech_ci to latin1_general_ci:

    Before upgrade

    DROP TABLE IF EXISTS `admin`;                                                                       
    /*!40101 SET @saved_cs_client     = @@character_set_client */;                                      
    /*!40101 SET character_set_client = utf8 */;                                                        
    CREATE TABLE `admin` (                                                                              
      `username` varchar(255) COLLATE utf8_czech_ci NOT NULL DEFAULT '',                                
      `password` varchar(255) COLLATE utf8_czech_ci NOT NULL DEFAULT '',                                
      `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',                                        
      `modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',                                       
      `active` tinyint(1) NOT NULL DEFAULT '1',                                                         
      PRIMARY KEY (`username`)                                                                          
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci COMMENT='Postfix Admin - Virtual Admins';
    /*!40101 SET character_set_client = @saved_cs_client */;
    

    After upgrade

    DROP TABLE IF EXISTS `admin`;
    /*!40101 SET @saved_cs_client     = @@character_set_client */;
    /*!40101 SET character_set_client = utf8 */;
    CREATE TABLE `admin` (
      `username` varchar(255) COLLATE latin1_general_ci NOT NULL,                                               
      `password` varchar(255) COLLATE latin1_general_ci NOT NULL,                                               
      `created` datetime NOT NULL DEFAULT '2000-01-01 00:00:00',                                                
      `modified` datetime NOT NULL DEFAULT '2000-01-01 00:00:00',                                               
      `active` tinyint(1) NOT NULL DEFAULT '1',
      `superadmin` tinyint(1) NOT NULL DEFAULT '0',                                                             
      `phone` varchar(30) CHARACTER SET utf8 NOT NULL DEFAULT '',                                               
      `email_other` varchar(255) CHARACTER SET utf8 NOT NULL DEFAULT '',                                        
      `token` varchar(255) CHARACTER SET utf8 NOT NULL DEFAULT '',                                              
      `token_validity` datetime NOT NULL DEFAULT '2000-01-01 00:00:00',                                         
      PRIMARY KEY (`username`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci COMMENT='Postfix Admin - Virtual Admins';  
    /*!40101 SET character_set_client = @saved_cs_client */;
    

    I think that as email adresses might contain UTF8 characters, see https://www.rfc-editor.org/rfc/rfc6532#section-3.2, we need to have tables in UTF8 too. The very same is with the domain. I guess domain might contain UTF8 characters now https://www.rfc-editor.org/rfc/rfc6532#section-3.2

    opened by davidhrbac 1
  • Adding at alias/email address with @ symbol in the local part causes error

    Adding at alias/email address with @ symbol in the local part causes error

    Hello,

    PostfixAdmin does not check if a user adds a second @ in the localpart of the email address.

    If the user does it for an email account then the system pops up with the error: Regex check failed.

    Eg. Regex check failed for [email protected]@abc.eu

    I could solve it by adding this code in the functions.php file, inside the function "check_email":

        if (substr_count($ce_email,"@") != 1) {
           return sprintf("Please, do not insert the '@' (at) symbol.", htmlentities($email));
        }
    
        if (substr_count($email,"@") != 1) {
           return sprintf("Please, do not insert the '@' (at) symbol.", htmlentities($email));
        }
    

    The main issues, however, happens with the aliasses: If the user adds a second @ in the local part, unless after the "at" symol there is the same domain name of the chosen domain, PA produces a 500 error in the console and a blank page. The check I added is not run so the problem is before the call to check_email.

    Thank you for your time.

    Regards, NL

    opened by NicoloLazzaroni 0
  • Vacation addresses with

    Vacation addresses with "noreply" in cannot be used with vacation settings

    We have a [email protected] address which has a vacation on to tell users that they should not use this email address.

    This used to work in a very old version of PostfixAdmin but does not at least under 3.2 and 3.3 because of the check in vacation.pl in the check_and_clean_from_address subroutine.

    I do agree that there should be a check here for the real from address, but the check appears to happen here with the to address for some reason. My vacation.log file shows:

    2022/11/07 15:44:33 DEBUG> /var/spool/vacation/vacation.pl:581 main:: - Script argument SMTP recipient is : 'noreply#[email protected]' and smtp_sender : '[email protected]'
    2022/11/07 15:44:33 DEBUG> /var/spool/vacation/vacation.pl:614 main:: - Converted autoreply mailbox back to normal style - from noreply#[email protected] to [email protected]
    2022/11/07 15:44:33 DEBUG> /var/spool/vacation/vacation.pl:624 main:: - Email headers have to: '[email protected]' and From: 'Test User <[email protected]>'
    2022/11/07 15:44:33 DEBUG> /var/spool/vacation/vacation.pl:564 main::check_and_clean_from_address - sender [email protected] contains noreply - will not send vacation message
    

    There may be a complication because we're also processing via amavis, so perhaps that's mangling some from/to addresses here?

    Unfortunately, there doesn't appear to be a way to override the list of "bad" addresses because there is a hard-coded list that is ORd with the configuration setting for custom noreply patterns.

    opened by bittylicious 0
  • Forward admin users merge

    Forward admin users merge

    .../public/users/edit-alias.php renamed to .../public/edit-forward.php and modified so admins can use it too. As was done at .../public/user/vacation.php and .../public/vacation.php

    .../public/users/edit-forward.php added. This provides a reference to .../public/edit-forward.php. .../public/edit-forward.php uses .../templates/edit-forward.tpl as template this was .../templates/edit-alias.tpl

    This allows .../public/user/edit-alias.php and .../templates/edit-alias.tpl to be dropped

    Made changes in .../templates/list-virtual_mailbos.tpl , .../templates/user_menu.tpl and .../config/menu.conf so that they now cause .../public/edit-forward .php is called for both users and admins.

    TODO .../public/edit-forward.php to use templates/editform.tpl at David Goodwin's request to reduce the number of templates.

    opened by Jan-Kruis 1
Releases(postfixadmin-3.3.13)
  • postfixadmin-3.3.13(Dec 8, 2022)

    Fixes :

    • https://github.com/postfixadmin/postfixadmin/issues/690
    • https://github.com/postfixadmin/postfixadmin/issues/687 ( thanks @stefanomarty )

    Which were from some MySQL collation changes missing from the 3.3 branch and a related fix for what was MariaDB only syntax (now ought to work for MySQL too) (related to the collation fixes).

    See also https://github.com/postfixadmin/postfixadmin/compare/postfixadmin-3.3.12...postfixadmin-3.3.13

    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.3.12(Dec 4, 2022)

    • psalm and phpcs formatting fixes
    • Update smarty (4.3.0)
      • (this includes a smarty security fix that ought not affect PostfixAdmin).
      • includes fixes for PHP 8.1 and also #541
    • fixes #632 (passing a null value into htmlentities)
    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.3.11(Mar 2, 2022)

  • postfixadmin-3.3.10(Aug 9, 2021)

    • Merge password expiration fixes from https://github.com/postfixadmin/postfixadmin/pull/493
    • Remove html readonly attribute from user's vacation page to/from selectors.
    • vacation.pl - allow smtp helo to be specified (see https://github.com/postfixadmin/postfixadmin/pull/495)
    • Security fix - ClickJacking protection (thanks @huntr-helper / @ranjit-git) (see https://github.com/postfixadmin/postfixadmin/issues/523)
    • Security fix (low risk) - Improve randomness with PFA_token for CSRF protection (thanks @michaellrowley)
    • Fix viewlog to allow admins to see all domains (thanks @pgimalac, https://github.com/postfixadmin/postfixadmin/issues/516)
    • Disable password autocompletion in edit forms (thanks @gabrielfin, see https://github.com/postfixadmin/postfixadmin/pull/510)

    (a previous 3.3.10 release didn't include a change to the version number in config.inc.php ... sorry)

    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.3.9(May 12, 2021)

    • Improve Ukrainian language (ua.lang) (thanks: andrew.kudrinov)
    • Ensure we update timestamp fields (created / modified) when performing db operations, see: https://github.com/postfixadmin/postfixadmin/issues/469
    • Add domain_admins.id pk column for non-sqlite users, see: https://github.com/postfixadmin/postfixadmin/issues/475
    • Add fix for MySQL error where a default datetime value in the domain field breaks the upgrade.php db schema update, see https://github.com/postfixadmin/postfixadmin/issues/489 (probably only MySQL 8+)
    • Bug fix quota levels (now user configurable again; thanks @csware, see https://github.com/postfixadmin/postfixadmin/commit/bfc7af5c8efe2a68c47286cc870b56cb4f929a3f
    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.3.8(Mar 4, 2021)

    • Fix invalid template referenced in broadcast-message.php; see https://github.com/postfixadmin/postfixadmin/issues/465
    • Fix PostgreSQL boolean issue in setup (unable to add superuser); see https://github.com/postfixadmin/postfixadmin/issues/461
    • Fix SQL error on password change; see https://github.com/postfixadmin/postfixadmin/issues/456
    • Add/improve Ukrainian language (thanks: andrew.kudrinov)
    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.3.7(Feb 17, 2021)

    • Fix issue with setup.php referencing function that wasn't in 3.3.6 release ( see https://github.com/postfixadmin/postfixadmin/issues/454 )
    • Slightly improved psalm checks (static analysis)
    • Update CHANGELOG and config.inc.php version.
    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.3.5(Jan 27, 2021)

    Version 3.3.5 - 2021/01/27

    • Fix include path for password-change.php and improve UI for password-recover / password-change (nav bar was missing, remove table layout, fix labels not visible) (see https://github.com/postfixadmin/postfixadmin/issues/430)
    • Fix users/edit-alias to remove unnecessary space (see https://github.com/postfixadmin/postfixadmin/issues/442)
    • Improve documentation
    • Improve password length check example in config.inc.php (see https://github.com/postfixadmin/postfixadmin/issues/423)
    • Improve ADDITIONS/update_quota.pl (update to use quota2 table)
    • Check for some config setting, and do not error if they are not set (see https://github.com/postfixadmin/postfixadmin/issues/437)
    • Add pt-pt (portugese) translation (thanks Numo Carrilho/Nunix)
    • Fix missing template variable 'domain_selected'
    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.3.4(Jan 19, 2021)

    • Fix forgot-password (theme + trying to use class before autoload registered) (see //github.com/postfixadmin/postfixadmin/issues/427)
    • Fix PHP 8.0 issues (string{} offset in CLI, psalm warning about string + int in MailboxHandler)
    • Add PHP 8.0 to travis build + fix travis build
    • Fix editform to add linefeeds on for e.g. alias editing (see https://github.com/postfixadmin/postfixadmin/pull/424)
    • Fix mysql_crypt password hash - not all MySQL variants have RANDOM_BYTES function, so use our PHP based salt instead. (see https://github.com/postfixadmin/postfixadmin/issues/422)
    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.3.3(Jan 14, 2021)

  • postfixadmin-3.3.2(Jan 13, 2021)

    • Slightly improved documentation (See DOCUMENTS/HASHING.md)
    • Fix issue with vacation's not saving/working, change to support date AND time (previously just date).
    • Improve setup.php for existing users (more helpful prompt if their setup_password hash is in the old format).
    • Possible improvements for Debian packages
    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.3.1(Jan 11, 2021)

    Bug fix release based on feedback from 3.3.0.

    Should resolve issues with the new theme not appearing (if you had theme_css defined in your config) and the CLI not working.

    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.3.0(Jan 9, 2021)

    • Change of theme (bootstrap)
    • Security improvements (setup.php)
    • Change of internal database routines (moved to use PHP's PDO)
    • Various improvements and bug fixes (psalm static analysis)

    Users moving to v3.3.0 will find their existing setup_password will no longer work, and will need regenerating - either using the form on https://youriste.com/postfixadmin/setup.php or by using something like :

    php -r 'echo password_hash("topSecretPassword", PASSWORD_DEFAULT);'

    which will output something like : $2y$10$sYSaSQecc6kSs..........oyn.ttQxtKIUPV/q8eS6

    `

    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.2.4(Apr 17, 2020)

    Postfixadmin 3.2.4 - 2020/04/17

    • Upgrade Smarty (v3.1.35), see https://github.com/smarty-php/smarty/releases/tag/v3.1.35
    • Fix issues with quota (cli mailbox creation)
    • Improve database compatability (row->r).
    Source code(tar.gz)
    Source code(zip)
  • postfixadmin-3.2.3(Apr 17, 2020)

    • Upgrade Smarty (v3.1.33, upstream security fix), see https://github.com/postfixadmin/postfixadmin/commit/907bd7ee4632f87aec723e709e198bbf48ab6fbe
    • Fix SQLite paging issues, see https://github.com/postfixadmin/postfixadmin/issues/161 and https://github.com/postfixadmin/postfixadmin/issues/87
    • Fix postfixadmin-cli, see https://github.com/postfixadmin/postfixadmin/issues/296
    Source code(tar.gz)
    Source code(zip)
Owner
PostfixAdmin
A web ui for managing mailboxes/aliases for Postfix
PostfixAdmin
A Laravel package to check if you can send e-mail through a given mailserver in name of a given e-mail address

A Laravel package to check if you can send e-mail through a given mailserver in name of a given e-mail address Mail spf checker A Laravel package to c

Dieter Coopman 110 Dec 16, 2022
Provides a clean and simple way to configure the WordPress-bundled PHPMailer library, allowing you to quickly get started sending mail through a local or cloud based service of your choice

WP PHPMailer provides a clean and simple way to configure the WordPress-bundled PHPMailer library, allowing you to quickly get started sending mail through a local or cloud based service of your choice.

Itineris Limited 61 Dec 6, 2022
Mail Web is a Laravel package which catches emails locally for debugging

Mail Web is a Laravel package which catches emails locally for debugging Installation Use the package manager composer to install Mail Web. composer r

Appoly 64 Dec 24, 2022
Bounce Mail Handler for PHP | This is a "reboot" of PHPMailer-BMH from WorxWare.

PHP 7.0+ Support Composer & PSR-0 Support PHPUnit testing via Travis CI (TODO: more tests needed) PHP-Quality testing via SensioLabsInsight (TODO: mor

Lars Moelleken 43 Jan 7, 2023
:envelope: E-Mail Address Validator (syntax, dns, trash, typo)

✉️ E-Mail Address Validator for PHP Warning The best way to validate an e-mail address is still to send a duplicate opt-in-mail, when the user clicks

Lars Moelleken 41 Dec 25, 2022
Mail sending module for Mezzio and Laminas MVC with support for file attachment and template email composition

This module provides an easy and flexible way to send emails from Mezzio and Laminas MVC applications (formerly known as Zend Expressive and Zend MVC). It allows you to pre-configure emails and transports, and then send those emails at runtime.

null 82 Jan 16, 2022
Laravel Mail Credentials switcher for Budget Laravel Applications

Laravel Mail Switcher Laravel Mail Credentials Switcher is a library which helps you to: Manage your Mail Service Credentials Configure the Laravel's

(Seth) Phat Tran 34 Dec 24, 2022
Laravel Mail Catcher Driver

Laravel Mail Catcher Driver This package include a new mailbase driver which will catch all the sent emails and save it to the database. It then expos

Tauqeer Liaqat 94 Aug 30, 2022
💌 Mail app for Nextcloud

Nextcloud Mail ?? A mail app for Nextcloud Why is this so awesome? ?? Integration with other Nextcloud apps! Currently Contacts, Calendar & Files – mo

Nextcloud 684 Dec 26, 2022
Crud PHP 8 com Form E-mail

Crud com PHP 8 PDO Login - Cadastro de Usuários - Edição - Deleção - Adição | Formulário envio de e-mail Para rodar o Crud é preciso instalar um servi

Isaias Oliveira 4 Nov 16, 2021
Simple mail sending by PHPMailer and Create your local system.

Simple mail sending by PHPMailer and Create your local system. Send mail zero of cost and also send Attachment like Photo, pdf and multiple files. You should be create a login and verify two steps authentication like OTP, verifications ?? link. PHPMailer make your dreams project eassy and simple also free of cost.

SUSHIL KUMBHAR 2 Dec 8, 2021
A testing package for intercepting mail sent from Laravel

Laravel Mail Intercept A testing package for intercepting mail sent from Laravel This testing suite intercepts Laravel Mail just before they are sent

Kirschbaum Development Group, LLC 91 Oct 18, 2022
Mail application developed with Symfony 5

Fakey-Mail Mail application developed with Symfony 5! Check out the requirements for info on how to launch the app. Check out the basic functionality

Mauro 2 Jun 21, 2022
✉️ Laravel Mail Explorer

Mailbook Mailbook is a Laravel package that lets you easily inspect your mails without having to actually trigger it in your application. View demo In

Max Hoogenbosch 88 Dec 29, 2022
Mail Api for fetch or send mails

flux-mail-api Mail Api for fetch or send mails Installation Native Download RUN (mkdir -p /%path%/libs/flux-mail-api && cd /%path%/libs/flux-mail-api

null 2 Dec 12, 2022
Mandrill mail driver for Laravel for version 6+

Laravel Mandrill Driver This package re-enables Mandrill driver functionality using the Mail facade in Laravel 6+. To install the package in your proj

Eng Hasan Hajjar 2 Sep 30, 2022
Send email across all platforms using one interface

Send email across all platforms using one interface. Table Of Content Requirements Installation Providers AmazonSES Mailgun Mailjet Mandrill Postmark

Omnimail 329 Dec 30, 2022
This package adds support for verifying new email addresses: when a user updates its email address, it won't replace the old one until the new one is verified.

Laravel Verify New Email Laravel supports verifying email addresses out of the box. This package adds support for verifying new email addresses. When

Protone Media 300 Dec 30, 2022
An AngularJS / Laravel app - Keyword Based Email forwarder | read/write emails through IMAP

@MailTree Simple mail forwarder. Based on the specific email body/subject keywords forward mails to the list of predefined users. Install Imap Install

Dren Kajmakchi 4 Aug 21, 2018