235 Commits

Author SHA1 Message Date
James Valleroy
c171d89554 ldap: Actually read from stdin if available.
I made a silly mistake while merging, sorry.
2015-07-26 20:33:25 -04:00
Sunil Mohan Adapa
d363d8db26 users: Use ldapscripts for user management
- Merge all ldap actions into one action.

- Setup ldapscripts using augeas.

- Use the default mechanisms used by ldapscripts.

- Remove adding admin users to 'sudo' group.  Mixing LDAP groups and
  local groups is not a good practice.  'admin' LDAP group will be added
  to sudoers in another patch to freedombox-setup.

- Make all users posixAccount and all groups posixGroup for simplicity.
  Shell access can be restricted in other ways.

- Work around ldapscripts not able to set password using SASL auth.

- Work around ldapscripts having issues with current locale.
2015-07-26 16:33:06 -04:00
James Valleroy
d144f6634a Bug fixes:
Check if ejabberd is installed when running actions triggered by signals.
Encode LDAP passwords as bytes.
2015-07-23 22:30:50 +05:30
James Valleroy
97220b89f3 xmpp: Update module layout to match other modules.
Split forms and views into separate files.
Add configuration form to enable/disable the service.
2015-07-23 22:30:50 +05:30
James Valleroy
6bbc622b1a xmpp: Remove account registration and in-band configuration. 2015-07-23 22:30:50 +05:30
James Valleroy
b840875c16 xmpp: Always use LDAP authentication. 2015-07-23 22:30:50 +05:30
James Valleroy
cb7c9c26f7 Send LDAP user passwords to actions through stdin, not as arguments. 2015-07-23 22:30:50 +05:30
Sunil Mohan Adapa
d650273760 xmpp: Use webserver action utilties 2015-07-19 19:56:05 -04:00
Sunil Mohan Adapa
c9d918157c transmission: Remove get-enabled from actions 2015-07-19 19:56:05 -04:00
Sunil Mohan Adapa
384867dc25 roundcube: Remove get-enabled from actions 2015-07-19 19:56:05 -04:00
Sunil Mohan Adapa
4906384b39 privoxy: Remove get-enabled from actions 2015-07-19 19:56:05 -04:00
Sunil Mohan Adapa
cedec9b624 mumble: Remove get-enabled from actions 2015-07-19 19:56:05 -04:00
Sunil Mohan Adapa
48da6862b9 ikiwiki: Remove get-enabled from actions 2015-07-19 19:56:05 -04:00
Sunil Mohan Adapa
7cf47bbcb2 deluge: Remove get-enabled from actions
- Use webserver action utilites.

- Move status getting to module __init__.py so that it can be turned
  into an API in future for further simplificaiton.

- Apply this to other modules too in future commits.
2015-07-19 19:54:13 -04:00
Sunil Mohan Adapa
07e2c0ce14 Don't use actions to check if service is running
- To check whether a service is running does not require root
  privileges.  This can directly be done from a module without any
  action.

- Since actions are allowed to be run using sudo, introducing
  unnecessary sub-commands increases attack surface.

- Simple functions calls are unnecessarily being converted to command
  line invocations and involve parsing response.

- There is a lot of repeated code because of this that can be
  eliminated.

- To generalize this, we need to make all non-root system operations
  directly from module instead of delegating to action commands.
2015-07-19 19:54:13 -04:00
Sunil Mohan Adapa
3b6af2f29c Use only action utilities for service management
- When disabling a service, ignore if unable to stop the service.
2015-07-19 19:54:13 -04:00
Sunil Mohan Adapa
517c364559 pagekite: Move to using python3-augeas
- Merge actions/pagekite_util.py into plinth/modules/pagekite/util.py.

- Rename plinth/modules/pagekite/util.py to utils.py.

- Add python-augeus as dependency.

- Move actions/util.py to plinth/action_utils.py and update services
  that use it.

- Rename _run() method to run() as it is being used publicly.

- Import the utils in a more conventional manner.

