mirror of
				https://github.com/drwetter/testssl.sh.git
				synced 2025-10-30 21:35:26 +01:00 
			
		
		
		
	Polish readme and reflect branch change to 3.0
This commit is contained in:
		
							
								
								
									
										132
									
								
								Readme.md
									
									
									
									
									
								
							
							
						
						
									
										132
									
								
								Readme.md
									
									
									
									
									
								
							| @@ -8,116 +8,73 @@ | ||||
| any port for the support of TLS/SSL ciphers, protocols as well as some | ||||
| cryptographic flaws. | ||||
|  | ||||
| #### Key features | ||||
| ### Key features | ||||
|  | ||||
| * Clear output: you can tell easily whether anything is good or bad | ||||
| * Machine readable output | ||||
| * Ease of installation: Linux, OSX/Darwin, FreeBSD, NetBSD, MSYS2/Cygwin, | ||||
|   WSL work out of the box (OpenBSD needs bash). No need to install | ||||
|   or to configure something.  No gems, CPAN, pip or the like | ||||
| * Clear output: you can tell easily whether anything is good or bad. | ||||
| * Machine readable output. | ||||
| * No installation needed: Linux, OSX/Darwin, FreeBSD, NetBSD, MSYS2/Cygwin, | ||||
|   WSL work out of the box. Only OpenBSD needs bash. No need to install | ||||
|   or to configure something.  No gems, CPAN, pip or the like. | ||||
| * A Dockerfile is provided, there's also an offical container @ dockerhub. | ||||
| * Flexibility: You can test any SSL/TLS enabled and STARTTLS service, not | ||||
|   only web servers at port 443 | ||||
| * Toolbox: Several command line options help you to run YOUR test and | ||||
|   configure YOUR output | ||||
| * Reliability: features are tested thoroughly | ||||
| * Privacy: It's only you who sees the result, not a third party | ||||
| * Freedom: It's 100% open source. You can look at the code, see what's | ||||
|   going on | ||||
|   only web servers at port 443. | ||||
| * Toolbox: Several command line options help you to run *your* test and | ||||
|   configure *your* output. | ||||
| * Reliability: features are tested thoroughly. | ||||
| * Privacy: It's only you who sees the result, not a third party. | ||||
| * Freedom: It's 100% open source. You can look at the code, see what's going on. | ||||
| * The development is open (github) and participation is welcome. | ||||
|  | ||||
| #### License | ||||
| ### License | ||||
|  | ||||
| This software is free. You can use it under the terms of GPLv2, see LICENSE. | ||||
| In addition starting from version 3.0rc1 if you're offering a scanner based on testssl.sh | ||||
| as a public and / or paid service in the internet you need to mention to your audience that you're using | ||||
| this program and where to get this program from. | ||||
|  | ||||
| #### Installation | ||||
| ### Compatibility | ||||
|  | ||||
| testssl.sh is working on every Linux/BSD distribution out of the box. Latest by 2.9dev | ||||
| most of the limitations of disabled features from the openssl client are gone | ||||
| due to bash-socket-based checks. As a result you can also use e.g. LibreSSL or OpenSSL | ||||
| 1.1.1 . testssl.sh also works on other unixoid system out of the box, supposed they have | ||||
| `/bin/bash` >= version 3.2 and standard tools like sed and awk installed. An implicit | ||||
| (silent) check for binaries is done when you start testssl.sh . System V needs probably | ||||
| to have GNU grep installed. MacOS X and Windows (using MSYS2, Cygwin or WSL) work too. | ||||
|  | ||||
| Update notification here or @ [twitter](https://twitter.com/drwetter). | ||||
|  | ||||
| ### Installation | ||||
|  | ||||
| You can download testssl.sh by cloning this git repository: | ||||
|  | ||||
|     git clone --depth 1 https://github.com/drwetter/testssl.sh.git | ||||
|  | ||||
| Or help yourself downloading the ZIP archive | ||||
| https://github.com/drwetter/testssl.sh/archive/2.9dev.zip.  ``testssl.sh --help`` | ||||
| will give you some help upfront.  More help: see doc directory with | ||||
| man pages. Older sample runs are at https://testssl.sh/. | ||||
| Or help yourself downloading the ZIP archive [https://github.com/drwetter/testssl.sh/archive/3.0.zip](https://github.com/drwetter/testssl.sh/archive/3.0.zip). | ||||
| ``testssl.sh --help`` will give you some help upfront. More help: see doc directory with | ||||
| man pages. Older sample runs are at [https://testssl.sh/](https://testssl.sh/). | ||||
|  | ||||
| #### Running a docker container from dockerhub | ||||
|  | ||||
|      docker run -ti drwetter/testssl.sh <your_cmd_line> | ||||
|  | ||||
| #### Status | ||||
| ### Status | ||||
|  | ||||
| In the 2.9dev branch we're developing the 3.0 release. We're currently in the | ||||
| release candidate phase. That means you can and should use it for production | ||||
| and let us know if you encounter any additional bugs. | ||||
| We're currently in the late release candidate phase. That means you can and should use it for production | ||||
| and let us know if you encounter any additional bugs. Features implemented in 3.0 are listed in the [Changelog](https://github.com/drwetter/testssl.sh/CHANGELOG.md). | ||||
|  | ||||
| For the previous stable version please see release | ||||
| [2.9.5](https://github.com/drwetter/testssl.sh/tree/2.9.5) which is is the | ||||
| successor of 2.8 and stable for day-to-day work. Support for 2.9.5 will be  | ||||
| soon dropped. 2.8 is not supported anymore. | ||||
|  | ||||
| #### Compatibility | ||||
|  | ||||
| testssl.sh is working on every Linux/BSD distribution out of the box. Since 2.9dev | ||||
| most of the limitations of disabled features from the openssl client are gone | ||||
| due to bash-socket-based checks. As a result you can also use e.g. LibreSSL or OpenSSL | ||||
| 1.1.1. testssl.sh also works on other unixoid system out of the box, supposed they have | ||||
| `/bin/bash` >= version 3.2 and standard tools like sed and awk installed. | ||||
| System V needs to have GNU grep installed. MacOS X and Windows (using MSYS2 or | ||||
| cygwin) work too. OpenSSL version  version >= 1.0.2 is recommended for better | ||||
| LOGJAM checks and to display bit strengths for key exchanges. | ||||
|  | ||||
| Update notification here or @ [twitter](https://twitter.com/drwetter). | ||||
|  | ||||
| #### Features implemented in [2.9dev](Readme.md#devel) (as opposed to [2.9.5](https://github.com/drwetter/testssl.sh/blob/2.9.5/Readme.md#features-implemented-in-295)) | ||||
| * Full support of TLS 1.3, shows also drafts supported | ||||
| * ROBOT check | ||||
| * Better TLS extension support | ||||
| * Better OpenSSL 1.1.1 support | ||||
| * DNS over Proxy and other proxy improvements | ||||
| * Decoding of unencrypted BIG IP cookies | ||||
| * Better JSON output: renamed IDs and findings shorter/better parsable | ||||
| * JSON output now valid also for non-responding servers | ||||
| * Testing now per default 370 ciphers | ||||
| * Further improving the robustness of TLS sockets (sending and parsing) | ||||
| * Support of supplying timeout value for `openssl connect` -- useful for batch/mass scanning | ||||
| * File input for serial or parallel mass testing can be also in nmap grep(p)able (-oG) format | ||||
| * LOGJAM: now checking also for DH  and FFDHE groups (TLS 1.2) | ||||
| * PFS: Display of elliptical curves supported, DH and FFDHE groups (TLS 1.2 + TLS 1.3) | ||||
| * Check for session resumption (Ticket, ID) | ||||
| * TLS Robustness check (GREASE) | ||||
| * Expect-CT Header Detection | ||||
| * `--phone-out` does certificate revocation checks via OCSP (LDAP+HTTP) and with CRL | ||||
| * Fully OpenBSD and LibreSSL support | ||||
| * Missing SAN warning | ||||
| * Added support for private CAs | ||||
| * Man page reviewed | ||||
| * Better error msg suppression (not fully installed OpenSSL) | ||||
| * Way better handling of connectivity problems | ||||
| * Exit codes better: 0 for running without error, 1+n for small errors, >240 for major errors. | ||||
| * Dockerfile and repo @ docker hub with that file (see above) | ||||
| * Java Root CA store added | ||||
| * Better support for XMPP via STARTTLS & faster | ||||
| * Certificate check for to-name in stream of XMPP | ||||
| * Support for NNTP via STARTTLS | ||||
| * More robustness for any STARTTLS protocol (fall back to plaintext while in TLS) | ||||
| * Fixed TCP fragmentation | ||||
| * Added `--ids-friendly` switch | ||||
| * Major update of client simulations with self-collected data | ||||
|  | ||||
| [Planned for 3.0](https://github.com/drwetter/testssl.sh/milestone/4). | ||||
| Support for 2.9.5 has been dropped. | ||||
|  | ||||
|  | ||||
| #### Documentation | ||||
| ### Documentation | ||||
|  | ||||
| * It is for reading. Please do so :-) at least before asking questions. | ||||
| * There's a man page in groff, html and markdown format in `~/doc/`. | ||||
| * https://testssl.sh/ will help to get you started. | ||||
| * [https://testssl.sh/](https://testssl.sh/) will help to get you started. | ||||
| * Will Hunt provides a longer, good [description](https://www.4armed.com/blog/doing-your-own-ssl-tls-testing/) for the version 2.8, including useful background info. | ||||
|  | ||||
|  | ||||
| #### Contributions | ||||
| ### Contributions | ||||
|  | ||||
| Contributions, feedback,  bug reports are welcome! For contributions please | ||||
| note: One patch per feature -- bug fix/improvement. Please test your | ||||
| @@ -125,18 +82,19 @@ changes thoroughly as reliability is important for this project. | ||||
|  | ||||
| There's a [coding guideline](https://github.com/drwetter/testssl.sh/wiki/Coding-Style). | ||||
|  | ||||
| #### Bug reports | ||||
| ### Bug reports | ||||
|  | ||||
| Please file bugs in the issue tracker. Do not forget to provide detailed information, | ||||
| see https://github.com/drwetter/testssl.sh/wiki/Bug-reporting. Nobody can read your | ||||
| Please file bugs in the issue tracker @ github. Do not forget to provide detailed information, | ||||
| see template. Details @ https://github.com/drwetter/testssl.sh/wiki/Bug-reporting. Nobody can read your | ||||
| thoughts -- yet. And only agencies your screen ;-) | ||||
|  | ||||
| You can also debug yourself, see [here](https://github.com/drwetter/testssl.sh/wiki/Findings-and-HowTo-Fix-them). | ||||
|  | ||||
| ---- | ||||
|  | ||||
| ## External/related projects | ||||
| ### External/related projects | ||||
|  | ||||
| Please address questions not specifically to the code of testssl.sh to the | ||||
| respective projects | ||||
| Please address questions not specifically to the code of testssl.sh to the respective projects below. | ||||
|  | ||||
| #### Cool web frontend | ||||
| * https://github.com/TKCERT/testssl.sh-webfrontend | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Dirk Wetter
					Dirk Wetter