Commit Graph

36 Commits (ab666b6b7fb901621b53979262c334c9b5918fa4)

Author SHA1 Message Date
David Goodwin 43fb0bde77 log IP address for failed logins as well - see #105 7 years ago
Sylvain Tissot ffb84283c2
Harden password reset process
The improvements are:

- Die with an explicit message when a user is trying to reset his lost password and the option is disabled in config
- Redirect user to main page after password change using relative URL
- Don't leak info whether user exists or has recovery info defined
- Throttle password reset requests to prevent brute force attacks
- Show phone/alt email fields in mailbox/admin edit form only when the password reset option is enabled
- Make database upgrade code compatible with other databases types
- Use the existing password generator to generate OTP. It is now stored in database, unique to each user, valid only for 1 hour and can only by used once.
7 years ago
David Goodwin 8bb6000072 Merge pull request #60 from Vilican/master
Security fixes
7 years ago
Matyáš Koc 74c29f8a10 Handle logout in a new way (admin login) 7 years ago
Sylvain Tissot 9c9ba64a7f Allows a user or admin to reset his/her forgotten password with a code sent by email/SMS #18 7 years ago
Matyáš Koc 7de653db58 Added CSRF check to admin login 7 years ago
Christian Boltz 13cdd50d0a Add checks to login.php and cli to ensure database layout is up to date
- add check_db_version() to functions.inc.php
- add $min_db_version (needs to be updated at least before the release)
- call check_db_version in login.php, users/login.php and CLI - they'll
  error out if the database layout is outdated
- change setup.php to use check_db_version()



git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1853 a1433add-5e2c-0410-b055-b7f2511e0802
9 years ago
Christian Boltz 1d520423a9 login.php, users/login.php:
- trim() $fUsername - MySQL thinks "foo" == "foo  " (and therefore allows
  login as "foo@example.com " - but later we'll get funny "undefined index"
  problems in PFAHander->view()) when an admin wants to change the password


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1665 a1433add-5e2c-0410-b055-b7f2511e0802
11 years ago
Christian Boltz 9f062cf181 login.php, users/login.php
- error_log() failed login attemps
  https://sourceforge.net/p/postfixadmin/feature-requests/111/


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1600 a1433add-5e2c-0410-b055-b7f2511e0802
11 years ago
Christian Boltz fbc18ff993 login.php, common.php:
- when login.php is requested, logout the current admin/user
  https://sourceforge.net/p/postfixadmin/bugs/284/



git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1568 a1433add-5e2c-0410-b055-b7f2511e0802
11 years ago
Christian Boltz 1a79b2798e delete.php:
- require token for CSRF protection, see
  https://sourceforge.net/p/postfixadmin/bugs/269/

login.php, users/login.php:
- create token and store it in $_SESSION