- Move all python2 bits to python3.
2015-07-19 15:37:43 -04:00
Sunil Mohan Adapa
2b86ce9fdb users: Remove unused code checking for LDAP user 2015-07-18 17:23:04 +05:30
James Valleroy
dbd4dff52e Cleanup from switching group types. 2015-07-13 19:50:59 +05:30
James Valleroy
925fbe6cd2 Fix group management issues. 2015-07-13 19:50:59 +05:30
James Valleroy
32bb08c269 Also add admin users to posixGroup for sudo privileges. 2015-07-13 19:50:59 +05:30
James Valleroy
6ca38ba665 Switch LDAP groups from groupOfUniqueNames to groupOfNames, to work with libpam-ldapd. 2015-07-13 19:50:59 +05:30
James Valleroy
d65d2c4725 Fix group deletion. 2015-07-13 19:50:58 +05:30
James Valleroy
0eb3d35b5b Add group management to user editing form. 2015-07-13 19:50:58 +05:30
James Valleroy
197c95a7bf Add actions for LDAP group management. 2015-07-13 19:50:58 +05:30
James Valleroy
2adf14b8b7 Remove POSIX users. 2015-07-13 19:50:58 +05:30
James Valleroy
d672e24ac4 Add posixAccount class for LDAP users. 2015-07-13 19:50:58 +05:30
James Valleroy
1f2dc5e730 Update LDAP admin group when renaming/deleting users. 2015-07-13 19:50:58 +05:30
James Valleroy
f4835b4515 Add new LDAP users to admin group. 2015-07-13 19:50:58 +05:30
James Valleroy
70e0c4f61a ikiwiki: Enable HTTP auth using LDAP. 2015-07-13 19:50:58 +05:30
Sunil Mohan Adapa
0335ee9c32 deluge: Further improvements to actions
- Perform disable even when the service is not running.

- Improve checking if deluge is enabled.
2015-06-28 11:17:17 +05:30
Sunil Mohan Adapa
2f56a516de ikiwiki: Minor styling and fix
- Minor styling update in service description.

- Fix a minor issue that a2query outputs on STDERR when the
  configuration is disabled.
2015-06-28 11:15:52 +05:30
Sunil Mohan Adapa
21e12b3c1f deluge: Perform setup operations during enable
We should use on_install setups as sparingly as possible.  We don't get
callbacks in cases where package is already installed.  Until we
implement our versioned setup mechanism, doing some idempotent setup()
during enable() is much safer.
2015-06-26 18:52:26 +05:30
James Valleroy
2871519322 deluge: enable/disable refactoring 2015-06-26 17:34:38 +05:30
James Valleroy
5712c3d9ea deluge: Also disable the service when stopping. 2015-06-26 17:34:38 +05:30
James Valleroy
fd73bcd734 deluge: Run setup and enable after install. 2015-06-26 17:34:38 +05:30
James Valleroy
9c717246ee deluge: Install apache conf file during Plinth install. 2015-06-26 17:34:37 +05:30
James Valleroy
9d6ceaa0ff ikiwiki: Use a2query to check if enabled. 2015-06-26 17:34:37 +05:30
James Valleroy
be14b49c83 ikiwiki: Install conf files during Plinth install. 2015-06-26 17:34:37 +05:30
James Valleroy
045dae59f7 ikiwiki: Enable during setup. 2015-06-26 17:34:37 +05:30
Sunil Mohan Adapa
f91be5a4f9 ldap: Store password hashes instead of plain text 2015-06-26 00:30:48 +05:30
Sunil Mohan Adapa
82090af423 ldap: Minor styling fixes 2015-06-25 23:40:24 +05:30
James Valleroy
3a3009c111 ldap: Switch to SASL authentication.
Assume that root is able to modify user directory entries.
2015-06-12 15:49:41 +05:30
James Valleroy
73a03c3b39 xmpp: Merge actions into single file. 2015-06-12 15:49:41 +05:30
James Valleroy
27e19b4373 users: Change LDAP user password. 2015-06-12 15:49:41 +05:30
James Valleroy
f16ea84f1d users: Delete LDAP user. 2015-06-12 15:49:41 +05:30
James Valleroy
9f371d9a13 users: Rename LDAP user. 2015-06-12 15:49:41 +05:30
James Valleroy
219c3f4b06 users: Show if user is also an LDAP user. 2015-06-12 15:49:41 +05:30
James Valleroy
aece3d7ee0 Use ldapadd instead of slapadd. 2015-06-12 15:49:41 +05:30
James Valleroy
b2cd67c78b xmpp: Add option to use LDAP for authentication. 2015-06-12 15:49:41 +05:30