1060 Commits

Author SHA1 Message Date
James Valleroy
a6417c59a7
tor: Use augeas to modify configuration.
- Use json to get info from action script.
- Add SSH port to hidden service.
- Enable hidden service during setup.
2016-03-15 18:50:51 -04:00
Sunil Mohan Adapa
4c6d572e67
ttrss: Ensure database used is PostgreSQL
- Installing dbcommon-pgsql and not install dbcommon-mysql does not
  ensure that PostgreSQL is selected as the database for the
  application.  Set a debconf value to force selection of PostgreSQL.

- Minor styling fixes.
2016-03-12 17:17:50 +05:30
James Valleroy
368e64c5ca
ttrss: Use LDAP authentication 2016-03-12 11:38:28 +05:30
James Valleroy
47a54fadd1
ttrss: Add basic configuration 2016-03-12 11:38:22 +05:30
James Valleroy
15591b79ca
ttrss: Update to use ConfigurationView 2016-03-12 11:38:14 +05:30
Jallepalli Ashok Kumar
80bab090bf
ttrss: New module for Tiny Tiny RSS feed reader 2016-03-12 11:37:28 +05:30
Sunil Mohan Adapa
f4601e7b05
monkeysphere: Reorganize around keys instead
- Read Apache configuration to find the list of all available
  certificates and their associated domains.  Use this for setting UIDs
  properly.

- Solve the issue of re-importing renewed certficiate.  Use the SSH
  fingerprints as unique keys instead of domain names.  Compute SSH
  fingerprints for SSH keys and HTTPS certficates inorder accurately
  identify if they are currently imported into monkeysphere.

- Allow having more than one domains for a certficiate.  Add action to
  import new domains to an existing monkeysphere OpenPGP key.

- Import only once for a given certficiate and keep adding UIDs when
  domains get added.

- Merge services SSH and HTTPS giving us the ability to deals with many
  more services.  Remove special handling for different kinds of
  certificate sources.

- Supress monkeysphere prompts in case of reusing UIDs.
2016-03-08 23:32:29 +05:30
James Valleroy
5c810ed87f
monkeysphere: Add Let's Encrypt certificates
Filter letsencrypt domains from snakeoil list.
Rename views for snakeoil and letsencrypt.
2016-03-08 23:31:42 +05:30
James Valleroy
cc6f44d87e
monkeysphere: Clarify arguments for import actions 2016-03-08 23:30:27 +05:30
James Valleroy
79edbd6195
monkeysphere: Add self-signed certificate section 2016-03-08 23:29:41 +05:30
Sunil Mohan Adapa
aba2b03c52
transmission: Remove unused import 2016-02-26 22:42:05 +05:30
Sunil Mohan Adapa
7e87f0304a
radicale: Listen only on internal addresses
- Since we are trusting the remote user header, it is much safer not
  listen on external addresses.  We don't that since Apache connects on
  internal address.
2016-02-26 22:34:25 +05:30
James Valleroy
9d85084d8d
radicale: New module for a CalDAV/CardDAV server 2016-02-26 15:40:19 +05:30
James Valleroy
363e071bff
minetest: New module for minetest server 2016-02-26 15:20:36 +05:30
Saúl Ibarra Corretgé
b0b67db35e
letsencrypt: Force text mode
This avoids letsencrypt trying to launch a dialog interface in case of
certain errors.
2016-02-19 19:54:09 +05:30
Sunil Mohan Adapa
ccc7310bd5
monkeysphere: Fix error with no host keys 2016-02-16 08:45:50 +05:30
Sunil Mohan Adapa
83ec57414c
dynamicdns: Fix starting daemon for no NAT
Incase the machine is not behind NAT, fix the logic that decides to
start the daemon.
2016-02-01 11:03:54 +05:30
Sunil Mohan Adapa
51dd1bb000
dynamicdns: Fix an invalid syntax
'local' keyword can't be used outside a method.
2016-02-01 11:02:43 +05:30
Sunil Mohan Adapa
ea1e9b6e2a
dynamicdns: Fix writing configuration for no NAT
- When writing the configuration file for no NAT case, append then last
  part of the file instead of overwriting.

- Also 'echo' statements are missing leading to attempt to execute the
  config options instead of writing them to a file.
