https://github.com/natlee/telepy
A Django-based web application for managing and monitoring the reverse SSH tunnels or jump servers.
https://github.com/natlee/telepy
django-application jumpserver python reverse-proxy ssh-server
Last synced: 3 months ago
JSON representation
A Django-based web application for managing and monitoring the reverse SSH tunnels or jump servers.
- Host: GitHub
- URL: https://github.com/natlee/telepy
- Owner: NatLee
- License: mit
- Created: 2024-02-18T12:29:25.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-01T14:02:56.000Z (7 months ago)
- Last Synced: 2025-06-03T23:31:43.672Z (4 months ago)
- Topics: django-application, jumpserver, python, reverse-proxy, ssh-server
- Language: Python
- Homepage:
- Size: 595 KB
- Stars: 8
- Watchers: 3
- Forks: 1
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Telepy

A web application for managing and monitoring the reverse SSH tunnels.
## Usage
1. Copy the `.env.example` to `.env` and change the environment variables.
2. Generate keys for SSH server.
```bash
./telepy.sh keygen
```3. Build and run the Docker container.
```bash
docker-compose up
```4. (Optional) Create a superuser for Django admin.
> Be aware that the first user created will be the superuser whatever the method you use. See [this function](./src/user_management/signals.py) for more details.
> So, if you want to login with Google account, just visit the login page and login with Google account.You need to check the script `./dev-create-superuser.sh` and change the username and password if you want.
```bash
./telepy.sh create-superuser
```5. Go to `http://localhost:/login`, it will show the login page.
## API Documentation
If you want to see the API documentation, you need to login first.
1. Go to `http://localhost:/api/__hidden_admin/` and login with the superuser.
2. Go to `http//localhost:/api/__hidden_swagger` and you will see the Swagger.
## Misc
There are some scripts in the `dev-scripts` directory.
You can just use `./telepy.sh` to run the scripts.
```bash
Usage: ./telepy.sh sub-command [args]
Sub-commands:
keygen: Generate SSH keys for Telepy service.
create-superuser: Create an admin account for Telepy management.
shell: Create a shell to run arbitrary command.
ipython: Create a shell to run ipython.
supervisorctl: Attach to supervisor control shell.
ssh-shell: Similar to 'shell', but for ssh container.
migration: Run migration process.
backend-debug: Recreate and attach to backend container.
collect-static: Collect static files to increase rendering speed.
django-startapp: Create a new Django app.
```## Contributors
## License
[MIT](./LICENSE)