A small utility for checking ssh hosts against a YAML Key Exchange security policy
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
To set up sshcheck, you will need to clone the repo and install locally with pip because I haven't botherd with pypi yet.
- Clone the repo
git clone https://github.com/XanaDublaKublaConch/sshcheck.git
- Create a venv in the cloned folder
# windows cd sshcheck py -3.10-64 -m venv venv venv\scripts\activate pip install . # Linux cd sshcheck python3 -m venv venv . venv/scripts/activate pip install .
To use the utility, you can run it from the activated venv with the sshcheck
command using the syntax:
sshcheck <ip or hostname> --port <port>
The --port option is not required and defaults to the standard port 22.
sshcheck 192.168.1.1
sshcheck localhost --port 2222
SSHCheck uses the rich
python library for pretty console display.
There are additional flags you can use to output svg, png, or pdf results (currently uses the fully-qualified hostname as the filename):
sshcheck myssh-server.home.local --svg-export
sshcheck myssh-server.home.local --png-export
sshcheck myssh-server.home.local --pdf-export
# combined
sshcheck myssh-server.home.local --svg-export --png-export --pdf-export
SVG/PDF output is built into rich
, but PNG output requires the cairosvg
library.
For more examples, please refer to the Documentation
- Take a policy as input?
- Custom exceptions
- FastAPI front-end
- Bulk host input? Not sure if I'm comfortable with this.
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
XanaDublaKublaConch - Use github issue tracker
Project Link: https://github.com/XanaDublaKublaConch/sshcheck