2016-02-01 11:00:46 +05:30
Sunil Mohan Adapa
aa5efd4984
dynamicdns: Fix computing update times
Currenly uptime is being taken as measure to decide whether update must
run.  Uptime is the number of seconds since machine has booted.  If a
machine has run for 30 hours, and rebooted, then update will not be done
until the machine has run for 30 hours + desinated time.  Using seconds
since epoch fixes this.
2016-02-01 10:57:33 +05:30
Sunil Mohan Adapa
2a030f91fe
dynamicdns: Fix reading configuration file
- The current code to parse the configuration file does not work proper
  if there is an '=' in the password.  Fix it.

- Also if predesignated keyword like 'server' occurs in the password,
  configuration can't be read properly.  Fix it.
2016-02-01 10:53:26 +05:30
Daniel Steglich
a90039889d
dynamicdns: Fix passing password via stdin
* Add an option to pass the password via cmdline (optional, not used by
  plinth) if called manually.

* Fix: If -p option was not the last given option, everything after -p
  was lost.  Closes #310.
2016-02-01 10:46:48 +05:30
Sunil Mohan Adapa
65a1985cc0
tor: Minor fixes and styling
- Add note about resetarting firewalld.

- Refactor checking for running configuration process.

- Fix error message being show as info message.

- Minor indentation fixes.
2016-01-30 19:41:13 +05:30
James Valleroy
1e67fcb61a
tor: After enabling hidden service, wait for info 2016-01-30 18:08:47 +05:30
James Valleroy
07130b6007
tor: Run configuration update as background task
- Closes: #294.
2016-01-30 18:08:40 +05:30
James Valleroy
a22595af77
tor: Avoid unneeded service restarts
- Fix an import error.
2016-01-30 18:08:33 +05:30
James Valleroy
0844151244
tor: Combine all configuration actions 2016-01-30 18:07:42 +05:30
James Valleroy
a3845e2b28
tor: Add service for bridge relay ports 2016-01-30 18:07:34 +05:30
Sunil Mohan Adapa
506bff5c7b
users: Multiple SSH keys and better home creation
- Allow setting multiple SSH keys one per line (which is already
  allowed, but advertise it better).

- Use mkhomedir_helper to create the user's home directory.  Avoid
  security and accuracy complexities of creating a home directory.

- Allow homes that don't exist in /home.
2016-01-30 15:30:52 +05:30
James Valleroy
ad7d6db968
users: Add field to set user's SSH key. 2016-01-30 15:30:32 +05:30
James Valleroy
b7e44eb429
Add repro SIP proxy module. 2016-01-27 17:49:20 +05:30
Sunil Mohan Adapa
afb00f98ab
upgrades: Make manual upgrade a background process
- Closes #366 and closes #304 (all sub-tasks).

- Start new process group with setsid() by sending
  start_new_session=True

- Detach from parent process fds by closing all FDs and attaching stdin,
  stdou and stderr to /dev/null.

- Don't wait for the process to complete.

- This allows for upgrading Plinth while upgrades are trigged from
  Plinth itself.

- Show log of upgrade exection instead of output and error log of the
  process which can no longer be collected.  This has the advantage of
  showing automatic executions also.

- Rewrite the mechanism to detect whether upgrades can be run.  It is
  now based on whether the package manager is busy.  This has the
  advantage of working properly if other apt processes are running,
  automatic upgrades are running, etc.

- Busy status works even if Plinth is restarted while upgrades are in
  progress.

- More descriptive messages showing that upgrades don't have to be
  triggered manually.

- Warn that other packages can't be installed while upgrades are
  running, which may take a long time.

- Warn the users of potential temporary unavailability of
  Plinth/Apache2.
2016-01-20 21:13:18 -05:00
caitlin
429d26d961
letsencrypt: Don't fail if live dir does not exist 2016-01-14 14:18:53 +05:30
Sunil Mohan Adapa
1a17819380
letsencrypt: New basic module for SSL certficates
This is the first implementation for obtaining certificates from Let's
Encrypt.  Following the features and limitations.

- Requires manual operation.

- Registrations are done anonymously.

- Supports revoking and re-obtaining certificates.  Does not have a way
  to show if a certficate is already renewed.

- Automatic renewal is not available.

- Details messages in case of errors.

- Has ability to switch to testing mode by using LE's staging servers.

- Sets up Apache configuration for the domain and enables/disables it.
  When certificates are not available for a domain, default website
  configuration is used.  When certificates are available, separate
  SSL website configuration for each domain is used.

- Many domain will work with a single IP address with the help of Server
  Name Indication (SNI) which is supported by all modern browsers.

