Skip to content

Commit

Permalink
Merge pull request #49 from pacoorozco/add-docs-site
Browse files Browse the repository at this point in the history
Add project documentation site
  • Loading branch information
pacoorozco authored Oct 1, 2020
2 parents 052bb86 + acc5085 commit 641ccc5
Show file tree
Hide file tree
Showing 8 changed files with 2,914 additions and 30 deletions.
23 changes: 23 additions & 0 deletions .github/workflows/vuepress-deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Publish documentation site
on:
push:
branches:
- master
paths:
- 'docs/**'
- '.github/workflows/*.yml'
jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: vuepress-deploy
uses: jenkey2011/vuepress-deploy@master
env:
ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
TARGET_REPO: pacoorozco/ssham
TARGET_BRANCH: gh-pages
BUILD_SCRIPT: npm ci && npm run docs:build
BUILD_DIR: docs/.vuepress/dist/
CNAME: ssham.pacoorozco.info
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@ Homestead.json
# Vagrant
.vagrant/

# Vuepress
docs/.vuepress/dist

# Development & editor stuff
.idea/
.vscode/
Expand Down
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/) and this project adheres to [Semantic Versioning](https://semver.org/).

## Unreleased
### Added
- Documentation site available at [ssham.pacoorozco.info](https://ssham.pacoorozco.info).
### Changed
- Update dependencies to the latest versions.
### Fixed
Expand Down
1 change: 1 addition & 0 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@
"exclude": [
"/utils",
"/.*",
"/docs",
"!/.env.example"
]
}
Expand Down
20 changes: 20 additions & 0 deletions docs/.vuepress/config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/*
* SSH Access Manager - SSH keys management solution.
*
* Copyright (c) 2017 - 2020 by Paco Orozco <[email protected]>
*
* This file is part of some open source application.
*
* Licensed under GNU General Public License 3.0.
* Some rights reserved. See LICENSE, AUTHORS.
*
* @author Paco Orozco <[email protected]>
* @copyright 2017 - 2020 Paco Orozco
* @license GPL-3.0 <http://spdx.org/licenses/GPL-3.0>
* @link https://github.com/pacoorozco/ssham
*/

module.exports = {
title: "ssham",
description: "Secure Shell Access Manager",
};
126 changes: 126 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
# SSH Access Manager Web Interface

## Presentation

SSH Access Manager is a comprehensive access security management platform that permits IT professionals to easily establish and maintain an enterprise-wide SSH access security solution from a central location.

It enables a team of system administrators to centrally manage and deploy SSH keys. This app is intended to be used in rather large environment where access to unix accounts are handled with SSH keys.

SSH Access Manager allows you to maintain user public keys. You can organise these keys with group of keys called keyring. Then SSH Access Manager will deploy the keys and/or key rings to specified unix accounts / groups / servers.

## Changelog

See our [CHANGELOG](CHANGELOG.md) file in order to know what changes are implemented in every version.

## How to test SSH Access Manager

This will create several [Docker](https://www.docker.com/) containers to implement all SSHAM needs. A web server and a database server.

Prior this installation, you **need to have installed** this software:

* [Docker](https://www.docker.com/)

1. Clone the repository locally

```bash
$ git clone https://github.com/pacoorozco/ssham.git ssham
$ cd ssham
```
1. Install PHP dependencies with:

> **NOTE**: You don't need to install neither _PHP_ nor _Composer_, we are going to use a [Composer image](https://hub.docker.com/_/composer/) instead.
```bash
$ docker run --rm --interactive --tty \
--volume $PWD:/app \
--user $(id -u):$(id -g) \
composer install
```
1. Copy [`.env.example`](.env.example) to `.env`.
> **NOTE**: You don't need to touch anything from this file. It works with default settings.

1. Start all containers with [Docker Compose](https://docs.docker.com/compose/)

```bash
$ docker-compose build
$ docker-compose up -d
```
1. Seed database in order to play with some data

```bash
$ docker-compose exec app php artisan key:generate
$ docker-compose exec app php artisan migrate --seed
```

1. Point your browser to `http://localhost` and test **SSH Access Manager**. Enjoy!

> **NOTE**: Default credentials are `admin/secret`.

## How to install SSH Access Manager

1. Clone the repository locally

```bash
$ git clone https://github.com/pacoorozco/ssham.git ssham
$ cd ssham
```

1. Install PHP dependencies with [composer](http://getcomposer.org)

```bash
$ curl -s http://getcomposer.org/installer | php
$ php composer.phar install
```

1. Copy [`.env.example`](.env.example) to `.env`.

1. Modify the content of the `.env` file to put your settings, something like that:

```php
DB_HOST='Your database host'
DB_DATABASE='Your database name'
DB_USERNAME='Your database user'
DB_PASSWORD='Your database password'
```
1. Seed database in order to play with some data

```bash
$ php artisan key:generate
$ php artisan migrate --seed
```
1. Make sure `storage/` and `bootstrap/cache/` folders are writable by your web server. You can do it this way:

```bash
$ chmod -R 777 storage/ bootstrap/cache/
```

1. You can use the local PHP server to run the application.

```bash
$ php artisan serve --port=4000`
```

1. Your SSH Access Manager is not listening at `http://localhost:4000`. Enjoy!

> **NOTE**: Default credentials are `admin/secret`.

## Reporting issues

If you have issues with **SSH Access Manager**, you can report them with the [GitHub issues module](https://github.com/pacoorozco/ssham/issues).

## Contributing

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

## License

**SSH Access Manager** is released as free software under [GPLv3](http://www.gnu.org/licenses/gpl-3.0.html)

## Authors

This app was original coded by **Paco Orozco** (paco _at_ pacoorozco.info)

## Additional information
This application was born with a different interface on [Sourceforge](http://sourceforge.net/projects/ssham/).
Loading

0 comments on commit 641ccc5

Please sign in to comment.