dartssh2 1.2.0-pre dartssh2: ^1.2.0-pre copied to clipboard
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';
import 'package:dartssh2/dartssh2.dart';
TODO
TODO
Quick start - SSH server #
Click to see more:
import 'package:dartssh2/dartssh2.dart';
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 ProtocolRFC 4255
Using DNS to Securely Publish Secure Shell (SSH) Key FingerprintsRFC 4256
Generic Message Exchange Authentication for the Secure Shell Protocol (SSH)
Credits #
https://github.com/GreenAppers/dartssh by GreenAppers
License #
dartssh is released under the terms of the MIT license. See LICENSE.