Как я превращаю ноутбук в бездисплейный сервер Ubuntu?

поиск способа превратить ноутбук в бездисплейный сервер поля с сервером человечности, с ssh только доступ, активированное шифрование диска, никакое приглашение ко входу в систему в перезагрузке и деактивировать экран и клавиатуру.

4
задан 19 March 2018 в 17:35

1 ответ

Здесь спрошены, четыре вопроса/требования и некоторые из них не совместимы друг друга. Если это будет домашний сервер с открытым доступом (поскольку это походит), я просто установил бы Сервер Ubuntu и закрою крышку ноутбука для создания этого бездисплейным.


Установка SSH

Для установки сервера SSH на Ubuntu выполняют следующие команды (или галочка Открывают процесс установки SSH Server during Ubuntu Server's; openssh-client должен быть установлен по умолчанию):

sudo apt update 
sudo apt install openssh-server openssh-sftp-server

Теперь необходимо смочь соединиться с сервером SSH через петлевой интерфейс (с самого сервера) командой:

ssh <user>@localhost  

Установите основанную на ключе аутентификацию для увеличения безопасности. Сначала создайте каталог .ssh в рамках корневого каталога Вашего пользователя: mkdir ~/.ssh

Затем от удаленного экземпляра (от Вашей LAN), давайте предположим, что это - также Ubuntu, выполните следующие шаги (источник):

  • Генерация Ключей RSA (вводят пароль для большей безопасности в случае, если кто-то крадет Ваш ключ, это должно отличаться от пароля Вашего пользователя):

    mkdir ~/.ssh
    chmod 700 ~/.ssh
    ssh-keygen -t rsa -b 4096
    chmod 600 ~/.ssh/id_rsa
    
  • Передайте клиентский ключ к серверу (примечание):

    ssh-copy-id <user>@<server-lan-ip>
    
  • Теперь необходимо смочь соединиться с сервером SSH с ключевой аутентификацией (необходимо ввести пароль, если Вы имеете, устанавливают его):

    ssh <user>@<server-lan-ip>
    

После того как это работает, Вы могли отключить аутентификацию по паролю Сервера путем редактирования файла /etc/ssh/sshd_config таким образом:

#PasswordAuthentication yes
PasswordAuthentication no

Не делайте забыл перезапускать сервер SSH: sudo systemctl restart sshd.service

Если Вы планируете использовать зашифрованный корневой каталог, необходимо настроить конфигурацию SSH (на стороне сервера), как это описано здесь: SSH позволяет удаленные соединения только после локального входа в систему сервера.


Никакое приглашение ко входу в систему в перезагрузке или Как предотвратить вход в систему с физическим доступом

Я пустошь говорит, по-моему, что это не необходимо. В рамках Ubuntu вход в систему с корнем отключен по умолчанию. Это означает как администратор локального сервера, необходимо войти в остроумие пользователь, который мог иметь твердое для предположения (нечетный, бессмысленный) имени пользователя и сильного пароля. И, я думаю, это достаточно в этом случае, где необходимо предположить пароль ручной записью. Если Вы хотите добавить больше безопасности, можно установить двухфакторную аутентификацию.

На самом деле, во-первых, необходимо отключить режим Recovery для предотвращения входа в систему с физическим доступом как корень. Это доступно в 'Расширенных настройках' в меню GRUB, которое может быть достигнуто через длинное нажатие клавиши Shift во время начальной загрузки.

Если Вы действительно хотите отключить TTYs для предотвращения входа в систему с физическим доступом, в в наше время версиях Ubuntu (15.04 +), что использование systemd, можно отредактировать файл /etc/systemd/logind.conf следующим образом это отключит TTYs от 2 до 6 (источник):

[Login]
NAutoVTs=0

TTY-1 трудно кодируется и будет оставаться активен. Для отключения TTY-1 используют следующую команду, которая будет символьная ссылка он к /dev/null (источник):

sudo systemctl mask getty@tty1.service    # use `unmask` to remove the symlink

Теперь перезапустите систему, и TTYs должен быть недоступным.


Деактивируйте экран и клавиатуру

Экран и клавиатура ноутбука могли быть деактивированы через GRUB. С этой целью отредактируйте файл /etc/default/grub и измените следующую строку показанным способом (где <default parameters> параметры, который уже существует):

GRUB_CMDLINE_LINUX_DEFAULT="<default parameters> i8042.nokbd video=LVDS-1:d"

Затем выполнитесь sudo update-grub и перезагрузка система. Эти дополнительные параметры ядра деактивируют клавиатуру и экран ноутбука. Мое исследование показывает, что они будут соответствовать почти каждому виду/модели ноутбука.

Можно переопределить эти параметры путем нажатия e клавиши в рамках меню GRUB. С этими настройками, если Вы включаете внешнюю клавиатуру и монитор (почему не и мышь) они должны работать.


Полное шифрование диска

Короткое интернет-исследование показывает, что там доступны немного подходов, как сделать полное шифрование диска, например:

Пожалуйста, примите во внимание! "Последствие полного системного шифрования - то, что необходимо ввести в системном пароле каждый раз, когда Вы включаете свой компьютер..."

Так, если Вы установите полное шифрование диска и отключите клавиатуру и дисплей, то это сделает невозможным выполнить систему после перезагрузки.

Вот немного дополнительных примечаний о шифровании: Используя сервис VPS, я могу препятствовать тому, чтобы мои данные были доступны хостом VPS?


Думайте дважды перед полным шифрованием диска установки!

Это добавит безопасность только в случае, Ваше устройство украдено, и его жесткий диск/SSD присоединен к другому хосту. Во время рабочего процесса Вашего Сервера диск будет дешифрован, чтобы быть доступным для системы. Таким образом, это не добавит дополнительную сетевую безопасность.

В том же начале - Вам действительно нужна эта дополнительная головная боль? Я провел бы это время для приобретения знаний о том, как использовать LVM.

Возможно, требуется использовать зашифрованный корневой каталог для предотвращения других пользователей системы для доступа к персональным файлам. В этом случае, если Вы не зарегистрированы, Ваши персональные данные будут зашифрованы.

Отметьте, планируете ли Вы быть одиноким администратором этого Сервера, Вы не должны делать этого, потому что можно ограничить доступ к файлам и папкам эффективно через полномочия.

В то время как Вы зарегистрированы, Ваш дом будет дешифрован, чтобы быть доступным для Вашего пользователя и если существует другой администратор - кто-то, который может использовать sudo команда, - который злонамеренно настраивается (!?), он мог получить доступ к Вашим файлам.

Возможно, самый эффективный способ сохранить Ваши уязвимые данные безопасными состоит в том, чтобы использовать зашифрованную папку (или просто зашифрованный архивный файл). Таким образом, прежде дешифруют папку (файл), Вы могли проверить, кто зарегистрирован (как корень).

4
ответ дан 1 December 2019 в 09:44

Другие вопросы по тегам:

Похожие вопросы: