добавление sudoer в debian

Необработанная обработка событий мыши с использованием файла устройства потребует:

  1. повышенных привилегий, так что вы не должны открывать клиентскому приложению
  2. достаточно знаний о внутренней работе устройства мыши, чтобы в основном создать свою собственную мышь драйвер, который, конечно, может быть загружаемым модулем ядра, и он может быть доступен через локальную службу, созданную вами, которая будет получать команды из сети и отправлять их в модуль ядра по настраиваемому протоколу, или
  3. вы можете просто создайте приложение, которое предоставляет функциональность загруженного драйвера мыши какому-либо внешнему сетевому интерфейсу, и в этом случае самым простым решением для клиента было бы сделать его интерфейсом REST и управлять им через curl или браузер

Но ни одно из вышеперечисленных решений не кажется безопасным ...

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

Я полагаю, что когда вы говорите, что «вы хотите управлять мышью удаленно», вы имеете в виду управление мышью, как показано в целевом графическом интерфейсе пользователя. Это сервис, предоставляемый сервером X-Windows, которым можно легко и безопасно управлять через командную строку с помощью ssh.
Простите, но я действительно не знаю, как netcat вписывается в эту картину ...

Итак, вы могли бы просто использовать xdotool ] для имитации события мыши по ssh-соединению:

$ ssh user@machine xdotool mousemove 0 0 click 1

Да, это действительно так просто!

См .:
Как события мыши работают в Linux?
https: // stackoverflow.com / questions / 1029027 / x11-move-an-existing-window-via-command-line

Это на тот случай, если вы хотите управлять курсором мыши, как показано в целевой операционной системе. Потому что, если ваша цель - создать терминальное приложение, использующее мышь (это мышь, физически подключенная к клиенту), вам определенно следует выбрать программу, основанную на ncurses . ncurses использует сервер мыши терминала с открытым исходным кодом, а также может использоваться для предоставления сложного графического интерфейса через ssh и простого терминала. Кроме того, ncurses не зависит от работы x-сервера, потому что он никоим образом не влияет на мышь сервера, он просто использует мышь клиента для управления приложением.

В любом случае, если ваша цель - просто поиграть с файлами устройства linux, попробуйте отправить документ на аудиоустройство и посмотреть, как он звучит ... подойдет простой cat and pipe с привилегиями root.

7
28.06.2016, 13:33
4 ответа

Отредактируйте в качестве root / etc / sudoers и поместите следующую строку:

youruser    ALL=(ALL) NOPASSWD:ALL

после

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

Таким образом вы сможете выполнять все команды, требующие привилегий sudo, без пароля.

Чтобы использовать sudo и запрашивать пароль, необходимо удалить

NOPASSWD:ALL
17
27.01.2020, 20:13

Следующая команда является правильной и достаточной, но вам необходимо полностью выйти из системы и повторно войти для работы.

usermod -a -G sudo user
15
27.01.2020, 20:13

Кроме того, в Debian, если не работает, нужно установить пакет sudo:

apt install sudo

Затем у вас должен быть файл /etc/sudoersи действуйте следующим образом:

usermod -a -G sudo user
3
27.01.2020, 20:13

Вам необходимо выполнить следующую команду от имени root :(, где USERNAMEзаменяется вашим фактическим именем пользователя)

usermod -aG sudo USERNAME

Это не сработает, если вы попытаетесь запустить эту команду от имени непривилегированного пользователя.
Итак, чтобы получить root-права и убедиться, что необходимые пакеты установлены, сделайте это:

su
[enter password for your root user]
apt update
apt upgrade
apt install sudo
apt install usermod
usermod -ag sudo USERNAME
reboot

Не забудьте в конце перезагрузиться!
После перезагрузки пользователь сможет использовать команды sudo.

Подсказка:Если вы попытались запустить длинную команду, которая не удалась, потому что на самом деле требуются права sudoer, вы можете использовать следующий трюк, чтобы запустить команду снова, но на этот раз с правильными привилегиями:

sudo !!
2
27.01.2020, 20:13

Теги

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