diff --git a/README.md b/README.md index 95ca2bfe..8c531c10 100644 --- a/README.md +++ b/README.md @@ -544,10 +544,10 @@ SOFTWARE. [plex-amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg [plex-armhf-shield]: https://img.shields.io/badge/armhf-yes-green.svg [plex-i386-shield]: https://img.shields.io/badge/i386-yes-green.svg -[addon-ssh]: https://github.com/hassio-addons/addon-ssh/tree/v2.5.0 -[addon-doc-ssh]: https://github.com/hassio-addons/addon-ssh/blob/v2.5.0/README.md +[addon-ssh]: https://github.com/hassio-addons/addon-ssh/tree/v3.0.0 +[addon-doc-ssh]: https://github.com/hassio-addons/addon-ssh/blob/v3.0.0/README.md [ssh-issue]: https://github.com/hassio-addons/addon-ssh/issues -[ssh-version-shield]: https://img.shields.io/badge/version-v2.5.0-blue.svg +[ssh-version-shield]: https://img.shields.io/badge/version-v3.0.0-blue.svg [ssh-pulls-shield]: https://img.shields.io/docker/pulls/hassioaddons/ssh-armhf.svg [ssh-aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg [ssh-amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg diff --git a/ssh/CHANGELOG.md b/ssh/CHANGELOG.md index 63cc618f..57911bfa 100644 --- a/ssh/CHANGELOG.md +++ b/ssh/CHANGELOG.md @@ -1,14 +1,46 @@ [Full Changelog][changelog] +### Added + +- Rewrites add-on to include both SSH and Web Terminal +- Adds syntax highlighting in Nano +- Adds support for audio and UART devices +- Adds ZSH Autosuggestions +- Adds ZSH Syntax Highlighting +- Adds ack +- Adds access to all possible hardware + ### Fixed -- Fixes shellcheck warnings +- Fixes an issue with SSL not working ### Changed -- Moves build-env to latest -- Upgrades base image to v1.4.2 -- Upgrades git to 2.15.2-r0 -- Rewrites GitLab CI +- Upgrades base image to v2.0.1 +- Upgrades bind-tools to 9.12.1_p2-r0 +- Upgrades git to 2.18.0-r0 +- Upgrades libxml2-utils 2.9.8-r0 +- Upgrades mariadb-client to 10.2.15-r0 +- Upgrades mariadb-client to 10.2.15-r0 +- Upgrades nano to 2.9.8-r0 +- Upgrades ncurses to 6.1-r0 +- Upgrades net-tools to 1.60_git20140218-r2 +- Upgrades nmap to 7.70-r1 +- Upgrades openssh to 7.7_p1-r2 +- Uprades openssl to 1.0.2o-r1 +- Upgrades rsync to 3.1.3-r1 +- Upgrades sqlite to 3.24.0-r0 +- Upgrades sudo to 1.8.23-r2 +- Upgrades tmux to 2.7-r0 +- Upgrades vim to 8.1.0115-r0 +- Upgrades zip to 3.0-r5 +- Upgrades zsh to 5.5.1-r0 +- Upgrades Hadolint to latest version +- Updates Hass.io ASCII art in MOTD +- Updates add-on icon & logo +- Documentation merge and naming updates +- Layout improvements to README +- Small tidy up +- Updates forum URL -[changelog]: https://github.com/hassio-addons/addon-ssh/compare/v2.4.1...v2.5.0 \ No newline at end of file +[changelog]: https://github.com/hassio-addons/addon-ssh/compare/v2.5.0...v3.0.0 diff --git a/ssh/README.md b/ssh/README.md index ee216fa7..0bff0913 100644 --- a/ssh/README.md +++ b/ssh/README.md @@ -1,4 +1,4 @@ -# Community Hass.io Add-ons: SSH - Secure Shell +# Community Hass.io Add-ons: SSH & Web Terminal [![Release][release-shield]][release] ![Project Stage][project-stage-shield] ![Project Maintenance][maintenance-shield] @@ -7,25 +7,30 @@ [![Buy me a coffee][buymeacoffee-shield]][buymeacoffee] This add-on allows you to log in to your Hass.io Home Assistant instance using -SSH. +SSH or by using the Web Terminal. ## About This add-on allows you to log in to your Hass.io Home Assistant instance using -SSH, giving you to access your Hass.io folders and also includes a -command-line tool to do things like restart, update, and check your instance. +SSH or a Web Terminal, giving you to access your Hass.io folders and +also includes a command-line tool to do things like restart, update, +and check your instance. This is an enhanced version of the provided [SSH add-on by Home Assistant][hass-ssh] and focusses on security, -usability and flexibility. +usability, flexibility and also provides access using a web interface. [Click here for the full documentation][docs] +![Web Terminal in the Home Assistant Frontend][screenshot] + ## Features -This add-on, of course, provides an SSH server, based on [OpenSSH][openssh]. -Additionally, it comes out of the box with the following: +This add-on, of course, provides an SSH server, based on [OpenSSH][openssh] and +a web-based Terminal (which can be included in your Home Assistant frontend) as +well. Additionally, it comes out of the box with the following: +- Access your command line right from the Home Assistant frontend! - A secure default configuration of SSH: - Only allows login by the configured user, even if more users are created. - Only uses known secure ciphers and algorithms. @@ -33,12 +38,16 @@ Additionally, it comes out of the box with the following: - Many more security tweaks, *this addon passes all [ssh-audit] checks without warnings!* ![Result of SSH-Audit][ssh-audit-image] -- Comes with compatibility mode option to allow older clients to connect. +- Comes with an SSH compatibility mode option to allow older clients to connect. - SFTP support is disabled by default but is user configurable. - Compatible if Hass.io was installed via the generic Linux installer. - Username is configurable, so `root` is no longer mandatory. - Persists custom SSH client settings & keys between add-on restarts - Log levels for allowing you to triage issues easier. +- Hardware access to your audio and uart/serial devices. +- Runs with more privileges, allowing you to debug and test more situations. +- Has access to the dbus of the host system. +- Runs on host level network, allowing you to open ports or run little daemons. - Have custom Alpine packages installed on start. This allows you to install your favorite tools, which will be available every single time you log in. - Execute custom commands on add-on start so that you can customize the @@ -72,16 +81,17 @@ If you are more interested in stable releases of our add-ons: [buymeacoffee]: https://www.buymeacoffee.com/frenck [discord-shield]: https://img.shields.io/discord/330944238910963714.svg [discord]: https://discord.gg/c5DvZ4e -[docs]: https://github.com/hassio-addons/addon-ssh/blob/v2.5.0/README.md +[docs]: https://github.com/hassio-addons/addon-ssh/blob/v3.0.0/README.md [forum-shield]: https://img.shields.io/badge/community-forum-brightgreen.svg -[forum]: https://community.home-assistant.io/t/community-hass-io-add-on-ssh/33820?u=frenck +[forum]: https://community.home-assistant.io/t/community-hass-io-add-on-ssh-web-terminal/33820?u=frenck [hass-ssh]: https://home-assistant.io/addons/ssh/ [maintenance-shield]: https://img.shields.io/maintenance/yes/2018.svg [ohmyzsh]: http://ohmyz.sh/ [openssh]: https://www.openssh.com/ [project-stage-shield]: https://img.shields.io/badge/project%20stage-production%20ready-brightgreen.svg -[release-shield]: https://img.shields.io/badge/version-v2.5.0-blue.svg -[release]: https://github.com/hassio-addons/addon-ssh/tree/v2.5.0 +[release-shield]: https://img.shields.io/badge/version-v3.0.0-blue.svg +[release]: https://github.com/hassio-addons/addon-ssh/tree/v3.0.0 [ssh-audit-image]: https://github.com/hassio-addons/addon-ssh/raw/master/images/ssh-audit.png [ssh-audit]: https://github.com/arthepsy/ssh-audit -[zsh]: https://en.wikipedia.org/wiki/Z_shell \ No newline at end of file +[zsh]: https://en.wikipedia.org/wiki/Z_shell +[screenshot]: https://github.com/hassio-addons/addon-ssh/raw/master/images/screenshot.png \ No newline at end of file diff --git a/ssh/config.json b/ssh/config.json index 11f9d0fb..013e3baf 100644 --- a/ssh/config.json +++ b/ssh/config.json @@ -1,9 +1,10 @@ { - "name": "SSH - Secure Shell", - "version": "2.5.0", + "name": "SSH & Web Terminal", + "version": "3.0.0", "slug": "ssh", - "description": "Allows SSH connections to your Home Assistant instance", - "url": "https://community.home-assistant.io/t/community-hass-io-add-on-ssh/33820?u=frenck", + "description": "SSH & Web Terminal access to your Home Assistant instance", + "url": "https://community.home-assistant.io/t/community-hass-io-add-on-ssh-web-terminal/33820?u=frenck", + "webui": "http://[HOST]:[PORT:7681]", "startup": "services", "arch": [ "aarch64", @@ -15,6 +16,18 @@ "hassio_api": true, "homeassistant_api": true, "host_network": true, + "auto_uart": true, + "audio": true, + "devicetree": true, + "apparmor": false, + "host_dbus": true, + "privileged": [ + "NET_ADMIN", + "SYS_ADMIN", + "SYS_RAWIO", + "SYS_TIME", + "SYS_NICE" + ], "map": [ "config:rw", "ssl:rw", @@ -24,31 +37,57 @@ ], "options": { "log_level": "info", - "port": 22, - "username": "hassio", - "password": "", - "authorized_keys": [], - "sftp": false, - "compatibility_mode": false, - "allow_agent_forwarding": false, - "allow_remote_port_forwarding": false, - "allow_tcp_forwarding": false, + "ssh": { + "enable": true, + "port": 22, + "username": "hassio", + "password": "", + "authorized_keys": [], + "sftp": false, + "compatibility_mode": false, + "allow_agent_forwarding": false, + "allow_remote_port_forwarding": false, + "allow_tcp_forwarding": false + }, + "web": { + "enable": true, + "port": 7681, + "username": "hassio", + "password": "", + "ssl": false, + "certfile": "fullchain.pem", + "keyfile": "privkey.pem" + }, + "share_sessions": true, "packages": [], "init_commands": [] }, "schema": { "log_level": "match(^(trace|debug|info|notice|warning|error|fatal)$)", - "port": "port", - "username": "str", - "password": "str", - "authorized_keys": [ - "str" - ], - "sftp": "bool", - "compatibility_mode": "bool", - "allow_agent_forwarding": "bool", - "allow_remote_port_forwarding": "bool", - "allow_tcp_forwarding": "bool", + "ssh": { + "enable": "bool", + "port": "port", + "username": "str", + "password": "str", + "authorized_keys": [ + "str" + ], + "sftp": "bool", + "compatibility_mode": "bool", + "allow_agent_forwarding": "bool", + "allow_remote_port_forwarding": "bool", + "allow_tcp_forwarding": "bool" + }, + "web": { + "enable": "bool", + "port": "port", + "username": "str", + "password": "str", + "ssl": "bool", + "certfile": "str", + "keyfile": "str" + }, + "share_sessions": "bool", "packages": [ "str" ], diff --git a/ssh/icon.png b/ssh/icon.png index de3621f1..4f98baaa 100644 Binary files a/ssh/icon.png and b/ssh/icon.png differ diff --git a/ssh/logo.png b/ssh/logo.png index 24b4e2d5..628bf85e 100644 Binary files a/ssh/logo.png and b/ssh/logo.png differ