241 Commits

Author SHA1 Message Date
Sunil Mohan Adapa
13655f05bc tor: Configure for IPv6 also 2015-08-21 19:24:07 +05:30
Sunil Mohan Adapa
ee521e098f tor: Move Tor setup from freedombox-setup
We are still overwriting the entire configuration file instead of
modifying it.
2015-08-18 21:25:01 +05:30
Sunil Mohan Adapa
2ca130b154 users: Implement diagnostics 2015-07-28 21:58:17 +05:30
Sunil Mohan Adapa
05ef2921db package: Remove package module
- It does not work on all the modules available.

- It does not reload Plinth after changes.

- As of now, there is not strong case for disabling modules in Plinth
  making it unnecessary UI complication.

- Split into multiple small Debian packages is not yet implemented for
  Plinth.  The module expects to work on the Debian modules.  When
  smaller Debian packages are available perhaps we should consider using
  packages.py library instead.
2015-07-28 16:51:19 +05:30
Sunil Mohan Adapa
3d5f68381d tor: Reimplement getting ports in Python 2015-07-28 16:40:51 +05:30
Sunil Mohan Adapa
36adc84b5d pagekite: Remove unused import 2015-07-28 16:38:13 +05:30
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