net-ssh 8.0.4 → 8.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/CHANGES.txt +10 -0
- data/lib/net/ssh/authentication/certificate.rb +2 -2
- data/lib/net/ssh/authentication/methods/abstract.rb +4 -0
- data/lib/net/ssh/authentication/methods/hostbased.rb +3 -3
- data/lib/net/ssh/authentication/methods/publickey.rb +50 -38
- data/lib/net/ssh/authentication/session.rb +2 -1
- data/lib/net/ssh/buffer.rb +2 -2
- data/lib/net/ssh/config.rb +95 -38
- data/lib/net/ssh/multiplex.rb +3 -2
- data/lib/net/ssh/prompt.rb +41 -3
- data/lib/net/ssh/transport/algorithms.rb +4 -1
- data/lib/net/ssh/transport/session.rb +20 -2
- data/lib/net/ssh/version.rb +2 -2
- data/lib/net/ssh.rb +17 -5
- data.tar.gz.sig +0 -0
- metadata +3 -31
- metadata.gz.sig +1 -1
- data/.dockerignore +0 -9
- data/.github/FUNDING.yml +0 -1
- data/.github/config/rubocop_linter_action.yml +0 -4
- data/.github/pull_request_template.md +0 -1
- data/.github/workflows/changelog.yml +0 -18
- data/.github/workflows/ci-with-docker.yml +0 -55
- data/.github/workflows/ci.yml +0 -84
- data/.github/workflows/rubocop.yml +0 -18
- data/.gitignore +0 -15
- data/.rubocop.yml +0 -26
- data/.rubocop_todo.yml +0 -1077
- data/CONTRIBUTING.md +0 -34
- data/DEVELOPMENT.md +0 -23
- data/Dockerfile +0 -32
- data/Dockerfile.openssl3 +0 -17
- data/Dockerfile.zlib_ng +0 -29
- data/Gemfile +0 -15
- data/ISSUE_TEMPLATE.md +0 -30
- data/Manifest +0 -132
- data/Rakefile +0 -214
- data/SECURITY.md +0 -4
- data/THANKS.txt +0 -110
- data/appveyor.yml +0 -46
- data/changelog.d/README.md +0 -1
- data/docker-compose.yml +0 -17
- data/net-ssh-public_cert.pem +0 -21
- data/net-ssh.gemspec +0 -45
- data/support/ssh_tunnel_bug.rb +0 -65
data/appveyor.yml
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
version: '{build}'
|
|
2
|
-
|
|
3
|
-
skip_tags: true
|
|
4
|
-
|
|
5
|
-
environment:
|
|
6
|
-
matrix:
|
|
7
|
-
- ruby_version: "31-x64"
|
|
8
|
-
- ruby_version: "30-x64"
|
|
9
|
-
- ruby_version: "27-x64"
|
|
10
|
-
|
|
11
|
-
#init:
|
|
12
|
-
# - ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
|
|
13
|
-
|
|
14
|
-
#on_finish:
|
|
15
|
-
# - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
platform:
|
|
19
|
-
- x86
|
|
20
|
-
|
|
21
|
-
install:
|
|
22
|
-
- SET PATH=C:\Ruby%ruby_version%\bin;%PATH%
|
|
23
|
-
- ruby --version
|
|
24
|
-
- gem install bundler --no-document --user-install -v 2.4.22
|
|
25
|
-
- bundle install --retry=3
|
|
26
|
-
- cinst freesshd
|
|
27
|
-
- cinst putty --allow-empty-checksums
|
|
28
|
-
- ps: |
|
|
29
|
-
if ($env:Processor_Architecture -eq "x86")
|
|
30
|
-
{
|
|
31
|
-
dir 'C:\Program Files\'
|
|
32
|
-
dir 'C:\Program Files\freeSSHd'
|
|
33
|
-
cp 'test\win_integration\FreeSSHDService.ini' 'C:\Program Files\freeSSHd\FreeSSHDService.ini'
|
|
34
|
-
& 'C:\Program Files\freeSSHd\FreeSSHDService.exe'
|
|
35
|
-
} else {
|
|
36
|
-
dir 'C:\Program Files (x86)\'
|
|
37
|
-
dir 'C:\Program Files (x86)\freeSSHd'
|
|
38
|
-
cp 'test\win_integration\FreeSSHDService32.ini' 'C:\Program Files (x86)\freeSSHd\FreeSSHDService.ini'
|
|
39
|
-
& 'C:\Program Files (x86)\freeSSHd\FreeSSHDService.exe'
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
test_script:
|
|
43
|
-
- SET NET_SSH_RUN_WIN_INTEGRATION_TESTS=YES
|
|
44
|
-
- bundle exec rake test
|
|
45
|
-
|
|
46
|
-
build: off
|
data/changelog.d/README.md
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Changelog fragments: one `<PR number>.<type>.txt` file per user-visible change, assembled into `CHANGES.txt` when the version is bumped. See [CONTRIBUTING.md](../CONTRIBUTING.md#changelog).
|
data/docker-compose.yml
DELETED
data/net-ssh-public_cert.pem
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
|
2
|
-
MIIDeDCCAmCgAwIBAgIBATANBgkqhkiG9w0BAQsFADBBMQ8wDQYDVQQDDAZuZXRz
|
|
3
|
-
c2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZFgNj
|
|
4
|
-
b20wHhcNMjYwMjE1MTAxNzUyWhcNMjcwMjE1MTAxNzUyWjBBMQ8wDQYDVQQDDAZu
|
|
5
|
-
ZXRzc2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZ
|
|
6
|
-
FgNjb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGJ4TbZ9H+qZ08
|
|
7
|
-
pQfJhPJTHaDCyQvCsKTFrL5O9z3tllQ7B/zksMMM+qFBpNYu9HCcg4yBATacE/PB
|
|
8
|
-
qVVyUrpr6lbH/XwoN5ljXm+bdCfmnjZvTCL2FTE6o+bcnaF0IsJyC0Q2B1fbWdXN
|
|
9
|
-
6Off1ZWoUk6We2BIM1bn6QJLxBpGyYhvOPXsYoqSuzDf2SJDDsWFZ8kV5ON13Ohm
|
|
10
|
-
JbBzn0oD8HF8FuYOewwsC0C1q4w7E5GtvHcQ5juweS7+RKsyDcVcVrLuNzoGRttS
|
|
11
|
-
KP4yMn+TzaXijyjRg7gECfJr3TGASaA4bQsILFGG5dAWcwO4OMrZedR7SHj/o0Kf
|
|
12
|
-
3gL7P0axAgMBAAGjezB5MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
|
|
13
|
-
BBQF8qLA7Z4zg0SJGtUbv3eoQ8tjIzAfBgNVHREEGDAWgRRuZXRzc2hAc29sdXRp
|
|
14
|
-
b3VzLmNvbTAfBgNVHRIEGDAWgRRuZXRzc2hAc29sdXRpb3VzLmNvbTANBgkqhkiG
|
|
15
|
-
9w0BAQsFAAOCAQEASsiVybehJLRPztFeFV8+SKa2BwbBSNJoAkhARVJKhpJxCfeY
|
|
16
|
-
gO7Kqb7JCykzb0anb1s6xTrzD03cWRNGE2YaoBLqnzeUqW1LPqVwmcySmnSIGH9F
|
|
17
|
-
DlFYlHaAn3oSqglyDxQx9bLngKatetx+tSfB3bLAb7Tr9PO8/lhBENbjlD4+UUwD
|
|
18
|
-
gApoZuD9pknWDH3KsITgzphswETBdo0hd9aLnRNR3EifD0lUIEit/0Yx6euSxWtI
|
|
19
|
-
ufHf4AX2UIkJbh7zCPkiNCqIr7MSWLNFG/9lOlHYsEJM8XujT1ofPobYx6YSFx/C
|
|
20
|
-
7HBrI7UX7awt6UvBZebhcHzyMHxg/B5PVQllPA==
|
|
21
|
-
-----END CERTIFICATE-----
|
data/net-ssh.gemspec
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
require_relative 'lib/net/ssh/version'
|
|
2
|
-
|
|
3
|
-
Gem::Specification.new do |spec|
|
|
4
|
-
spec.name = "net-ssh"
|
|
5
|
-
spec.version = Net::SSH::Version::STRING
|
|
6
|
-
spec.authors = ["Jamis Buck", "Delano Mandelbaum", "Mikl\u{f3}s Fazekas"]
|
|
7
|
-
spec.email = ["net-ssh@solutious.com"]
|
|
8
|
-
|
|
9
|
-
if ENV['NET_SSH_BUILDGEM_SIGNED']
|
|
10
|
-
spec.cert_chain = ["net-ssh-public_cert.pem"]
|
|
11
|
-
spec.signing_key = "/mnt/gem/net-ssh-private_key.pem"
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
spec.summary = %q{Net::SSH: a pure-Ruby implementation of the SSH2 client protocol.}
|
|
15
|
-
spec.description = %q{Net::SSH: a pure-Ruby implementation of the SSH2 client protocol. It allows you to write programs that invoke and interact with processes on remote servers, via SSH2.}
|
|
16
|
-
spec.homepage = "https://github.com/net-ssh/net-ssh"
|
|
17
|
-
spec.license = "MIT"
|
|
18
|
-
spec.required_ruby_version = Gem::Requirement.new(">= 2.7")
|
|
19
|
-
spec.metadata = {
|
|
20
|
-
"changelog_uri" => "https://github.com/net-ssh/net-ssh/blob/master/CHANGES.txt"
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
spec.extra_rdoc_files = [
|
|
24
|
-
"LICENSE.txt",
|
|
25
|
-
"README.md"
|
|
26
|
-
]
|
|
27
|
-
|
|
28
|
-
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
|
29
|
-
spec.bindir = "exe"
|
|
30
|
-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
31
|
-
spec.require_paths = ["lib"]
|
|
32
|
-
|
|
33
|
-
spec.add_dependency("logger")
|
|
34
|
-
spec.add_dependency("openssl", ">= 3.2.0")
|
|
35
|
-
|
|
36
|
-
spec.add_development_dependency("bcrypt_pbkdf", "~> 1.0") unless RUBY_PLATFORM == "java"
|
|
37
|
-
|
|
38
|
-
spec.add_development_dependency "base64"
|
|
39
|
-
spec.add_development_dependency "bundler", ">= 1.17"
|
|
40
|
-
spec.add_development_dependency "minitest", "~> 5.19"
|
|
41
|
-
spec.add_development_dependency "mocha", ">= 2.1", "< 4"
|
|
42
|
-
spec.add_development_dependency "ostruct"
|
|
43
|
-
spec.add_development_dependency "rake", "~> 12.0"
|
|
44
|
-
spec.add_development_dependency "rubocop", "~> 1.28.0"
|
|
45
|
-
end
|
data/support/ssh_tunnel_bug.rb
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/ruby
|
|
2
|
-
|
|
3
|
-
# SSH TUNNEL CONNECTION BUG
|
|
4
|
-
# from: http://net-ssh.lighthouseapp.com/projects/36253/tickets/7-an-existing-connection-was-forcibly-closed-by-the-remote-host#ticket-7-3
|
|
5
|
-
#
|
|
6
|
-
# Steps to reproduce:
|
|
7
|
-
#
|
|
8
|
-
# * Start HTTP Proxy
|
|
9
|
-
# * If running debian in EC2:
|
|
10
|
-
# * apt-get install squid
|
|
11
|
-
# * Add the following to /etc/squid/squid.conf:
|
|
12
|
-
# acl localnet src 1.2.3.0/255.255.255.0
|
|
13
|
-
# http_access allow localnet
|
|
14
|
-
# icp_access allow localnet
|
|
15
|
-
# visible_hostname netsshtest
|
|
16
|
-
# * Start squid squid -N -d 1 -D
|
|
17
|
-
# * Run this script
|
|
18
|
-
# * Configure browser proxy to use localhost with LOCAL_PORT.
|
|
19
|
-
# * Load any page, wait for it to load fully. If the page loads
|
|
20
|
-
# correctly, move on. If not, something needs to be corrected.
|
|
21
|
-
# * Refresh the page several times. This should cause this
|
|
22
|
-
# script to failed with the error: "closed stream". You may
|
|
23
|
-
# need to try a few times.
|
|
24
|
-
#
|
|
25
|
-
|
|
26
|
-
require 'highline/import'
|
|
27
|
-
require 'net/ssh'
|
|
28
|
-
|
|
29
|
-
LOCAL_PORT = 8080
|
|
30
|
-
PROXY_PORT = 3128
|
|
31
|
-
|
|
32
|
-
host, user = *ARGV
|
|
33
|
-
abort "Usage: #{$0} host user" unless ARGV.size == 2
|
|
34
|
-
|
|
35
|
-
puts "Connecting to #{user}@#{host}..."
|
|
36
|
-
pass = ask("Password: ") { |q| q.echo = "*" }
|
|
37
|
-
puts "Configure your browser proxy to localhost:#{LOCAL_PORT}"
|
|
38
|
-
|
|
39
|
-
begin
|
|
40
|
-
session = Net::SSH.start(host, user, password: pass)
|
|
41
|
-
session.forward.local(LOCAL_PORT, host, PROXY_PORT)
|
|
42
|
-
session.loop {true}
|
|
43
|
-
rescue StandardError => e
|
|
44
|
-
puts e.message
|
|
45
|
-
puts e.backtrace
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
__END__
|
|
50
|
-
|
|
51
|
-
$ ruby support/ssh_tunnel.rb host user
|
|
52
|
-
Connecting to user@host...
|
|
53
|
-
Password: ******
|
|
54
|
-
Configure your browser proxy to localhost:8080
|
|
55
|
-
closed stream
|
|
56
|
-
/usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/buffered_io.rb:99:in `send'
|
|
57
|
-
/usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/buffered_io.rb:99:in `send_pending'
|
|
58
|
-
/usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:236:in `block in postprocess'
|
|
59
|
-
/usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:235:in `each'
|
|
60
|
-
/usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:235:in `postprocess'
|
|
61
|
-
/usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:203:in `process'
|
|
62
|
-
/usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:161:in `block in loop'
|
|
63
|
-
/usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:161:in `loop'
|
|
64
|
-
/usr/local/lib/ruby/gems/1.9.1/gems/net-ssh-2.0.15/lib/net/ssh/connection/session.rb:161:in `loop'
|
|
65
|
-
|