Если беспокойство - то, что поставленная под угрозу учетная запись пользователя может использоваться для сниффинга пароля, используемого для sudo
или su
, затем используйте одноразовый пароль для sudo
и su
.
Можно вызвать использование ключей для удаленных пользователей, но это не могло бы передать осмотр в целях соответствия. Могло бы быть более эффективно установить поле шлюза SSH, которое требует автора с двумя факторами, затем разрешите ключевое использование оттуда. Вот документ о такой установке: Защитите свое развертывание SSH с двухфакторной аутентификацией WiKID.
Я думаю причина, это не работает на Вас, то, потому что тот интерфейс был удержан от использования. Вы обычно не можете писать аудио использование /dev/dsp
больше, по крайней мере, не будучи хитрым.
Существует программа, которая выполнит это для Вас в Вашей системе: padsp
. Это отобразится /dev/audio
или /dev/dsp
файл к новой Аудио системе Сервера.
Включите терминал и войдите в корневой режим с sudo su
.
Затем я иду в cat /dev/urandom
и передайте вывод по каналу в padsp
и используйте tee
команда для отправки данных в /dev/audio
. Вы получите тонну мусора в Вашем терминале, таким образом, можно будет захотеть перенаправить к /dev/null
.
После того как Вы находитесь в суперпользователе, попробуйте эту команду:
cat /dev/urandom | padsp tee /dev/audio > /dev/null
Можно даже хотеть попробовать другими устройствами, как мышь: Используйте: /dev/psaux
, например, или драйвер usb. Можно даже выполнить память через него: /dev/mem
Надежда, которую это разъясняет, почему она не работала прежде.
Лично, я нашел, что мышь и память были путем, более интересным, чем проигрывание случайных помех!
Попробуйте/dev/audio или одно из других устройств под/dev/snd. Не все они - приемники аудиоданных, Вы, возможно, поймали микшер, микрофон или что-то
Звуковой демон (например. pulseaudio
) содержание блокировки на устройстве? Я думаю, что можно узнать, имеет ли что-либо еще дескриптор на нем через lsof
.
grep
и lsof
. pulseaudio
использует /dev/snd/controlC0
но это не включено /dev/snd/pcmC0D0p
. У меня была двойная проверка путем движения в /var/lock
найти, был ли файл для блокировки на устройстве. ls -al
говорит, что папка пуста. Таким образом, я предполагаю, что существует, не соединяют pcmC0D0p
– jones
31.05.2011, 15:51
cat /dev/urandom | aplay
команда, которая должна быть введена. Если Вы не находитесь в "аудио" группе, Вы могли бы снабдить префиксом aplay sudo. Это также не вмешивается ни в каких демонов (я работал pulseaudio
в то время как эта команда была активна и правильно услышала "шум".
РЕДАКТИРОВАНИЕ (6 августа 2019): В более старой версии команды у меня также был a padsp tee
вещь между cat
и aplay
. Теперь, когда я на самом деле работаю в поле, я понимаю, что это не имело абсолютно никакого смысла. Кроме того, я знаю обновленную команду (одно видимое теперь в начале этого ответа) работы, потому что я использую его несколько раз в день на работе.
padsp tee
требовался (у меня были точные 12.04.2 в то время), вещь - Вы, не должен пытаться вывести данные непосредственно в устройства, даже если бы Вы были корнем (насколько я знаю, что немного файлов читаемы и ни одно перезаписываемое в/dev папке), потому что Вы могли или получить ошибку (в лучшем случае, который становится более распространенным с каждым обновлением), разрушьте ядро или даже повредите устройство в редких случаях. Нужно использовать непривилегированные элементы, как aplay, чтобы сделать это (аудио группа или требуемый корень, к сожалению). @geremia
– Paul Stelian
03.02.2014, 04:12
обновление(2020 -12 -25 ):Я создал сценарий оболочки для пересылки данных из стандартного ввода в стандартный вывод, который настраивает стандартный вывод, если это файл PCM. Проверьтеhttps://github.com/pasqualirb/pcmsh.
TL;DR :Параметры устройства должны быть установлены перед чтением или записью данных в него.
Шаг за шагом:
Откройте устройство PCM. Например.:fd = open("/dev/snd/pcmC0D0p", O_RDWR)
. После открытия PCM находится в состоянии OPEN
.
Установите параметры с помощью ioctl(fd, SNDRV_PCM_IOCTL_HW_PARAMS, (struct snd_pcm_hw_params*) p)
. Структура аппаратных параметров имеет маски(каждый бит представляет собой значение )и интервалы ([минимум, максимум] диапазон ). Параметры, которые не устанавливаются, должны быть переданы заполненными (всеми битами/значениями, установленными для масок; полный диапазон для интервалов ). После установки аппаратных параметров PCM находится в состоянии SETUP
. См. код pcm _set _config()TinyALSA.
Достаточно установок ACCESS
, FORMAT
, RATE
, CHANNELS
, PERIOD_SIZE
и PERIODS
. Другие параметры являются их вариантами, за исключением BUFFER_SIZE
, который в некоторых устройствах может быть установлен на значение, не кратное PERIOD_SIZE
.
Вызовите ioctl(fd, SNDRV_PCM_IOCTL_PREPARE)
для подготовки переменных устройства и среды выполнения ALSA. После этого PCM находится в состоянии PREPARED
.
Начать чтение (захват )или запись (воспроизведение ).
Минимальное приложение для чтения или записи в устройство PCM будет иметь большую часть кода, связанного с манипулированием аппаратными параметрами.
sudo
полномочия не требуются для этого. – iyrin 08.05.2015, 21:03