Как запретить пользователю, не являющемуся пользователем root, создание записи crontab

Существует три способа добиться этого:

1. Отключить пользовательский ssh без полномочий root, тогда пользователь без полномочий root не сможет использовать оболочку вообще.

Обратитесь к этому руководству за процедурой настроек.

2. Добавьте пользователя в файл /etc/cron.deny (типичный метод, который влияет только на пользователей из списка):

# cat /etc/cron.deny 
johny

Примечание. Убедитесь, что нет конфликта между файлом /etc/cron.allow и /etc/cron.deny.

Убедитесь, что пользователю запрещено создавать запись в crontab:

$ crontab -e
You (johny) are not allowed to use this program (crontab)
See crontab(1) for more information

3. Заблокируйте разрешение на выполнение команды crontab (Агрессивный подход, который влияет на всех пользователей без полномочий root):

Разрешения по умолчанию:

# ls -lrt /usr/bin/crontab 
-rwsr-xr-x 1 root root 57552 Apr 21  2015 /usr/bin/crontab

Измените права (удалите бит setuid):

# chmod 700 /usr/bin/crontab
# ls -lrt /usr/bin/crontab
-rwx------ 1 root root 57552 Apr 21  2015 /usr/bin/crontab

Примечание. Перед изменением прав на файл убедитесь, что у вас есть файл резервной копии.

После обновления пакета это изменение будет отменено по умолчанию.

Права по умолчанию:

# stat /usr/bin/crontab
  File: ‘/usr/bin/crontab’
  Size: 57552     	Blocks: 120        IO Block: 4096   regular file
Device: fd00h/64768d	Inode: 10751442    Links: 1
Access: (4755/-rwsr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-08-12 17:03:10.112443944 +0530
Modify: 2015-04-21 19:38:05.000000000 +0530
Change: 2016-03-14 14:03:30.347276747 +0530
 Birth: -

Убедитесь, что пользователю запрещено создавать запись в crontab:

$ crontab -e
bash: /usr/bin/crontab: Permission denied

 

cryptoparty

Cryptography is typically bypassed, not penetrated.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

5e7fa976b0640d40