| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Lot of spacing issues :)
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| | |
Support algorithm subtraction syntax from ssh_config
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As per `man ssh_config` for KexAlgorithms, MACs, and similar options:
```
Multiple algorithms must be comma-separated. Alternately if the specified value begins with a '+' character, then the specified methods will be appended to the default set instead of replacing them. If the specified value begins with a '-' character, then the specified methods (including wildcards) will be removed from the default set instead of replacing them.
```
Without this, having these subtraction options in your SSH config will replace the default algorithms and cause Net::SSH to raise with `Net::SSH::Exception` and "could not settle on host_key algorithm". i.e. it uses `-ssh-rsa` as the algorithm, rather than removing `ssh-rsa` from the algorithm preferences.
|
|/
|
|
| |
opt in instead of default because of the currpoted hmac issue
|
| |
|
|
|
|
| |
Transport::Algorithms#host_key_format
|
|
|
|
| |
Signed-off-by: Florian Wininger <fw.centrale@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implement the Encrypt-Then-Mac versions of the SHA2-256 and SHA2-512
MACs. These MACs are implemented by openssh and may be the only MACs
available on a hardened installation of openssh.
With EtM the MAC is calculated over the unencrypted packet length and
the encrypted payload (which includes padding length and padding).
The main benefit of EtM schemes is that it allows the encrypted
payload to be authenticated before it gets passed to the encryption
engine. This patch does not implement that mechanism, but this can be
added later to the poll_next_packet method. Note that all current MACs
already pass unauthenticated data to the encryption engine.
|
|
|
|
| |
Signed-off-by: Florian Wininger <fw.centrale@gmail.com>
|
|
|
|
| |
Signed-off-by: Florian Wininger <fw.centrale@gmail.com>
|
|
|
|
|
|
| |
defined?(OpenSSL::Digest::SHA256)
Signed-off-by: Florian Wininger <fw.centrale@gmail.com>
|
|\
| |
| | |
Deprecating RC4 as per https://tools.ietf.org/html/draft-ietf-curdle-rc4-die-die-die-10
|
| | |
|
| |
| |
| |
| |
| |
| | |
Display server and client algorithm preferences in the 'could not
settle' exception message. This is much simpler than logging the
preferences and suggesting the user check the log.
|
|/
|
|
|
|
|
| |
Failure to negotiate algorithms is a common cause of connection
difficulties. This adds essential troubleshooting information to the
log (at the 'error' level), plus a suggestion to check the log. The
intent is to clarify the problem and make troubleshooting easier.
|
| |
|
|
|
|
|
| |
This commit modifies Net::SSH to prefer strong encryption for HMAC,
Cipher, Host Key Authentication and Key Exchange operations.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
If a consumer used the default for the `:encryption` setting and the
host attempted to negotiate cipher suites with only supported suites
after `none` (but supported none), it would go ahead and use `none`
rather than the other supported cipher suites. This commit updates that
behavior to first allow Net::SSH to enumerate all of the possible
default cipher suites before ending on `none`.
|
| |
|
| |
|
|
|
|
|
|
| |
Removed the interpolation of a missing variable which would raise a `NameError` when a `Session` or `Algorithms` instance had a valid `logger` object regardless of log level.
Added a test that exercises the method in question, including an assertion that the output log includes the expected string.
|
|\
| |
| | |
Correctly parse '+' in config files
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Given “+ssh-dss” in HostkeyAlgorithms, this will no longer reset the
list of algorithms, but instead add the specified algorithms to the
list of supported ones
|
|/ |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
This commit introduces a new option, minimum_dh_bits. This option allows
the user to specify the minimum required bits for a diffie helman key
exchange in situations where the minimum hardcoded value of 1024 is too
weak.
|
| |
|
|
|
|
| |
Closes #278
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
By appending these algorithms, the user configuration is used as a preference
list instead of a white list.
This means that a connection might use a weaker algorithm than expected.
|
| |
|
| |
|
|
|
|
| |
unimplemented algs
|
|
|
|
| |
Add ciphers recently added to openssh (since openssh-6.4)
|