wiki:Version2/Instalacion

Version 1 (modified by adelcastillo, 14 years ago) (diff)

--

Introduction

Opengnsys is a free software application for managing and deploy operative systems. Opengnsys is made up of various components: the server, the clients and the repositories. See the architecture page for more details. This documents details the installation , configuration and deployment of the different services running in those three components.

Opengnsys Server

The server runs two services: the administration web interface, and the server daemon. Both are written in Python and using web.py, sharing a database they use for persistence and as communication channel between them.

Dependencies

You need to execute Opengnsys server services (the admin interface and the daemon) in a UNIX-like operative system as Linux. By default we use Sqlite as the database backend, but you can use any other databases that web.py and Sqlalchemy frameworks support.

Arch Linux

To install the dependencies of Opengnsys server services in Arch Linux, execute as root:

pacman -S community/python-sqlalchemy python-pip python-ldap
easy_install wsgilog
pip install formalchemy

Debian / Ubuntu

To install the dependencies of Opengnsys web interface in Debian or Ubuntu, execute as root:

apt-get install python-sqlalchemy python-pip python-ldap
easy_install wsgilog
pip install formalchemy

Setup

The server services use a database for persistence. By default it uses an Sqlite database, but you can change the configuration of the database editing the file config.py. After doing this, you have to execute the setup script which creates the tables in the database and generates the translations for the supported languages.

In order to know how to configure the database using mysql, postgres, oracle orany other database we support, take a look at http://www.sqlalchemy.org/docs/05/dbengine.html#create-engine-url-arguments

Execute the setup script:

./setup.sh

SSL Setup

Opengnsys uses secure connections between server, repositories and clients. This is done using SSL certificates certified by a CA (Certificate Authority). Note that it only checks that the certificate is valid and the certificate is trusted. You can see in ssslsockets_example how to create your own CA, create certificates and sign them. Across the Opengnsys platform, the SSL connections are always verified on both ends: both the client and the server.

You can configure in the config file (config.py) the path to the private key of the server certificate, the path to the public key, and the path to the public key of the CA certificate. By default we include example files for each of them in the web/ssl directory, and those are the files configured to be used in the default config file. This is done for convenience, but if you want security you should create/use your own.

Launch the server

To execute the web interface, execute:

$ ./admin.py

The web server will be launched at http://localhost:8080. If you want to launch the server at a different port, use:

$ ./admin.py <port>

Note that any port less than 1024 will need superuser privileged to be executed.