Giter VIP home page Giter VIP logo

netopeer-gui's Introduction

NetopeerGUI

NetopeerGUI is web graphical user interface for configuring devices based on protocol NETCONF. For more info visit Public web section about Netopeer.

NetopeerGUI is developed as Symfony2 app.

Installation

Install pyang from https://code.google.com/p/pyang/

After tha, run the following commands:

# go to apache web directory
cd /var/www

git clone --recursive https://github.com/cesnet/netopeer-gui.git
# OR for already cloned repos or older GIT versions use
#
# git clone https://github.com/cesnet/netopeer-gui.git
# cd netopeergui
# git submodule update --init --recursive 

cd netopeergui

cd install
./bootstrap.sh

# for change some variables, look at ./configure --help
./configure

su # installation must be done as root
make install

cd ../
# check server configuration and repair errors
php app/check.php

php ./composer.phar install

Underhood - install folder

Install folder includes necesarry files for communicating with NETCONF devices. It contains also mod_netconf submodule. This causes, why --recursive in git clone is necessary. For mod_netconf update follow instructions on mod_netconf site.

Configure script check all dependencies and prepares all resources for install.

Make install will also copy netopeergui.conf into /etc/httpd/conf.d/ folder. Change this manually, if you need.

Note:

For a more detailed explanation of symfony2 installation, see the Installation chapter of the Symfony Documentation.

First steps

  1. Open site http://localhost/netopeergui
  2. Login using admin, pass (this credentials were created during installation)
  3. Connect to the device using SSH credentials
  4. Click Configure device

Setting custom user

For setting new user or edit current, use command line script. This script will create or update user in DB. There is no "GUI" for user settings.

Create user

su
php app/console app:user [--action=add] --user=username --pass=password

Remove user

su
php app/console app:user --action=add --user=username

Change password

su
php app/console app:user --action=edit --user=username --pass=newpass [--new-username=newusername]

Using SAML

NetopeerGUI has implemented login using SAML and SamlSPBundle. For configuration, you must edit /app/config/security.yml file. Find section

saml:
        pattern: ^/(?!login_check)
        anonymous: true
        aerial_ship_saml_sp:
            login_path: /saml/sp/login
            check_path: /saml/sp/acs
            logout_path: /saml/sp/logout
            failure_path: /saml/sp/failure
            metadata_path: /saml/sp/FederationMetadata.xml
            discovery_path: /saml/sp/discovery
            local_logout_path: /logout/
            provider: saml_user_provider
            create_user_if_not_exists: true
            services:
                openidp:
                idp:
                        file: "@FITNetopeerBundle/Resources/saml/openidp.metadata.xml"
                    sp:
                        config:
                            # required
                            entity_id: netopeergui_sauvignon
                            # if different then url being used in request
                            # used for construction of assertion consumer and logout urls in SP entity descriptor
                            base_url: https://sauvignon.liberouter.org/netopeergui
                        signing:
                            # must implement SPSigningProviderInterface
                            # id: my.signing.provider.service.id

                            # or use built in SPSigningProviderFile with specific certificate and key files
                            cert_file: "@FITNetopeerBundle/Resources/saml/server.pem"
                            key_file: "@FITNetopeerBundle/Resources/saml/server.key"
                            key_pass: ""
                        meta:
                            # must implement SpMetaProviderInterface
                            # id: my.sp.provider.service.id

                            # or use builtin SpMetaConfigProvider
                            # any valid saml name id format or shortcuts: persistent or transient
                            name_id_format: persistent
                            binding:
                                # any saml binding or shortcuts: post or redirect
                                authn_request: redirect
                                logout_request: post

and edit following lines:

file: "@FITNetopeerBundle/Resources/saml/openidp.metadata.xml"
entity_id: netopeergui_sauvignon
base_url: https://sauvignon.liberouter.org/netopeergui

Configuration notes are described in SamlSPBundle configuration doc.

This example service uses https://openidp.feide.no user provider. For register this your netopeerGUI, generate FederationMetadata.xml file (located in /saml/sp/FederationMetadata.xml) and upload it into OpenIDP.

netopeer-gui's People

Contributors

alexadavid avatar cejkato2 avatar kjhfafjashf avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.