templates/*:
- add token to all delete.php links

templates/list-virtual_alias_domain.tpl:
- change delete confirmation dialog to contain "from->target"


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1564 a1433add-5e2c-0410-b055-b7f2511e0802
11 years ago
Christian Boltz 6e2e132bac remove "postfixadmin.com" in comments in lots of files
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1558 a1433add-5e2c-0410-b055-b7f2511e0802
11 years ago
Christian Boltz d4a34b557d login.php:
- use AdminHandler to find out if the logged in user is a superadmin
- add hint about config.local.php in "unconfigured" warning
- move some lines around to match users/login.php


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1543 a1433add-5e2c-0410-b055-b7f2511e0802
11 years ago
Christian Boltz 91423b5baf login.php:
- use AdminHandler->login()
- don't escape_string() username and password



git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1486 a1433add-5e2c-0410-b055-b7f2511e0802
12 years ago
Christian Boltz 17911b75d2 functions.inc.php:
- pacrypt(): no longer escape_string() the result. This fixes
  https://sourceforge.net/tracker/index.php?func=detail&aid=3094804&group_id=191583&atid=937964

create-mailbox.php, password.php:
- escape_string() the pacrypt() result

login.php:
- simplify code to require one query less (this also removes the need 
  to escape_string() the password)

I also checked the other files using pacrypt() - they don't need 
escaping or already do it.



git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1397 a1433add-5e2c-0410-b055-b7f2511e0802
13 years ago
Christian Boltz b065366a91 Merge template for admin login and user login
login.php, users/login.php:
- set logintype=admin/user smarty variable
- cleanup: move smarty assignments outside of GET/POST handling - it's
  the same for both

users/login.php:
- do not pre-fill username on failed login

templates/login.tpl:
- merge in users_login.tpl
- add some {if} to handle the differences between admin and user login

templates/users_login.tpl:
- deleted

*.lang:
- mark pUsersLogin_username, pUsersLogin_password, pUsersLogin_language 
  and pUsersLogin_button as obsolete
- add some notes if pLogin_* and pUsersLogin differ


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1137 a1433add-5e2c-0410-b055-b7f2511e0802
13 years ago
Christian Boltz a7664eb548 login.php:
- remove outdated comment


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1131 a1433add-5e2c-0410-b055-b7f2511e0802
14 years ago
Christian Boltz 59dd7cb083 login.php:
- replaced tMessage with flash_error()

This commit is part of the huge cleanup patch by Dale Blount (lnxus@SF),
https://sourceforge.net/tracker/?func=detail&atid=937966&aid=3370510&group_id=191583


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1084 a1433add-5e2c-0410-b055-b7f2511e0802
14 years ago
David Goodwin cf22f1dfd4 reindent; give tMessage a default value (undefined var etc)
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@948 a1433add-5e2c-0410-b055-b7f2511e0802
14 years ago
Christian Boltz 4c912f1da8 list-virtual.php:
- hand over $search to smarty templates

templates/list-virtual_alias.tpl, templates/list-virtual_alias_domain.tpl:
- add search result highlighting

templates/list-virtual_mailbox.tpl:
- add search result highlighting
- move output of "Mailbox" / "Forward only" outside the foreach loop
  (was displayed once per mailbox alias target)

css/default.css:
- add style for ".searchresult"



git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@868 a1433add-5e2c-0410-b055-b7f2511e0802
14 years ago
Sebastian 9ddf15439f - fix some display errors after rev. 788, found and patch supplied by Jan-Kruis, thx.
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@791 a1433add-5e2c-0410-b055-b7f2511e0802
15 years ago
David Goodwin 9b0a8deb34 login.php: fix up html escaping etc
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@781 a1433add-5e2c-0410-b055-b7f2511e0802
15 years ago
Sebastian b1287d97e2 - big merge of Postfixadmin smarty into trunk
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@757 a1433add-5e2c-0410-b055-b7f2511e0802
15 years ago
Christian Boltz acb3d4799d login.php, index.php:
- removed the $CONF['configured'] = 'I_know_the_risk_of_not_deleting_setup.php' 
  developer hack (no longer needed since setup.php requires a password)
- this also makes index.php redirecting to login.php again (the old check tested
  for file_exists(setup.php)...)

common.php:
- removed a superfluous check for $CONF[setup_password] (see mailinglist for details)

config.inc.php:
- removed a small outdated comment


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@640 a1433add-5e2c-0410-b055-b7f2511e0802
16 years ago
David Goodwin ad61253c33 login.php: do not require the deletion of setup.php
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@617 a1433add-5e2c-0410-b055-b7f2511e0802
16 years ago
David Goodwin e61244ac9f setup.php: give the full path to setup.php to help people a little bit more
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@599 a1433add-5e2c-0410-b055-b7f2511e0802
16 years ago
Christian Boltz 11c39af699 - added/fixed vim: lines to nearly all *.php files (exception: templates/*)
(ts=3 or ts=4 depending on the file content)
- several whitespace fixes
- (no code changes)


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@566 a1433add-5e2c-0410-b055-b7f2511e0802
16 years ago
Christian Boltz 2411cd7765 login.php
- put '<span class="error_msg">' and '</span>' into login.php, not in *.lang

languages/*.lang:
- removed pLogin_username_incorrect and pLogin_password_incorrect texts
- added pLogin_failed to all translations (without the wrapping <span>)
- removed the <span> from pLogin_failed in en.lang and fi.lang

translation-update.sh:
- added "--remove string" option to remove texts from language files



git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@550 a1433add-5e2c-0410-b055-b7f2511e0802
16 years ago
David Goodwin dbff1d5210 en.lang: see ticket 2359801 - make login messages more generic
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@515 a1433add-5e2c-0410-b055-b7f2511e0802
16 years ago
Christian Boltz f217f0c1bb Summary: Added language selector to login form
functions.inc.php:
- function check_language
  - new optional parameter $use_post (needed by login.php)
  - check for language cookie
  - check for $_POST['lang']
  - removed substr() call because it made pt-br translation unuseable
- new function language_selector
  - returns a HTML dropdown language selector
- new function safecookie
  - similar to safeget, but for cookies

templates/login.php, templates/users_login.php:
- display language selector dropdown

login.php, users/login.php:
- check for selected language
- set cookie if user selected non-default language

languages/language.php: (NEW FILE)
- list of supported languages
- language names taken from phpMyAdmin login form

common.php:
- include languages/language.php
 


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@280 a1433add-5e2c-0410-b055-b7f2511e0802
17 years ago
David Goodwin 39953d029d rename templates to .php instead of .tpl
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@250 a1433add-5e2c-0410-b055-b7f2511e0802
17 years ago
Christian Boltz 1132b958e5 Finally got rid of admin/ :-)
- moved admin-only scripts from admin/ to /
- removed all merged files ("require('../$file')") from admin/
- changed include paths - no more admin/superadmin switching needed
- admin_menu.tpl is also gone
- removed all menu.tpl / admin_menu.tpl switches - no more needed
- admin/index.php still exists and redirects to /



git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@168 a1433add-5e2c-0410-b055-b7f2511e0802
17 years ago
Christian Boltz a0ea681bfb - force user to delete setup.php (which allows creation of superadmins now!)
Note: Developers can use
  $CONF['configured'] == 'I_know_the_risk_of_not_deleting_setup.php'
  to avoid deletion of setup.php after every "svn up".

  WARNING:
  THIS ALLOWS NON-AUTHENTIFICATED USERS TO CREATE SUPERADMIN ACCOUNTS!

  Use this setting only on development systems, where the database is not
  used by postfix.


git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@137 a1433add-5e2c-0410-b055-b7f2511e0802
17 years ago
David Goodwin dc51d62e15 update license headers
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@107 a1433add-5e2c-0410-b055-b7f2511e0802
17 years ago
David Goodwin 3e70f276c2 final set of refactoring patches (and the rest)
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@71 a1433add-5e2c-0410-b055-b7f2511e0802
17 years ago
Mischa Peters 85dc57beee Initial Import in SourceForge
git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@1 a1433add-5e2c-0410-b055-b7f2511e0802
18 years ago