Hard-Soft News

Новости железа и софта

Безопасный запуск Linux на устройстве ARM (часть II)

Продолжаем обживаться в системе ARM Linux, установленной на флешку.

Первая часть

Одно из первых действий после установки системы – создание нового пользователя. После создания пользователя с обычными правами вы обнаружите, что он не может выходить в сеть. Вызов любой сетевой программы заканчивается сообщением об отсутствии разрешений. Для того чтобы пользователь получил разрешение на выход в сеть, необходимо создать группу sockets и добавить пользователя в эту группу:

adduser newuser
addgroup --gid 3003 sockets
usermod -G sockets -a newuser

Другой полезной программой, которую следует установить в систему – демон SSH. Для того чтобы запустить сервер sshd необходимо настроить файл /etc/ssh/sshd_config. Вот один из вариантов конфига:

Port 22
Protocol 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
UsePrivilegeSeparation no
KeyRegenerationInterval 3600
ServerKeyBits 768
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes
RSAAuthentication yes
PubkeyAuthentication yes
IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no
PermitEmptyPasswords yes
ChallengeResponseAuthentication no
X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
AcceptEnv LANG LC_*
Subsystem sftp /usr/lib/openssh/sftp-server
UsePAM yes

Эта конфигурация разрешает доступ пользователю root по SSH. Если вы опасаетесь за безопасность системы, замените в строке

PermitRootLogin yes

параметр yes на no. Теперь мы можем подключаться к системе на мобильном устройстве с компьютера, обладающего полноценной клавиатурой. Дополнительное удобство SSH – возможность обмениваться файлами с мобильной системой с помощью SFTP.

Работа с графическими приложениями возможна в двух вариантах:

  1. Можно подключаться к системе с ПК через SSH и использовать X forwarding.
  2. Можно установить сервер tightvnc и подключаться через VNC. Этот вариант хорош тем, что клиент VNC может быть установлен на само мобильное устройство (например, на устройство Android). Впрочем, работать с десктопными графическими программами с устройства, которое рассчитано в основном на ввод не с клавиатуры, не очень удобно.

 

Итак, что же мы имеем? Мы имеем систему, которая способна запускаться с любого мобильного устройства на базе ARM, где есть Linux с подходящим ядром и хост USB. При этом в нашей системе нам доступно все, что предоставляет в наше распоряжение ядро Linux, в том числе директория /dev/.

Иначе говоря, мы получили неплохой полигон для программирования под ARM Linux и изучения периферии мобильного девайса.

ARM  Linux

Метки: , ,

Comments are closed.