Skip to content

LiviaKarolayne/classroom-network-controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CNC: Classroom Network Controller

A platform for network access control in classrooms and laboratory

CNC Architecture

The CNC architecture was designed so that teachers control the network traffic through a web platform. This tool can be accessed by professors with SUAP credentials valid, from any device connected to the network The CNC web platform, which is on the Web Server Play (PWS), was developed for LAN networks. PWS is responsible for storing information about the teaching environments, users and computers in a database. The Web Server API SUAP (WS) is responsible for authenticating users, granting or denying their access to the system. Based on the information stored in the CNC database, it is possible to obtain the information needed to manage multiple network access control devices (represented by Control Access Device - CODs). The CNC architecture is illustrated in Figure1.

Figure1. CNC Architecture

Technologies Used

Back-end
Pray Framework
Iptables
Ganymed SSH-2 Library
API SUAP
Front-end
HTML5
CSS
JavaScript

Prerequisites

All Devices
Devices must be connected on the same LAN
Have the same default gateway, IP address of COD.
PWS Server
Use Java8
Use Linux Operating System
Install the version 1.4.5 of Play Framework
Enter the CNC project path in the computer's environment variables
Start the CNC project on the terminal as a service using Play
COD Devices
A folder with the IPtables scripts
An SSH server that accepts with username and password
Internet access

CNC Features

  • Block/Unblock Internet access for one or more devices
  • Block/Unblock access to specific websites for one or more devices
  • Login via SUAP, restricted access for teachers
  • Register non-teachers
  • Delete non-teachers
  • Edit data of non-teachers
  • Register data from a website
  • Delete data from a website
  • Edit data from a websit
  • Register laboratory and/or register computers that belong to it
  • Delete laboratory and/or register computers that belong to it
  • Edit laboratory and/or register computers that belong to it
  • View user access log

The CNC features are illustrated in Figure2.

Figure2. CNC Use Case Diagram

CNC Screens

Login Screen

Figure3. Login Screen

Laboratory Registration Screen

Figure4. Laboratory Registration Screen

Laboratory List Screen

Figure5. Laboratory List Screen

Laboratory Details Screen

Figure6. Laboratory Details Screen

Laboratory Site List Screen

Figure7. Laboratory Site List Screen

Registration/Editing Computer Screen

Figure8. Registration/Editing Computer Screen

User Registration Screen

Figure9. User Registration Screen

User List Screen

Figure10. User List Screen

Access History Screen

Figure11. Access History Screen

⚠️ Project under maintenance

Recently, the SUAP API has been changed, so the CNC System must be updated