A pure dart SSH implementation based on dartssh, with bug fixes, up-to-date dependencies and sound null safety
DartSSH 2
dartssh2
is a pure dart SSH implementation based on dartssh, with bug fixes, up-to-date dependencies and sound null safety.
dartssh2
providing first-class tunnelling primitives.
Feature support
Keys | Ed25519, ECDSA, RSA |
KEX | X25519DH, ECDH, DHGEX, DH |
Cipher | AES-CTR, AES-CBC |
MAC | MD5, SHA |
Compression | not yet supported |
Forwarding | TCP/IP, Agent |
Tunneling drop-ins for | Socket, WebSocket, package:http |
Try
# Install the `dartssh` command.
dart pub global activate dartssh2
# Then use `dartssh` as regular `ssh` command.
dartssh user@example.com
If the
dartssh
command can not be found after installation, you might need to set up your path.
Quick start – SSH client
Click to see more:import 'package:dartssh2/dartssh2.dart';
TODO
TODO
Quick start – SSH server
Click to see more:import 'package:dartssh2/dartssh2.dart';
TODO
TODO
Example
SSH client: example/dartssh.dart
SSH server: example/dartsshs.dart
Roadmap
- Fix broken tests
- Sound null safety
- Redesign API to allow starting multiple sessions. In progress…
- SFTP
References
RFC 4251
The Secure Shell (SSH) Protocol ArchitectureRFC 4252
The Secure Shell (SSH) Authentication ProtocolRFC 4253
The Secure Shell (SSH) Transport Layer ProtocolRFC 4254
The Secure Shell (SSH) Connection Protocol
Credits
https://github.com/GreenAppers/dartssh by GreenAppers
License
dartssh is released under the terms of the MIT license. See LICENSE.