Author: s.franke at bebbosoft.de Uploader: s franke bebbosoft de Type: comm/net Version: 1.28 Architecture: m68k-amigaos Required: bsdsocket.library (e.g AmiTCP) Date: 2024-08-19 Readme: http://aminet.net/comm/net/amigassh.readme Downloads: 3662
http://aminet.net/comm/net/amigassh.lha
===============================================================================
NAME
amigassh
SSH2 for the Amiga, 68000+. Needs a server that supports the used crypto stuff.
It will work on an unaccelerated Amiga but establishing the connection takes
about one minute. It provides
- amigasshd
- amigassh
- amigascp
- amigasshkeygen
An A3000 will
NOTE that this is *NOT* feature complete.
If you want more features: Support me.
If you want to see the code on github.com: Support me more^^
===============
amigassh
===============
USAGE: amigassh [options] [user at ]host[:port] [command [args]]
-? display this help
-i <file> select the private key file for public key authentication
-p <port> define a port
-L [bind_address:]port:host:hostport
listen at bind_address:port and forward to host:hostport
-T don't allocate a pseudo terminal
-v <n> set verbosity, 0 = OFF, 7 = TRACE
<command> command to run instead of shell
Open a shell on the host using your console colors and mouse.
Or execute a command via SSH2.
===============
amigasshd
===============
* e.g. ENVARC:ssh/ssh_host_ed25519_key
* create entries with
username password
* the passwords are getting hashed on first user logon
Start amigasshd to accept remote SSH2 connections.
ApolloOS)
ApolloOS too)
===============
amigasshkeygen
===============
USAGE: amigasshkeygen [-f <output_keyfile>]
-? display this help
Create ed25519 key files.
===============
amigascp
===============
USAGE: amigascp [options] [source] [target]
one of [source]/[target] must be remote, the other local
-? display this help
-i <file> select the private key file for public key authentication
-p <port> connect to the host at port <port>
-t allocate a pseudo terminal
-u <user> connect as <user>
or use <user> at <host>:<path>
-v <n> set verbosity, defaults to 4 = INFO
Copy files from remote to local or from local to remote.
Wildstar pattern is supported in the last element of the source.
===============================================================================
SUPPORT ME
If you want more features implemented: Support me!
Support me via PayPal: https://t.ly/N8WkB
also small monthly donations do help :-)
Thanks to all supporters!
It financed me an one year subscription of the Amiga Future magazine plus
a license of the TCP/IP stack RoadShow.
===============================================================================
TESTING
Many thanks to all testers, especially to
===============================================================================
COPYRIGHT
ed/curve25519 based on code from Public Domain, Authors:
- Daniel J. Bernstein
- Niels Duif
- Tanja Lange
- lead: Peter Schwabe
- Bo-Yin Yang
* optimized, modified to use 16 bit integers
by Stefan "Bebbo" Franke
aes based on code from Nate Wiger
gcm, sha256, sh512, amigassh itself:
- Stefan "Bebbo" Franke
Written in 2024 by Stefan "Bebbo" Franke <s.franke at bebbosoft>
To the extent possible under law, the author(s) have dedicated all copyright
and related and neighboring rights to this software to the public domain
worldwide. This software is distributed without any warranty.
You should have received a copy of the CC0 Public Domain Dedication along with
this software.
If not, see <https://creativecommons.org/publicdomain/zero/1.0/>.
===============================================================================
DISCLAIMER OF WARRANTY
Software is provided "AS IS," without a warranty of any kind.
You may use it on your own risk.
===============================================================================
LIMITATION OF LIABILITY
I SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY YOU OR ANY THIRD PARTY
AS A RESULT OF USING OR DISTRIBUTING SOFTWARE. IN NO EVENT WILL I BE LIABLE
FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS
OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE
SOFTWARE, EVEN IF I HAVE ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
===============================================================================
HISTORY
amigassh V1.28
amigassh V1.27
amigassh V1.26
amigassh V1.25
amigassh V1.24
amigassh V1.23
amigassh V1.22
amigassh V1.21
A3000 ~ 32kB/s
V4SA ~ 630kB/s
amigassh V1.20
A3000 ~ 30kB/s
V4SA ~ 580kB/s
amigassh V1.19
Note that only unprotected key files do work with amigassh.
A3000 ~ 20kB/s
V4SA ~ 400kB/s
this twice as fast as before!
amigassh V1.18
Normal Amiga applications do work on ApolloOS
Stuff from C:bin/ is still broken. /shrug
amigassh V1.17
not available volumes are denied and result into: not found.
An A3000 will copy with ~10kb/s, a Vampire with up to ~180kb/s.
The libcryptossh.library was built using my new simple library approach
https://franke.ms/amiga/so.wiki
amigassh V1.16
amigassh V1.15
amigassh V1.14
amigassh V1.13
This increases the chance to establish a connection on slow Amigas
* creating a key pair is down to 43,2s!
* verifying the host is down to 2:14,6!
amigassh V1.12
amigassh V1.11
Now 16 bit integers are sufficient!
amigassh V1.10
amigassh V1.9
Necessary since too many stuff checks for the string `xterm`...
amigassh V1.8
CTRL+C is handled only by the host
amigassh V1.7
amigassh V1.6
amigassh V1.5
amigassh V1.4
amigassh V1.3
amigassh V1.2
amigassh V1.1
amigassh V1.0
===============================================================================
SYNOPSIS
amigassh [-p port] [user at ]host[:port]
The port defaults to 22.
The user is read from the environment variable `USER`.
===============================================================================
DESCRIPTION
amigassh is an implementation of SSH2. The supported cryptographic methods are
Only password based authentication is supported for now.
Install the terminfo `xterm-amiga` on the remote system!
Feel free to improve it!
On many systems you have to copy it as root into `/usr/share/terminfo/x`
Pimp your `.bash_profile` to unset `LANG` since the Amiga doesn't like UTF8...
A convenient way is to add this to `.bash_profile`:
```
if [ "$TERM" == "xterm-amiga" ]; then
unset LANG
fi
```
===============================================================================
RANDOM HINTS
It's rand() pimped with time and vpos. Then SHA256 is applied. Good enough?
But who would talk about security on an unprotected system like the Amiga?
set USER=<yourname>
you can do this in `s:shell-startup`
Use the icon tooltypes to set
COMMAND a remote command to execute instead of a shell
CONSOLE an Amiga console string (defaults to CON://///AUTO/CLOSE/WAIT)
HOST the host name
PORT the port (defaults to 22)
TERM the terminal emulation (defaults to xterm-amiga)
USER the user name
install the `xterm-amiga` terminfo!
install the `xterm-amiga` terminfo!
install the `xterm-amiga` terminfo!
install the `xterm-amiga` terminfo!
use tic and add the switch -s:
tic -s xterm-amiga.src
try pimping the xterm-amiga terminfo.
use `tic -xsv9 -o. xterm-amiga.src`
unset the variable `LANG`
ensure you are using the sftp subsystem, on some systems it's the `-s` flag
`scp -s ...`
exist?
e.g.: list foobar:
Get https://aminet.net/util/boot/Requester.lha and run "Cancel 5" from your
startup-sequence!
Check the file ENVARC:.ssh/authorized_keys if your public key is listed there.
add your user name to avoid detection as a local assign/drive:
myname at ram:folder
PERMISSION UID GID PACKED SIZE RATIO METHOD CRC STAMP NAME ---------- ----------- ------- ------- ------ ---------- ------------ ---------- drwxr-xr-x 1000/1000 0 0 ****** -lhd- 0000 Aug 19 18:19 amigassh/ -rw-r--r-- 1000/1000 2857 7169 39.9% -lh5- dded Aug 19 18:19 amigassh/COPYING -rwxr-xr-x 1000/1000 21419 39308 54.5% -lh5- 801a Aug 19 18:19 amigassh/amigascp -rwxr-xr-x 1000/1000 16444 28020 58.7% -lh5- 8970 Aug 19 18:19 amigassh/amigassh -rw-r--r-- 1000/1000 455 906 50.2% -lh5- 5a43 Aug 19 18:19 amigassh/amigassh.info -rw-r--r-- 1000/1000 5480 12964 42.3% -lh5- 015c Aug 19 18:19 amigassh/amigassh.readme -rwxr-xr-x 1000/1000 28250 54240 52.1% -lh5- 5c38 Aug 19 18:19 amigassh/amigasshd -rwxr-xr-x 1000/1000 3790 5988 63.3% -lh5- 197a Aug 19 18:19 amigassh/amigasshkeygen -rwxr-xr-x 1000/1000 25271 39304 64.3% -lh5- 8686 Aug 19 18:19 amigassh/libcryptossh.library drwxr-xr-x 1000/1000 0 0 ****** -lhd- 0000 Aug 19 18:19 amigassh/template/ -rw-r--r-- 1000/1000 32 32 100.0% -lh0- e79e Aug 19 18:19 amigassh/template/passwd -rw-r--r-- 1000/1000 290 447 64.9% -lh5- ae49 Aug 19 18:19 amigassh/template/sshd_config -rw-r--r-- 1000/1000 587 1433 41.0% -lh5- 8c0d Aug 19 18:19 amigassh/xterm-amiga -rw-r--r-- 1000/1000 717 1398 51.3% -lh5- 3bfa Aug 19 18:19 amigassh/xterm-amiga.src ---------- ----------- ------- ------- ------ ---------- ------------ ---------- Total 14 files 105592 191209 55.2% Aug 20 04:21
Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminet aminet net>