Skip to content

SECURED-FP7/secured-psa-waf

Repository files navigation

1. End-user

1.1 Description / general readme

Today, thanks to the Internet we can easily and quickly, and usually without any restriction, access to information of any topic. This means even the youngest in the family can get into any website anytime and this can be a problem when the child is in front of the computer all day.

For this reason, this PSA offers the parents the possibility to manage the times and websites which are allowed or blocked.

Parental Control PSA schema for End User

1.2 Features / Capabilities

The list of capabilities are (extracted from manifest):

  • Filtering_L7: Allows to filter the traffic
  • Timing: Allows to set the time interval the rule is operative.

The internal used technologies are:

  • Squid
  • iptables
  • ebtables
  • jq

1.3 Security policy examples

"father;no_authorise_access;Internet_traffic;(type_Content,gambling);"

  • This rule forbids the traffic to the contents like gambling

"father;no_authorise_access;Internet_traffic;(specific_URL,www.upc.edu)"

  • This rule forbids the traffic to an specific url. In this case to www.upc.edu

1.4 Support, troubleshooting / known issues

If you find any issue please contact us.

2. Developer / admin

Description / general readme

The Parental Control PSA pretends to offer the possibility to block all the traffic the user wants to block. The most clear example is the father who wants to manage the websites his child can access to. This PSA allows to manage the time interval in the day a concret website (or more than one) is available also.

The PSA acts like a transparent proxy managed by Squid.

Parental Control PSA schema

Components and Requirements

VM technology allows creating a full system for the PSA. The components used in this PSA are:

  • Operative System: Debian 7 "wheezy"
  • iptables
  • ebtables
  • brigde-utils
  • squid3
  • jq

There are no extra requirements apart from the correct user configuration passed to the PSA.

Detailed architecture

There are several components in the internal architecture:

  • Inspect and route traffic. ebtables is used to set up rules to inspect Ethernet frames between eth0 and eth1 and force the traffic to be routed instead of being just bridged. By this, the traffic will be routed through the Squid proxy.

  • Filter the traffic. Squid check all the traffic, blocking it if the user configuration indicates it must be blocked.

Rules

There are no rules

Certificates

There are no needed certificates

Virtual machine image creation

The procedure to create a valid PSA image from scratch start with the prerequisite instructions defined in PSA Developer guide to obtain a valid base image for PSA.

Install the software Squid:

sudo apt-get install squid3

Copy the necessary files of this project in the folder:

$HOME/phytonScript/

Mobility Support

This PSA supports the mobility scenario.

Support, troubleshooting / known issues

If you find any issue please contact us.

Files required

No extra files required.

PSA application image

PSA is based on a Virtual machine image in KVM- kernel module format ".qcow2". A sample image has been included in the project.

Manifest

  • XML

The PSA manifest in format XML is available at Manifest. This file must be stored in the PSAR. And reflects the capabilities described below.

  • JSON The PSA manifest is available at Manifest.

HSPL

The HSPL format is defined as follows:

  • D4.1 format:

father;no_authorise_access;Internet_traffic;(type_Content,gambling); father;no_authorise_access;Internet_traffic;(specific_URL,www.upc.edu)

  • More friendly:

Father does not authorise access to this type the type of content gambling

Father does not authorise access to the url www.upc.edu

MSPL

The MSPL can be found here

M2L Plug-in

The M2l plug-in is available at M2LPlugin

This plugin do not need additional external information in this version that must be store in the PSAR.

Features/Capabilities

The list of capabilities are (extracted from manifest):

  • Filtering_L7: Allows to filter the traffic
  • Timing: Allows to set the time interval the rule is operative.

Testing

Testing scripts are available at test folder

3. License

Please refer to project LICENSE file.

This software incorporates Squid and it is open source software licensed under the GNU GPL.

Additional Information

Partners involved

  • Application: UPC
  • MSPL: POLITO,UPC
  • M2L Plugin: UPC

Status (OK/No/Partial) -OK-

TODO:

  • Tests