Выполните сценарий оболочки на команде

Это - вероятно, Ваше видео затем, хорошо работает для меня, когда я называю это video.ogg под Firefox 3.5. Попытайтесь экспортировать некоторые другие ogg видео, возможно, с помощью различных программ экспорта только, чтобы протестировать, и видеть, можно ли получить какое-либо проигрывание. Все, что я сделал, было использовать следующее в качестве файла index.html в корне документа Apache:

<HTML>
<BODY>
omg HTML5 video test, here it is:
<video src="video.ogg" controls="true" type="video/ogg"></video>
</BODY>
</HTML>
6
задан 21 December 2010 в 15:09
3 ответа

Благодарит тонну мой serverfault друзья для ответов.

Я думаю, что придумал ответ для своего вопроса со всей Вашей справкой. Но Вы все, kinldy выручают меня, если существует какая-либо ошибка, связанная с ним или какие-либо улучшения, которые будут сделаны? Здесь я иду.

Это вещи, которые я сделал.

i). созданный сценарий, datewrapper.sh в / и т.д. со следующим кодом

#! /bin/bash

# wrapper script for the date command.
# whenever the date -s command is issued, it will be logged.

# executing the date command first with parameter list if any
date $@

# check whether the date command executed successfully
if [ "$?" == "0" ] ; then
   for param in $@ ; do
      # if "-s" option is used, log it
      if [ "$param" == "-s" ] ; then
         # user.notice logs the message to /tmp/log/user.log
         # as per the commands in /etc/syslog-ng/syslog-ng.conf
         logger -p user.notice "New date set"
         break
      fi
   done
fi

exit 0

ii). chmod a+x/etc/datewrapper.sh; дата псевдонима = '/etc/datewrapper.sh'

iii). дата

Вторник 21 декабря 21:51:01 UTC 2010

iv). дата-s "21:53:05"

Вторник 21 декабря 21:53:05 UTC 2010

v). Я проверил /tmp/log/user.log. Это показывает сообщение

21 декабря 21:53:05 localhost корень: Новая дата назначена

Таким образом, результат - это каждый раз, когда пользователь дает date команда, мой сценарий будет выполняться и каждый раз, когда он дает команду с -s опция, это будет вошедший /tmp/log/user.log

1
ответ дан 3 December 2019 в 00:11

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

Посмотрите auditd(8) и audit.rules(7) для полного описания синтаксиса правил, и для примеров аудита операций изменения времени, можно искать "изменение времени" в примере nispom.rules файл. Можно найти это в локальной системе, или можно найти его здесь:

Для получения дополнительной информации о audit подсистема (и документация немного твердо прибыть):

7
ответ дан 3 December 2019 в 00:11

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

  1. Создайте сценарий обертки, который регистрирует программу и затем выполняет ее (использование исходных параметров)
  2. Удостоверьтесь, что обертка заменяет исходную программу в пользовательском пути.

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

Если Вы только хотите зарегистрироваться, часть выполнения использует regexp в сценарии обертки.

4
ответ дан 3 December 2019 в 00:11

Теги

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