# Jumpserver - The Bastion Host for Multi-Cloud Environment [![Python3](https://img.shields.io/badge/python-3.6-green.svg?style=plastic)](https://www.python.org/) [![Django](https://img.shields.io/badge/django-2.2-brightgreen.svg?style=plastic)](https://www.djangoproject.com/) [![Docker Pulls](https://img.shields.io/docker/pulls/jumpserver/jms_all.svg)](https://hub.docker.com/u/jumpserver) - [中文版](https://github.com/jumpserver/jumpserver/blob/master/README.md) |![notification](https://raw.githubusercontent.com/goharbor/website/master/docs/img/readme/bell-outline-badged.svg)Security Notice| |------------------| |On 15th January 2021, JumpServer found a critical bug for remote execution vulnerability. Please fix it asap! [For more detail](https://github.com/jumpserver/jumpserver/issues/5533) Thanks for **reactivity of Alibaba Hackerone bug bounty program** report use the bug| -------------------------- Jumpserver is the world's first open-source Bastion Host and is licensed under the GNU GPL v2.0. It is a 4A-compliant professional operation and maintenance security audit system. Jumpserver uses Python / Django for development, follows Web 2.0 specifications, and is equipped with an industry-leading Web Terminal solution that provides a beautiful user interface and great user experience Jumpserver adopts a distributed architecture to support multi-branch deployment across multiple cross-regional areas. The central node provides APIs, and login nodes are deployed in each branch. It can be scaled horizontally without concurrency restrictions. Change the world by taking every little step ---- ### Advantages - Open Source: huge transparency and free to access with quick installation process. - Distributed: support large-scale concurrent access with ease. - No Plugin required: all you need is a browser, the ultimate Web Terminal experience. - Multi-Cloud supported: a unified system to manage assets on different clouds at the same time - Cloud storage: audit records are stored in the cloud. Data lost no more! - Multi-Tenant system: multiple subsidiary companies or departments access the same system simultaneously. - Many applications supported: link to databases, windows remote applications, and Kubernetes cluster, etc. ## Features List
Authentication | Login | Unified way to access and authenticate resources |
LDAP/AD Authentication | ||
RADIUS Authentication | ||
OpenID Authentication(Single Sign-On) | ||
CAS Authentication (Single Sign-On) | ||
MFA (Multi-Factor Authentication) | Use Google Authenticator for MFA | |
RADIUS (Remote Authentication Dial In User Service) | ||
Login Supervision | Any user’s login behavior is supervised and controlled by the administrator:small_orange_diamond: | |
Accounting | Centralized Accounts Management | Admin Users management |
System Users management | ||
Unified Password Management | Asset password custody (a matrix storing all asset password with dense security) | |
Auto-generated passwords | ||
Automatic password handling (auto login assets) | ||
Password expiration settings | ||
Password change Schedular | Support regular batch Linux/Windows assets password changing:small_orange_diamond: | |
Implement multiple password strategies:small_orange_diamond: | ||
Multi-Cloud Management | Automatically manage private cloud and public cloud assets in a unified platform :small_orange_diamond: | |
Users Acquisition | Create regular custom tasks to collect system users in selected assets to identify and track the privileges ownership:small_orange_diamond: | |
Password Vault | Unified operations to check, update, and test system user password to prevent stealing or unauthorised sharing of passwords:small_orange_diamond: | |
Authorization | Multi-Dimensional | Granting users or user groups to access assets, asset nodes, or applications through system users. Providing precise access control to different roles of users |
Assets | Assets are arranged and displayed in a tree structure | |
Assets and Nodes have immense flexibility for authorizing | ||
Assets in nodes inherit authorization automatically | ||
child nodes automatically inherit authorization from parent nodes | ||
Application | Provides granular access control for privileged users on application level to protect from unauthorized access and unintentional errors | |
Database applications (MySQL, Oracle, PostgreSQL, MariaDB, etc.) and Remote App:small_orange_diamond: | ||
Actions | Deeper restriction on the control of file upload, download and connection actions of authorized assets. Control the permission of clipboard copy/paste (from outer terminal to current asset) | |
Time Bound | Sharply limited the available (accessible) time for account access to the authorized resources to reduce the risk and attack surface drastically | |
Privileged Assignment | Assign the denied/allowed command lists to different system users as privilege elevation, with the latter taking the form of allowing particular commands to be run with a higher level of privileges. (Minimize insider threat) | |
Command Filtering | Creating list of restriction commands that you would like to assign to different authorized system users for filtering purpose | |
File Transfer and Management | Support SFTP file upload/download | |
File Management | Provide a Web UI for SFTP file management | |
Workflow Management | Manage user login confirmation requests and assets or applications authorization requests for Just-In-Time Privileges functionality:small_orange_diamond: | |
Group Management | Establishing a multi-tenant ecosystem that able authority isolation to keep malicious actors away from sensitive administrative backends:small_orange_diamond: | |
Auditing | Operations | Auditing user operation behaviors for any access or usage of given privileged accounts |
Session | Support real-time session audit | |
Full history of all previous session audits | ||
Video | Complete session audit and playback recordings on assets operation (Linux, Windows) | |
Full recordings of RemoteApp, MySQL, and Kubernetes:small_orange_diamond: | ||
Supports uploading recordings to public clouds | ||
Command | Command auditing on assets and applications operation. Send warning alerts when executing illegal commands | |
File Transfer | Full recordings of file upload and download | |
Database | How to connect | Command line |
Built-in Web UI:small_orange_diamond: | ||
Supported Database | MySQL | |
Oracle :small_orange_diamond: | ||
MariaDB :small_orange_diamond: | ||
PostgreSQL :small_orange_diamond: | ||
Feature Highlights | Syntax highlights | |
Prettier SQL formmating | ||
Support Shortcuts | ||
Support selected SQL statements | ||
SQL commands history query | ||
Support page creation: DB, TABLE | ||
Session Auditing | Full records of command | |
Playback videos |