GithubHelp home page GithubHelp logo

fifthsegment / gatesentry Goto Github PK

View Code? Open in Web Editor NEW
58.0 6.0 8.0 32.03 MB

🌟 Elevate Network Safety with Gatesentry! A powerful Proxy & DNS server combo, adept at blocking harmful content. Ensure a secure and focused online space for kids and adults alike. Dive into a world of enhanced security and productivity now! #SecureNetwork #FocusedBrowsing

License: Apache License 2.0

HTML 0.07% Shell 0.02% Go 52.97% CSS 36.57% Svelte 9.11% TypeScript 1.08% JavaScript 0.02% Inno Setup 0.17%
content-filtering dns-server filtering mitmproxy proxy-server web-filtering porn-filter

gatesentry's Introduction

Gatesentry

An open source proxy server (supports SSL filtering / MITM) + DNS Server with a nice frontend.

Codecov

Download the latest releast

Usages:

  • Privacy Protection: Users can use Gatesentry to prevent tracking by various online services by blocking tracking scripts and cookies.

  • Parental Controls: Parents can configure Gatesentry to block inappropriate content or websites for younger users on the network.

  • Bandwidth Management: By blocking unnecessary content like ads or heavy scripts, users can save on bandwidth, which is especially useful for limited data plans.

  • Enhanced Security: Gatesentry can be used to block known malicious websites or phishing domains, adding an extra layer of security to the network.

  • Access Control: In a corporate or institutional setting, Gatesentry can be used to restrict access to non-work-related sites during work hours.

  • Logging and Monitoring: Track and monitor all the requests made in the network to keep an eye on suspicious activities or to analyze network usage patterns.

  • Custom Redirects (via DNS): Redirect specific URLs to other addresses, useful for local development or for redirecting deprecated domains.

gatesentry-repo

Getting started

There are 2 ways to run Gatesentry, either using the docker image or using the single file binary directly.

Method 1: Using Docker

  1. Use the docker-compose.yml file from the root of this repo as a template, copy and paste it to any directory on your computer, then run the following command in a terminal docker compose up

Method 2: Using the Gatesentry binary directly

  1. Downloading Gatesentry:

    Navigate to the 'Releases' section of this repository. Identify and download the appropriate file for your operating system, named either gatesentry-linux or gatesentry-mac.

  2. Installation:

    For macOS and Linux:

    Locate the downloaded Gatesentry binary file in your system. Open a terminal window and navigate to the directory containing the downloaded binary. Run the following command to grant execution permissions to the binary file:

    chmod +x gatesentry-{platform}
    

    Replace {platform} with your operating system (linux or mac). Proceed to execute the binary file to initiate the server.

    Running as a Service (Optional)

    If you want Gatesentry to keep running in the background on your machine, install it as :

    ./gatesentry-{platform} -service install

    Next, on linux you can use your system service runner to start or stop it, for example for ubuntu:

    service gatesentry start #starts the service

    service gatesentry stop #stops the service

    For Windows

    The installer (GatesentrySetup.exe) contains instructions.

    Running as a Service

    The installer (GatesentrySetup.exe) should automatically install a service. You can look for it by searching for gatesentry in your Service manager (open it by running services.msc)

  3. Launching the Server:

    Execute the Gatesentry binary file to start the server. Upon successful launch, the server will begin listening for incoming connections on port 10413.

Important information

Ports

By default Gatesentry uses the following ports

Port Purpose
10413 For proxy
10786 For the web based administration panel
53 For the built-in DNS server
80 For the built-in webserver (showing DNS block pages)

Accessing the User Interface:

Open a modern web browser of your choice. Enter the following URL in the address bar: http://localhost:10786 The Gatesentry User Interface will load, providing access to various functionalities and settings.

Default Login Credentials:

Username: admin
Password: admin

Use the above credentials to log in to the Gatesentry system for the first time. For security reasons, it is highly recommended to change the default password after the initial login.

Note:Ensure your system’s firewall and security settings allow traffic on ports 10413 and 10786 to ensure seamless operation and access to the Gatesentry server and user interface.

This guide now specifically refers to the Gatesentry software and uses the gatesentry-{platform} filename convention for clarity.

DNS Information

Gatesentry ships with a built in DNS server, which can be used to block domains. The server as of now forwards requests to Google DNS for resolution, this can be modified from inside the application/dns/server/server.go file.

Local Development

./setup.sh

To run it:

./run.sh

gatesentry's People

Contributors

abdullah-cognite avatar abdullah1213 avatar actions-user avatar arsenicks avatar dependabot[bot] avatar fifthsegment avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

gatesentry's Issues

Custom DNS server

It'd be great to be able to configure the DNS server without the need to compile.

My use case is possibly unique - using samba as domain controller and GPO to restrict my 7 yr olds computer. As I can't find a way to lock down DNS, I'm configuring browsers to use a proxy, mainly to have the proxy resolve DNS using 1.1.1.3 (content and malware blocking Cloudflare DNS server).

Internet not working over hotspot (using LAN)

Hi Abdullah,

I'm using backupSmall.img RPi2 with wifi dongle plugged. It's working well for Hotspot and blocking site or phrase without internet. But when I will try to share the internet over LAN cabel plugged in RPi2, the internet not shared over wifi.

Also I try to install the certificate. But it doesn't work.

Please help,
Thank You
Ketut

Why are no instructions given about how to self-sign a certificate?

If i'm going to use this as my proxy, then why aren't there any instructions for how to self-sign a certificate / become your own certificate authority for using GateSentry? That seems like a security hole in the software.

Anyway here is how to do that:

custom blocking page

Hi,

In the current version is possible to customize the webpage which is shown when a page is blocked ?

Thank you for sharing this software i think is very good

Sincerely Sergio

Greetings From Colombia

Block traffic on tablet

Hi,

Is it possible to use GateSentry for blocking youtube (app) trafic to IOS and android devices?

Bart

customize page

Hi,

Can the webpage which is shown when a page is blocked be customized?

Bart

YouTube Filtering

Hi,

I would like to use GatSentry to filter my daughters youtube movies.

Problem is that if I download the certificate an error is thrown. (This file cann't be used for securty certificate).

Can you pleas explain to me how to implement youtube filtering?

Bart

ICAP Protokoll Error

When opening the page www.sueddeutsche.de, always comes the error:

ICAP protocol error.

The system answered: [No Error]
This means that something is wrong with ICAP communication.

Possible problems are:

  • The ICAP server is not available.
  • The ICAP server response was invalid.

Please check it & give me Feedback.
Thanks Alex
icap fehler - gatesentry

GateSentry is blocking all traffic

I wanted to modify the squid.conf file (to add tmpfs cache). This did not work out too well, everything being blocked thereafter. Then I reverted to the previous configuration file and restarted but GateSentry keeps blocking all traffic. (I've put the original config file https://gist.github.com/fifthsegment/79fb356bf4cbf90253104388d504ee43 )

/var/log/squid3/access.log gives me little information on what is happening :

1464957874.619    407 127.0.0.1 TCP_MISS/500 133277 GET https://www.google.fr/ - PINNED/2a00:1450:4007:80d::2003 text/html
1464957884.167   5768 127.0.0.1 TCP_MISS/500 133282 GET http://google.com/ - HIER_DIRECT/2a00:1450:4007:807::200e text/html

Tie into MITKeberos?

Is it possible to tie this system in with different restrictions for MIT Keberos?

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.