- Supports diagnostics on websites.
2016-01-14 14:18:43 +05:30
Sunil Mohan Adapa
6afe350fe5
monkeysphere: Proper domain handling
Action:

- Don't use const for HOST_TOOL, it is unlikely to be ever changed.

- Don't pass multiple key ids as single string to monkeysphere-host.

- Use JSON for data transfer with action instead of custom format and
  parsing.

- Minor styling fixes.

Template:

- More consistent indentation.

- Improve the description.

- Add headers to the table.

- List domains instead of domain types.

URLs:

- Take domain as argument for key generation.

- Narrow down fingerprint matching regex.

Views:

- Take domain as argument for key generation.  Verify that domain is
  valid.

- Minor grammer fix to cancel message.

- Use JSON format for getting key status.

- List domains instead of domain types.
2016-01-14 14:00:23 +05:30
James Valleroy
70d85cbd6f
monkeysphere: New module for verifying SSH servers
monkeysphere: Run publish as background task, allow user to cancel.

Small fixes to names module:

- Remove unused ugettext import.

- Change SERVICES to tuple.

- If a domain is not available for a service type, return None instead
  of (translated) "Not Available".

- Rename get_services -> get_enabled_services.
2016-01-14 14:00:08 +05:30
Sunil Mohan Adapa
3c895f58f5 quassel: Minor styling and UI message chanages
- Add information about Quassel clients and usage.

- Expand introduction.

- Update titles for consistency.

- Minor styling
2015-12-12 15:38:03 +05:30
James Valleroy
e74c4791ec Add quassel module. 2015-12-11 19:09:54 -05:00
Daniel Steglich
994e674885 Github issue 320: fixed display error
* switched "ignore SSL cert errors" and "use basic auth"
2015-12-06 22:25:53 +05:30
James Valleroy
0695ee5abb tor: Switch to obfs4proxy.
Replaces scramblesuit, and also supports obfs3.
Also add tor-geoipdb which is useful for bridges.
2015-12-06 12:21:22 +05:30
James Valleroy
66625c35a3 Handle error where /etc/tor/torrc does not exist when checking hidden service config.
Handle error where tor state file does not exist when getting list of ports.

Add test for checking if apt-transport-tor is enabled.
2015-12-04 09:16:06 +05:30
Sunil Mohan Adapa
a0da928dae power: Minor updates
- Change term 'reboot' to 'restart' as it is less techinical and more
  consistent with popular interaces on desktop/mobiles.

- Updated description for power module.

- Simplify the module title to just 'Power'.

- Update the use of elipses and angular quotes as angular quotes and
  elipses are both used to indicate that further user interface will be
  available after pressing the button.

- Remove suprious '\' in power_reboot.html.

- Notify to the user that web interface will not be available after
  reboot/shutdown.

- Redirect the user to application page after restart/shutdown.  If the
  page serve succeeds, they will have simply refresh/access it after
  restart/shutdown after waiting or powering on.
2015-11-27 11:40:09 +05:30
Joel Valleroy
eca36e6f96 add power module with reboot and shut down 2015-11-26 16:29:38 -05:00
Sunil Mohan Adapa
921f7c8767 upgrades: Make sure error output shows up 2015-11-26 11:05:26 +05:30
James Valleroy
903a11824e Merge pull request #265 from fonfon/restore
Added reStore module/application
2015-11-04 08:00:55 -05:00
Sunil Mohan Adapa
646763ff3c openvpn: New module VPN into FreedomBox
- Authentication using client certificates.  Extra password based
  authentication for later.

- Auto setup of CA, server and client certificates.

- Provides a .ovpn profile for each user for easy setup.

- Use 4096 bit Diffie-Hellman parameters for better security.  If this
  takes to much time, reduce it to 2048 or 1024, at least during
  debugging.
2015-11-03 20:24:40 -05:00
fonfon
be325f8879 added reStore module 2015-10-21 11:54:34 +00:00
Sunil Mohan Adapa
5ccbd6f35c pagekite: Make Augeas loading narrower and faster 2015-10-12 22:26:14 +05:30
Sunil Mohan Adapa
670be77b9a pagekite: Fix issue with setting port
- When the current configuration does not contain a port and we try to
  set the port for the frontend server, it fails.  This patch fixes
  that.

- Minor styling and spelling fixes.

- Make sure that if port is not set for frontend, it will be set on
  saving the form.
2015-10-11 17:54:26 +05:30
fonfon
aad69deb6e Display correctly if service is PageKite is enabled 2015-10-11 17:19:35 +05:30