ubports / ubuntu-touch

A simple and beautiful mobile OS for everyone! This repository is for Ubuntu Touch issue tracking. It does not contain any code used to create Ubuntu Touch.
https://ubports.com
1.28k stars 109 forks source link

SSH running default with password authentication enabled #2070

Open greskom opened 1 year ago

greskom commented 1 year ago

Steps to reproduce

  1. Reset your device to factory defaults (not necesssary - just to demonstrate it is there by default).
  2. When you start your device sshd is running and allowing password authentication.

It is there because

mount | grep ssh

displays: /dev/mmcblk0p33 on /etc/ssh type ext4 (rw,relatime,discard,nodelalloc,data=journal) /dev/mmcblk0p33 on /etc/init/ssh.override type ext4 (rw,relatime,discard,nodelalloc,data=journal) /dev/loop0 on /etc/init/ssh.override type ext4 (ro,relatime,block_validity,delalloc,barrier,user_xattr)

On other phones this line: /dev/loop0 on /etc/init/ssh.override type ext4 (ro,relatime,block_validity,delalloc,barrier,user_xattr) is missing. Since it is there you get:

cat /etc/init/ssh.override

(one empty line of output) after

umount /etc/init/ssh.override

you get

mount | grep ssh

/dev/mmcblk0p33 on /etc/ssh type ext4 (rw,relatime,discard,nodelalloc,data=journal) /dev/mmcblk0p33 on /etc/init/ssh.override type ext4 (rw,relatime,discard,nodelalloc,data=journal)

cat /etc/init/ssh.override

manual

exec /usr/sbin/sshd -D -o PasswordAuthentication=no

This state is present only on volla phone. I do not get this on other ubports devices.

Expected behavior

sshd not running as default, but android-gadget-service enable ssh needed to be run for ssh to work (also after reboot - which is not true probably on volla - you can chack after fixing this bug)

Actual behavior

sshd is running as a default with password authentication enabled

Logfiles and additional information

cat /var/log/upstart/mountall.log

mount: cannot remount /dev/loop0 read-write, is write-protected mountall: mount /etc/init/ssh.override [921] terminated with status 32 mountall: Filesystem could not be mounted: /etc/init/ssh.override mountall: Skipping mounting /etc/init/ssh.override since Plymouth is not available mount: cannot remount /dev/loop0 read-write, is write-protected mountall: mount /etc/init/ssh.override [757] terminated with status 32 mountall: Filesystem could not be mounted: /etc/init/ssh.override mountall: Skipping mounting /etc/init/ssh.override since Plymouth is not available