По соображениям безопасности выдвигаемым к обустройству своей локальной сети и располагаемым сервисам я предпринимаю отчаянные меры, такие как:
- Скрытие заголовков сервисов
- Включение в работу брандмауэра и разбор только тех портов которые нужны только для используемых сервисов
- Сложные пароли
- Проработка процедуры восстановления сервисов
- Доступ только по ключам и с доверенных адресов.
Но вот когда в моей сети появился миникомпьютер Raspberry Pi 3 Model B с сервисом MotionEye выставленным в интернет, чтобы я мог удаленно смотреть за деятельностью вокруг своего дома с участком, до меня ни зашло. Ведь можно же использовать для административного подключения не учетную запись pi, а вообще же любую, а вот дефолтную по умолчанию желательно удалить.
На заметку: используемая на замену учетная запись и пароль здесь это только для заметки.
Вот как это сделать и пойдет речь в текущей заметке, как всегда, моя система настроенная по соответствующей заметке.
Вот группы в которых состоит дефолтная учетная запись pi:
pi@raspberrypi:~ $ cat /etc/group | grep pi
adm:x:4:pi
dialout:x:20:pi
cdrom:x:24:pi
sudo:x:27:pi
audio:x:29:pi,pulse
video:x:44:pi
plugdev:x:46:pi
games:x:60:pi
users:x:100:pi
input:x:101:pi
netdev:x:108:pi
pi:x:1000:
spi:x:999:pi
i2c:x:998:pi
gpio:x:997:pi
Создаю учетную запись которая будет использоваться, как замена дефолтной.
pi@raspberrypi:~ $ sudo useradd -m -G
adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,spi,i2c,gpio ekzorchik
pi@raspberrypi:~ $ sudo passwd ekzorchik
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Теперь чтобы система автоматически загружалась в новую учетную запись (при GUI загрузке):
pi@raspberrypi:~ $ sudo nano /etc/systemd/system/getty.target.wants/getty@tty1.service
#ExecStart=-/sbin/agetty --autologin pi --noclear %I $TERM
ExecStart=-/sbin/agetty --autologin ekzorchik --noclear %I $TERM
pi@raspberrypi:~ $ sudo reboot
После уже подключаюсь через SSH клиент к Raspberry Pi 3 Model B с применением созданной учетной записи:
ekzorchik@navy:~$ ssh -l ekzorchik 192.168.1.124
ekzorchik@192.168.1.124's password: 712mbddr@
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sun Mar 12 20:36:51 2017
ekzorchik@raspberrypi:~ $
Отлично, теперь нужно удалить какое-либо упоминание об дефолтной учетной записи pi:
ekzorchik@raspberrypi:~ $ sudo deluser --remove-all-files pi
Еще раз перезагружаюсь:
ekzorchik@raspberrypi:~ $ sudo reboot
А после подключившись по VNC проверяю, какая дефолтная учетная запись сейчас, но вот в чем загвоздка, система автоматически не загрузилась, в смысле автологон не произведен:
Значит чего-то не хватает, исправляю это дело:
ekzorchik@raspberrypi:~ $ sudo raspi-config
«Boot Options» → «Desktop / CLI» → входим в «Console Autologin»
«Boot Options» → «Desktop / CLI» → входим в «Desktop Autologin»
После выходим Finish, Would you like to reboot now? = No
Created symlink from /etc/systemd/system/default.target to /lib/systemd/system/graphical.target.
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /lib/systemd/system/multi-user.target.
ekzorchik@raspberrypi:~ $ sudo nano /etc/lightdm/lightdm.conf
#autologin-user=pi
autologin-user=ekzorchik
ekzorchik@raspberrypi:~ $ sudo reboot
После перезагрузки подключаюсь по VNC к миникомпьютеру Raspberry Pi 3 Model B и вижу, что произошел вход в систему под учетной записью ekzorchik без какого-либо окна ввода логина и пароля, хотя наверное лучше бы его оставить:
Вообще хотелось бы отметить, что можно и оставить учетную запись pi, но изменить ей пароль соответствующей Вашей собственной политики сложности. А в дополнение создать, как я сделал выше свою и работать под ней.
На заметку: Чтобы отключить AutoLogin в систему, нужно закомментировать строку:
ekzorchik@raspberrypi:~ $ sudo nano /etc/lightdm/lightdm.conf
#autologin-user=ekzorchik
ekzorchik@raspberrypi:~ $ sudo /etc/init.d/lightdm stop
[ ok ] Stopping lightdm (via systemctl): lightdm.service.
ekzorchik@raspberrypi:~ $ sudo /etc/init.d/lightdm start
[ ok ] Starting lightdm (via systemctl): lightdm.service.
ekzorchik@raspberrypi:~ $ uname -a && lsb_release -a
Linux raspberrypi 4.9.13-v7+ #974 SMP Wed Mar 1 20:09:48 GMT 2017 armv7l GNU/Linux
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 8.0 (jessie)
Release: 8.0
Codename: jessie
Отлично, я для себя разобрал что меня интересовало. И поэтому считаю данную заметку выполненной в полной мере. На этом всё, с уважением автор блога Олло Александр aka ekzorchik.