Git Product home page Git Product logo

aker's Introduction

Aker SSH Gateway

alt text

What is Aker?

Aker is a security tool that helps you configure your own Linux ssh jump/bastion host. Named after an Egyptian mythology deity who guarded the borders, Aker would act as choke point through which all your sysadmins and support staff access Linux production servers. Aker SSH gateway includes a lot of security features that would help you manage and administer thousands of Linux servers at ease. For a detailed look check our Wiki

Motivation

I couldn't find an open source tool similar to CryptoAuditor and fudo, such tools are beneficial if you're seeking becoming PCI-DSS or HIPAA compliant for example, regardless of security standards compliance access to the server should be controlled and organized in a way convenient to both traditional and cloud workloads.

Roadmap

  • Phase 0

    • Integration with an identity provider (FreeIPA for now)
    • Parsable audit logs (json for example to work with Elasticsearch)
    • Highly available setup
  • Phase 1

    • Admin WebUI
    • Session playback
    • Live session monitoring
    • Cloud support (AWS,OpenStack etc..) or On-premises deployments
    • Command filtering (Prevent destructive commands like rm -rf)
    • Encrypt sessions logs stored on disk.
  • Phase 2

    • Support for graphical protocols (RDP, VNC, X11) monitoring
    • User productivity dashboard

See it in action

Aker - in action

Requirements

Software:

  • Linux (Tested on CentOS and ubuntu)
  • Python (Tested on 2.7)

Python Modules:

  • configparser
  • urwid
  • paramiko

Installation

  • First the dependencies
yum install python2-paramiko python-configparser python-urwid
  • Copying files
cp *.py /bin/aker/
  • Copy aker.ini in /etc/ and edit it to include users and servers like below :
[General] 
log_level = DEBUG

[anazmy]
;; is user enabled
enabled = True

;; hosts section include the hosts allowed
;; for this user, one entry per line 
;; format: hostname,port,username
hosts = websrv1.example.com,22,root
	srv2.example.com,22,root
	oracldb.example.com,22,root
	dbsrv1.example.com,22,root

  • Add /bin/aker/aker.py to /etc/shells
echo "/bin/aker/aker.py" >> /etc/shells 
  • Change user shell to aker
chsh -s /bin/aker/aker.py username

Contributing

Currently I work on the code in my free time, any assistance is highly appreciated. Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.

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.