Project

General

Profile

Sync TincVPN

Què és?

Una eina web, desenvolupada amb cakephp 2.x, que et crear i gestionar multiples xarxes Tinc-VPN .
Definint un protocol entre un node i l'eina web. Per poder enviar la seva informació i rebre un script de configuració.

Instal·lació

Necessites un servidor web amb la extensió php i suport mysql/postgresql
Necessites descarregar la versió de cakephp.

wget https://github.com/cakephp/cakephp/zipball/2.2.3
unzip 2.2.3
mv cakephp-cakephp-0142e5e synctincvpn
cd synctincvpn

Renombres el directori app

mv app app.orig

Clones la ultima versió del sistema sobre un directori app:

git clone git://qmp.cat/synctincvpn.git app

Copies els fitxer de core.php i database.php

cp app.orig/Config/core.php app/Config/core.php
cp app.orig/Config/database.php.default app/Config/database.php

Els adaptes.

Crear la Base de dades

Crear el primer usuari:

  • Donar permisos a la funció "add". Accedir a app/Controller/User/UsersController.php i afegir:
public function beforeFilter() {
        parent::beforeFilter();
        $this->Auth->allow('logout', 'add');
    }
  • Accedir a <site>/users/add i crear un nou usuar
  • Treure els permisos a la funció "add"

Crear esquema de la base de dades

./app/Console/cake schema create

Crear directoris temporals amb permissos d'escriptura.

mkdir -p ./app/tmp/cache/persistent ./app/tmp/cache/models
chown www-data:www-data ./app/tmp/cache/ ./app/tmp/cache/persistent ./app/tmp/cache/models

Com és comuniquen els clients amb server

El client fa una petició POST a la url <server_http>/nodes/get/<md5 (HW_mac+network+key)>/<network>/<encode (mac)>/<name_node>/<Is gateway (0:No,1:Si)>/<Internal IP>/1