postfixadmin / postfixadmin Goto Github PK
View Code? Open in Web Editor NEWPostfixAdmin - web based virtual user administration interface for Postfix mail servers
Home Page: https://postfixadmin.github.io/postfixadmin
License: Other
PostfixAdmin - web based virtual user administration interface for Postfix mail servers
Home Page: https://postfixadmin.github.io/postfixadmin
License: Other
In the url /edit.php?table=mailbox after creating a new mailbox for a domain I get:
Warning: A non-numeric value encountered in /var/www/xx.com/model/MailboxHandler.php on line 202
Warning: Cannot modify header information - headers already sent by (output started at /var/www/xx.com/model/MailboxHandler.php:202) in /var/www/xx.com/edit.php on line 175
But it all is going well afterward
From Nginx error log:
2017/09/05 20:26:05 [error] 24177#24177: *6898 FastCGI sent in stderr: "PHP message: PHP Notice: Use of undefined constant page_size - assumed 'page_size' in /var/www/postfixadmin/viewlog.php on line 63" while reading response header from upstream, client: 192.168.1.1, server: zzz.no-ip.org, request: "GET /postfixadmin/viewlog.php HTTP/2.0", upstream: "fastcgi://unix:/run/php/php7.1-fpm.sock:", host: "zzz.no-ip.org", referrer: "https://zzz.no-ip.org/postfixadmin/list-virtual.php?domain=zzz.no-ip.org"
Line 63 of viewlog.php:
$query = "SELECT timestamp,username,domain,action,data FROM $table_log WHERE domain='$fDomain' ORDER BY timestamp DESC LIMIT " . intval($CONF[page_size]);
Please, correct intval($CONF[page_size])
, it must be intval($CONF['page_size'])
Hi,
When I added my first fetch email entry the 'Date' column on the page shows
2000-01-01 00:00:00
Just thought I'd ask if it has happened to anyone else.
I may have just done something wrong... 😮
Would you accept a PR that use PHP-CS-Fixer and Travis CI to enforce a consistent code style throughout the entire PHP code base ?
I believe this would make it easier to contribute, by avoiding a lots of annoying useless diff (such as trailing whitespaces) and by automating some feedback on incoming PR.
If you agree on the principle, I could suggest PHP-CS-Fixer rules, or you choose them yourself and let me implement the rest via composer and Travis.
In the postfixadmin config.inc.php i use SQLite for local database.
Now i want to activate the plugin vacation.pl but can not set up there sqlite.
Hi !
I just stumbled upon this Git repo of Postfixadmin ...
It's great, but I've must have failed to see any warnings about the fact that the
Therefore ... install / upgrade fails miserably, without much warnings :(
Just to be sure the infos gets somewhere here ;)
The real trouble is everything seems to run fine ... even the upgrade.php ... which does nothing at all ... therefore postfixadmin fails :(
The postfixadmin package in gentoo repository is too old and not maintained and going to be removed from the directory. However postfixadmin is noted in gentoo mail server guide. Can someone maintane the project in gentoo portage dir ?
as super admin its possible to set max qoutas pr mailbox, this works, but is imho not very flexible pr domain :(
i like to change to be super admin assign say 5GB to one domain, and then domain owner can use this size in total for all mailboxes in total, so it can be 5 mailboxes as 1GB or 1 mailbox with 2GB and one last with 3GB, the old system it would be max mailbox with max quotas, its from super admin point of view to restrictive
sorry if domain based quotas is solved
Hello, first of all I got to say thank you for the resolution with the mysql issue for the vacation feature I wrote this morning, very quick and easy. But now I have another issue and I can't figure out how to solve it. When I activate the vacation feature for a mailbox and I try to send a mail to it, I get a message back that says:
Mar 27 17:58:50 mail postfix/smtp[57684]: C428196BEB: to=mailbox#[email protected], relay=none, delay=0.03, delays=0.01/0/0.02/0, dsn=5.4.6, status=bounced (mail for autoreply.domain.tld loops back to myself)
postfixadmin autoreply feature used to work like a charm without the vacation.pl plugin, since I had to update the php and mysql version and maybe that screw up something. Waiting for your kindly response!
PFA: 3.0.2
DB: postgres
Debian 8.0
I do have alias Domains configured.
No matter what I do: adding a fetchmail directive always ends up in an error in a select statement, which is in the strict sense correct, since there is no ID submitted, and cannot be since there are no entries in the DB. (strange thing is I do never see a failed insert.,,,)
corresponding log lines:
2017-02-28 00:40:36 UTC [7261-5] dbuser@postgres_db ERROR: invalid input syntax for integer: "" at character 1002
2017-02-28 00:40:36 UTC [7261-6] dbuser@postgres_db STATEMENT: SELECT id,domain,mailbox,src_server,src_auth,src_user,src_password,src_folder,poll_time,CASE fetchall WHEN 't' THEN '1' WHEN 'f' THEN '0' END as fetchall,CASE fetchall WHEN 't' THEN 'YES' WHEN 'f' THEN 'NO' END as _fetchall,CASE keep WHEN 't' THEN '1' WHEN 'f' THEN '0' END as keep,CASE keep WHEN 't' THEN 'YES' WHEN 'f' THEN 'NO' END as _keep,protocol,CASE usessl WHEN 't' THEN '1' WHEN 'f' THEN '0' END as usessl,CASE usessl WHEN 't' THEN 'YES' WHEN 'f' THEN 'NO' END as _usessl,CASE sslcertck WHEN 't' THEN '1' WHEN 'f' THEN '0' END as sslcertck,CASE sslcertck WHEN 't' THEN 'YES' WHEN 'f' THEN 'NO' END as _sslcertck,date,returned_text,CASE active WHEN 't' THEN '1' WHEN 'f' THEN '0' END as active,CASE active WHEN 't' THEN 'YES' WHEN 'f' THEN 'NO' END as _active,TO_CHAR(modified, 'YYYY-mm-dd') AS modified, modified AS _modified,1 as _can_edit,1 as _can_delete FROM fetchmail WHERE 1=1 AND domain IN ('xxxxxxxxxxxxxxxxx.net','xxxx.org','xxxxxxx.de') AND ( id='' ) ORDER BY domain, mailbox
Postfix Admin Setup Checker
Running software:
PHP version 7.0.15-0ubuntu0.16.04.4
Apache/2.4.18 (Ubuntu)
Checking for dependencies:
Magic Quotes: Disabled - OK
Depends on: presence config.inc.php - OK
Checking $CONF['configured'] - OK
Depends on: MySQL 4.1 - OK
(change the database_type to 'mysqli' in config.inc.php if you want to use MySQL)
Depends on: PostgreSQL - OK
(change the database_type to 'pgsql' in config.inc.php if you want to use PostgreSQL)
Error: Can't connect to database
Please edit the $CONF['database_*'] parameters in config.inc.php.
DEBUG INFORMATION:
MySQL 3.x / 4.0 functions not available! (php5-mysql installed?)
database_type = 'mysql' in config.inc.php, are you using a different database?
Hi,
It works on Brave, and Firefox. But not Chrome.
After connection, when I want to click on some links, I am automatically redirected to postfixadmin.example.com/login.php
postfixadmin: 3.0.2
OS: ArchLinux x64
Chrome: 60.0.3080.6
nginx: 1.11.13
php-fpm: 7.1.4
mysq: Ver 15.1 Distrib 10.1.22-MariaDB, for Linux (x86_64) using readline 5.1
"Invalid domain name schönwetterwolke.at, fails regexp check"
Please, edit the regexp filter for adding domains to allow domains with UTF-8 encoding. Postfix [1] enabled the utf8-support by default from version >= 3.0. So it would be great, if postfixadmin (functions.inc.php:203) allows creating such domains too. UI should also be checked afterwards to ensure error free usage!
[1] http://www.postfix.org/SMTPUTF8_README.html
[2] https://stackoverflow.com/questions/14313849/how-to-validate-internationalized-domain-names
https://github.com/postfixadmin/postfixadmin/blob/master/DOCUMENTS/UPGRADE.txt
UPGRADE.txt : "1. Backup the Database" - small issue with syntax for mysqldump:
mysqldump -a -u root -p > /tmp/postfixadmin-backup.sql
"-a " or "-A"?
"-a" is not recognized on my system. Is this outdated/deprecated syntax?
"-A" is ALL databases (see --all-databases
). Which I assume is what you wanted in document?
Ref: https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html#mysqldump-syntax
"3. Change permissions"
chown -R www-data templates_c/
no such folder under master now (placeholder)? If fresh install from git clone the user will not have it.
Maybe:
sudo mkdir postfixadmin-(version)/templates_c &&
sudo chmod 640 postfixadmin-(version)/templates_c &&
sudo chown www-data:www-data postfixadmin-(version)/templates_c
"4. Configure":
No mention of config.local.php
use.
This would seem appropriate since this is about upgrading.
If it does not exist the freshly installed code complains with a 'not found'..
I believe this document needs a look at anyway as its dated 2011 in master. Might be other problems with it...?
When the browser doesn't supply the HTTP_ACCEPT_LANGUAGE header, language setting are ignored and postfixadmin always defaults to the $CONF['default_language'] setting.
IMO the desired behavior should not be dependent on the presence of the HTTP_ACCEPT_LANGUAGE header. Eg:
`
function check_language ($use_post = 1) {
global $supported_languages; # from languages/languages.php
$lang = Config::read('default_language');
$lang_array = array();
if (safecookie('lang')) {
array_unshift($lang_array, safecookie('lang')); # prefer language from cookie
}
if ( $use_post && safepost('lang')) {
array_unshift($lang_array, safepost('lang')); # but prefer $_POST['lang'] even more
}
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
array_merge($lang_array,preg_split ('/(\s*,\s*)/', $_SERVER['HTTP_ACCEPT_LANGUAGE']));
}
for($i = 0; $i < count($lang_array); $i++) {
$lang_next = $lang_array[$i];
$lang_next = strtolower(trim($lang_next));
$lang_next = preg_replace('/;.*$/', '', $lang_next); # remove things like ";q=0.8"
if(array_key_exists($lang_next, $supported_languages)) {
$lang = $lang_next;
break;
}
}
return $lang;
}
`
Hello,
I use postfixadmin since 2 years and it's great, but i need some more functions.
I stored about the postfixadmin gui some domains as relay and I want to configure postfix with mysql-statements to relay the stored domains to the real smtp server, but i can't find some mysql-statements on github. Please add some statements an githib for right relay configuration.
I want to fillout this postfix configuration settings about mysql-statements.
Next, it's great if you could implement a mask to configure some relocated settings for user@domain, users or catch all domains as example @Domain
faq to relocated_maps http://www.postfix.org/relocated.5.html
Volker
Hello all, I have encountered this issue with postfixadmin 2.3.5.
This happens when I try to set an autoreply for a mail account
Php version is 5.6.30 - debian wheezy
DEBUG INFORMATION:
Invalid query: Field 'cache' doesn't have a default valuePlease check the documentation and website for more information.
Could you guys help me to figure out how to fix it?
I think it came out when updating php and mysql version, could it be?
The SQL query to create the pagebrowser ("a-h | j-o | p-z") errors out with a syntax error when using sqlite.
Originally reported at https://sourceforge.net/p/postfixadmin/discussion/676076/thread/ac0ae9ce/ - check there for the details.
Workaround: increase $CONF['page_size
]` to avoid the need for a page browser.
Hello,
I have Postfix Admin 3.1 version installed on CentOS 7
The Super admin accounts work just fine.
The admin accounts don't see any domains even if I select domains for those accounts
As a normal admin account i get this error messages:
On the Postfixadmin Virtual List page: You don't have permissions for any domains.
On the Postfixadmin View Log: Unable to find the logs!
If I run /setup.php?debug=1 it looks fine
"""Running software:
PHP version 5.4.16
Apache/2.4.6 (CentOS) OpenSSL/1.0.1e-fips PHP/5.4.16
Checking for dependencies:
Magic Quotes: Disabled - OK
Depends on: presence config.inc.php - OK
Checking $CONF['configured'] - OK
Warning: config.local.php - NOT FOUND
It's Recommended to store your own settings in config.local.php instead of editing config.inc.php
Create the file, and edit as appropriate (e.g. select database type etc)
Depends on: MySQL 3.23, 4.0 - OK
Depends on: MySQL 4.1 - OK
Depends on: SQLite - OK
(change the database_type to 'sqlite' in config.local.php if you want to use SQLite)
Testing database connection (using mysqli) - OK
Depends on: session - OK
Depends on: pcre - OK
Depends on: multibyte string - OK
Depends on: IMAP functions - OK
Everything seems fine... attempting to create/update database structure
CREATE TABLE IF NOT EXISTS config ( `id` int(11) not null auto_increment primary key, `name` VARCHAR(20) /*!40100 CHARACTER SET latin1 */ NOT NULL DEFAULT '', `value` VARCHAR(20) /*!40100 CHARACTER SET latin1 */ NOT NULL DEFAULT '', UNIQUE name ( `name` ) ) ENGINE = MYISAM COMMENT = 'PostfixAdmin settings'
Database is up to date""""
I am trying to link postfixadmin-cli (v0.2 from debian unstable) to WHMCS hooks. In which case, I'll be using the
command:
postfixadmin-cli mailbox add
This should execute unattended, but when I run
postfixadmin-cli mailbox add [email protected] --name 'testname' --password 'testpW01' --quota 10000
the command returns:
Error: The passwords that you supplied don't match!
Am I missing an option?
index.php
contains:
@include_once('config.inc.php'); # hide error message because only $CONF['configured'] is checked here
I did spend 20 minutes searching for a blank page (HTTP status code 500) when accessing the postfixadmin index page. Nothing was logged in the error logs.
In the end I removed the @
to get the error logged to the error log, which was a permission issue with debian's dbconfig.inc.php (since I'm using different users+groups for different tools here). Not having this @
there would instantly have given me a hint.
It will be good to allow users different senders. For example I have an alias from [email protected]
to [email protected]
. The user [email protected]
should be able to send emails from email address [email protected]
.
How I solved it:
I created a table and changed sql/sender-login-maps.cf
. It would be nice to configure this table via postfixadmin.
The table:
CREATE TABLE sender_alias (
username VARCHAR(255) NOT NULL,
sender VARCHAR(255) NOT NULL,
PRIMARY KEY (username, sender)
)
The new query for sql/sender-login-maps.cf
:
SELECT sender FROM (SELECT s.username, sender FROM sender_alias as s JOIN mailbox as m ON m.username = s.username AND m.active = 1 UNION SELECT username, username as sender FROM mailbox WHERE active = 1) AS stmt WHERE username = '%s'
If the user don't need sender aliases this table does not have to be filled for him.
Now we have latin1_swedish_ci, it's not very good.
ALTER TABLE table CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci
Will the next version of Postfixadmin address the following issues?
PHP Warning: Cannot assign an empty string to a string offset in /postfixadmin/variables.inc.php on line 31
PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; cNav_bar has a deprecated constructor in /postfixadmin/list-virtual.php on line 325
So far, it appears these are the only issues.
hi,
i have problem to connect postfixadmin to mysql-i server not listening on tcp.
with mysql driver you can specify connection to socket with config option:
config.local.php:
$CONF['database_type'] = 'mysql'; $CONF['database_host'] = ':/var/run/mysqld/mysqld_sys.sock';
with mysqli, i must modify code.
config.local.php:
$CONF['database_type'] = 'mysqli'; $CONF['database_socket'] = '/var/run/mysqld/mysqld_sys.sock';
functions.inc.php:1274:
$link = @mysqli_connect ($CONF['database_host'], $CONF['database_user'], $CONF['database_password'], $CONF['database_name'], $CONF['database_port'], $CONF['dat abase_socket']) or $error_text .= ("<p />DEBUG INFORMATION:<br />Connect: " . mysqli_connect_error () . "$DEBUG_TEXT");
pls add support for socket connection in mysql-i functions.
tnx
All sane password hashing schemes in postfixadmin are available only via dovecotpw binary, which is neither practical nor desirable at times for various reasons. I have implemented a small fix to the pacrypt function to improve it.
Alas it is not possible to use hash schemes like scrypt or blowfish for interoperability with other sw (e.g. dovecot or sogo) as the standard linux crypt function does not (and will not) support them.
Anyway, here is a quickfix to support sha512.b64 password scheme without the dovecot dependency (with cryptographically secure random function and compatibility for the old MD-5 Crypt password hashing scheme included for seamless transition) :
... elseif (strcmp($CONF['encrypt'],'sha512.b64') == 0) {
if (!function_exists('random_bytes') || !function_exists('crypt') || !defined('CRYPT_SHA512') || !function_exists('mb_substr')) {
die("sha512.b64 not supported!");
}
if (!$pw_db) {
$salt = mb_substr(rtrim(base64_encode(random_bytes(16)),'='),0,16,'8bit');
$password = '{SHA512-CRYPT.B64}'.base64_encode(crypt($pw,'$6$'.$salt));
} else {
$password="#Thepasswordcannotbeverified";
if (strncmp($pw_db,'{SHA512-CRYPT.B64}',18)==0) {
$dcpwd = base64_decode(mb_substr($pw_db,18,NULL,'8bit'),true);
if ($dcpwd !== false && !empty($dcpwd) && strncmp($dcpwd,'$6$',3)==0) {
$password = '{SHA512-CRYPT.B64}'.base64_encode(crypt($pw,$dcpwd));
}
}
elseif (strncmp($pw_db,'{MD5-CRYPT}',11)==0) {
$dcpwd = mb_substr($pw_db,11,NULL,'8bit');
if (!empty($dcpwd) && strncmp($dcpwd,'$1$',3)==0) {
$password = '{MD5-CRYPT}'.crypt($pw,$dcpwd);
}
}
}
}
Also the login function, should verify the passwords with hash_equals function and not standard string comparison:
public function login($username, $password) {
$result = false;
$username = escape_string($username);
$table = table_by_key($this->db_table);
$active = db_get_boolean(True);
$query = "SELECT password FROM $table WHERE " . $this->id_field . "='$username' AND active='$active'";
$result = db_query ($query);
if ($result['rows'] == 1) {
$row = db_array ($result['result']);
$crypt_password = pacrypt ($password, $row['password']);
$result = hash_equals($row['password'], $crypt_password);
}
return $result;
}
Random_bytes (PHP 7) and hash_equals (PHP 5.6) functions are relatively new additions to PHP, but they can be easily implemented with polyfills for older PHP versions to maintain compatibility.
I can supply these as well if interested.
MySQL packages was replaced by MariaDB. PHP5 packages also be removed and change to PHP7, any way to make those work together?
libmail-sender-perl package was removed from Debian Stretch, probably because Mail::Sender module is deprecated. This makes vacation.pl unusable on Debian Stretch.
Please update vacation.pl script to use a supported module to send mails.
I try to upgrade an existing posfixadmin install to the most recent GIT version, but when executing setup.php?debug=1 I keep getting this error:
Everything seems fine... attempting to create/update database structure
CREATE TABLE IF NOT EXISTS config ( `id` int(11) not null auto_increment primary key, `name` VARCHAR(20) /*!40100 CHARACTER SET latin1 */ NOT NULL DEFAULT '', `value` VARCHAR(20) /*!40100 CHARACTER SET latin1 */ NOT NULL DEFAULT '', UNIQUE name ( `name` ) ) ENGINE = MYISAM COMMENT = 'PostfixAdmin settings'
Updating database:
- old version: 1282; target version: 1835
(If the update doesn't work, run setup.php?debug=1 to see the detailed error messages and SQL queries.)
updating to version 1283 (MySQL and PgSQL)...
DEBUG INFORMATION:
Invalid query: Table 'mail.admin' doesn't exist
Check your error_log for the failed query.
My mailserver is working perfectly, but I can't get postfixadmin to work. Can you help me?
I use PHP7, MySQL 5.7.12-0ubuntu1 on Ubuntu 16.04
Operating System: Centos 7
PostfixAdmin: latest stable
Postfix: 2.10.1
SQLite: 3.7.17
Apache: 2.4.6
php: 5.4.16
The script is not creating all table rows on the first set up.
I get the error message:
Invalid query: no such column: phone
Invalid query: no such column: email_other
caused by query: SELECT username,password,password as password2,phone,email_other,CASE superadmin WHEN '1' THEN '1' WHEN '0' THEN '0' END as superadmin,CASE superadmin WHEN '1' THEN 'YES' WHEN '0' THEN 'NO' END as _superadmin,coalesce(domains,'') as domains,coalesce(__domain_count,0) as domain_count,CASE active WHEN '1' THEN '1' WHEN '0' THEN '0' END as active,CASE active WHEN '1' THEN 'YES' WHEN '0' THEN 'NO' END as _active,strftime(modified, '%Y-%m-%d') AS modified, modified AS _modified,1 as _can_edit,1 as _can_delete FROM admin LEFT JOIN ( SELECT count(*) AS __domain_count, group_concat(domain) AS domains, username AS __domain_username FROM domain_admins WHERE domain != 'ALL' GROUP BY username ) AS __domain on username = __domain_username
WHERE 1=1 AND ( username='[email protected]' ) ORDER BY username
The solution is to go to the SQLite table and add the missing fields.
Is this a definitive head we can fork off.. ??
I hate raising issues, but can we please migrate from SF to here.. and can help..
Maybe we can do awaya with the RPC call on focus on the root purpose..
Aad to do its postfix style.. in php..
Now I know in my heart that php is what I grew up on.. (smarty+dev)
And php5 was cool then..
python..
So I Want to work with postfixadmin.. and make the same DB work another way..
In my case golang, and stuff python, but the onlt cool things we can do in golang is play and have a lot of fun in ajax..
Now its up to the "designer" to go and dream up her system with the ladies..
But if we can have a "clean ajax" api.. then were in..
And the only way to do that is with a "clean slate".. sometimes...............
In the config file I set the encryption method for passwords as follows:
$CONF['encrypt'] = 'dovecot:SHA512-CRYPT';$CONF['encrypt'] = 'dovecot:SHA512-CRYPT';
However, after the successful creation of the superuser account it's not possible to login to postfixadmin.
Any ideas to get rid of that issue without degrading security by using the functional md5crypt?
After I upgraded PFA from 2.3.8 to 3.0.0 (today to 3.0.2) list-virtual.php is too slow. It took ~45s to load the list of mailboxes.
It seems like there is something wrong within the AliasdomainHandler (or other models). Attached you can find list-virtual.php with some breakpoints
list-virtual.php.debug.zip
Output is:
Thu, 16 Feb 2017 13:05:58 +0100: Point 0 - START
Thu, 16 Feb 2017 13:05:58 +0100: Point 1
Thu, 16 Feb 2017 13:05:58 +0100: Point 2
Thu, 16 Feb 2017 13:05:58 +0100: Point 2.0
Thu, 16 Feb 2017 13:06:02 +0100: Point 2.1
Thu, 16 Feb 2017 13:06:02 +0100: Point 2.2
Thu, 16 Feb 2017 13:06:08 +0100: Point 2.3
Thu, 16 Feb 2017 13:06:08 +0100: Point 2.4
Thu, 16 Feb 2017 13:06:13 +0100: Point 3
Thu, 16 Feb 2017 13:06:32 +0100: Point 4
Thu, 16 Feb 2017 13:06:32 +0100: Point 5
Thu, 16 Feb 2017 13:06:32 +0100: Point 6
Thu, 16 Feb 2017 13:06:42 +0100: Point 7
Thu, 16 Feb 2017 13:06:42 +0100: Point 8
Thu, 16 Feb 2017 13:06:42 +0100: Point 9 - FINISH
Setup is:
Webserver: 8 core 2.2GHz, 8GB RAM, Apache 2.4 + PHP 5.6 + PFA 3.0.2 (housing location 1)
Mailserver: 4 core 2.2Ghz, 4GB RAM, Postfix 3.1.2 with virtuals in MySQL, MariaDB 10.0.29 (housing location 2)
With PFA 2.3.8 it still works smoothly fast.
Can you please take a look? Or point me where to look for the error?
If you need me to provide more informations, please, do not hesitate to ask.
I just installed postfixadmin_3.1-1_all.deb from https://sourceforge.net/projects/postfixadmin/files/postfixadmin/postfixadmin-3.1/postfixadmin_3.1-1_all.deb
There is a reference to calendar.js in /usr/share/postfixadmin/templates/vacation.tpl, but the file is missing in /usr/share/postfixadmin/.
The same problem exists in postfixadmin_3.0.2-1_all.deb
Quick fix: copy /usr/share/postfixadmin/users/calendar.js to /usr/share/postfixadmin/calendar.js
In postfixadmin-3.1.tar.gz everything is ok.
With kind regards
Hannes
I wrote a change passwords in the roundcube plug-in, because don't know if postfix is use md5 encryption, so has been not modify the password and the system USES encryption mode matching.
thanks!
Hello
Is it possible to disable the clear password function in PostfixAdmin and other ...
Yours
Mz
This might not be spanner in the works guys, maybe a rachet.. sorry..
In my case I am using postfix as an "internal mailserver"..
Ie depts in a company can send things to each other on a lan..
Multi site.. but staffmail.example.com is where it is at..
I opted to use postfix, as .. the vacation.pl. .which is perl.. ohh tthe fun..
However as this is an integrated system,
I abandonded php a decade ago
and am now replacing the python2 code
in favour of golang..
So here's the stuff in golang, and will be trusted server on lan = minimal auth..
and depertmental maiboxes..
https://github.com/daffodil/go-mailkit
So my goals is to All in AJAX (my GUi=Pyqt4+phonegap)
= pfa = https://github.com/daffodil/go-mailkit/tree/master/postfixadmin
Ability to read mail
HUge Snags.. But atmo its all plain text password and read/only/ resanoable open system.. kinda.. like a pub with an open till.. and none of this silly barcode everything in + out.. faster and more fun.. styleee
In DOCUMENTS/DOVECOT.txt, a configuration is suggested for allowing Postfix to use Dovecot's authentication service, specifically:
# Uncomment this if you want Postfix to be able to do smtpd auth through dovecot
# At a minimum Postfix probably needs : smtpd_sasl_type = dovecot
# And additionally: smtpd_sasl_path = private/auth
#service auth {
# unix_listener /var/spool/postfix/private/auth {
# mode = 0660
# user = postfix
# group = postfix
# }
# user = postfix
# group = postfix
#}
IIUC, the last two lines before the outer closing brace have the entire auth service as their scope. This seems
un-necessary since these values will not be inherited by the unix_listener process defined for use by Postfix (which has process-specific settings for these properties) and
undesirable since these values will be used as defaults for other processes belonging to the auth service, and so may expose these processes to undesired access.
Unless I've misunderstood, it seems appropriate simply to remove those two lines from the suggested configuration.
It looks like Postfixadmin opens more than 45 new connections to the database for a single page without any real items. This is extremely slow, especially with external MySQL servers. Instead of using the existing connection, it creates a new one for each db_query
, escape_string
, …
There's a simple patch to fix this behavior: e28f3f5 (from this branch)
I've uploaded a backtrace without the patch here: pfa-backtrace.txt
I try extend custom fields by extend struct hook.
Database filed 'x_expire' is NULL by default value and have type: datatime;
function x_ext_mailbox($struct) {
$struct['x_expire'] = pacol(1, 1, 1, 'ts','x_expire','x_expiredate',0);
}
$CONF['mailbox_struct_hook'] = 'x_ext_mailbox';
How I can control update event, for replace entered empty or 0 value, to NULL record to database ?
For now if db filed have NULL value, used edit form show '0' in , and if i try update user data, have error of update database;
For search solution I added default value:
$struct['x_expire']['default'] = '2999-12-31';
But it fill at all users data 2999-12-31, instead of NULL.
And need write custom script that external connect to database and replace value 2999-12-31 to NULL
$CONF['mailbox_postedit_script'] = 'some_shell_script.sh';
How I can update result w/o use external postedit_script?
May be I can have some methods how redefine beforestore()
in config.local.php ?
public function store() {
if ($this->values_valid == false) {
$this->errormsg[] = "one or more values are invalid!";
return false;
}
if ( !$this->beforestore() ) {
return false;
Hello
Exist there an addon that adds a domain and email addresses to SOGo?
Many greetings
Mz
(reported by oftc_ftw on IRC)
fetchmail.pl assumes /var/run/fetchmail/ exists (and wants to place a lockfile there), so we should make sure it gets created.
We should also switch over to /run/fetchmail/
/run is a tmpfs nowadays, so we'll need a /usr/lib/tmpfiles.d/postfixadmin-fetchmail.conf with
d /var/run/fetchmail/ 750 fetchmail daemon -
(username and group probably needs to be adjusted per distribution, so we can "only" ship an example file)
In commit b6453c8 sqlite need strict version >= 3.12.0 - with older slqite versions postfixadmin not show any virtual mailboxes.
14:13 hmm, uppercase vs. lowercase?
14:32 der Bug betrifft also "nur" den Altbestand
21:01 ich hab die accounts per insert into ... select ... from vexim.table angelegt
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.