Advertisement
unfalse

Linux permissions cheatsheet(rus)

Jul 16th, 2015
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.73 KB | None | 0 0
  1. Права доступа в linux
  2. На основе http://habrahabr.ru/post/109392/
  3. =========================================================
  4. $ ls -l /bin/bash
  5. - rwx r-x r-x 1 root wheel 430540 Dec 23 18:27 /bin/bash
  6. | ||| ||| |||
  7. | ||| ||| |||
  8. | ||| ||| права для всех остальных юзеров
  9. | ||| |||
  10. | ||| права группы файла
  11. | |||
  12. | права владельца файла
  13. |
  14. | [r - чтение][w - запись][x - исполнение]
  15. |
  16. тип файла
  17. - обычный файл
  18. 'd' директория
  19. 'l' символическая ссылка
  20. 'c' устройство символьного ввода-вывода
  21. 'b' устройство блочного ввода-вывода
  22. 'p' FIFO
  23. 's' сокет
  24. ==========================================================
  25. groups [USER] - узнать группу, в которой состоишь
  26. chown USER FILE[S] - сменить юзера FILE[S] на USER
  27. chgrp GROUP FILE[S] - сменить группу у FILE[S] на GROUP
  28. chown USER:GROUP FILE[S] - сменить разом и юзера и группу
  29. chown -R USER DIR - сменить юзера рекурсивно у всех объектов в папке DIR
  30. chmod +x FILE[S] - сделать FILE[S] исполняемым(и) для юзера, группы и остальных
  31. chmod go-w FILE[S] - убрать право на запись у группы и остальных
  32. ==========================================================
  33. chmod [TYPE][=+-][PERM]
  34. |||| ||| ||||
  35. |||| ||| r - read
  36. |||| ||| w - write
  37. |||| ||| x - execute
  38. |||| |||
  39. |||| + - включить
  40. |||| - - отключить
  41. |||| = - при отсутствии TYPE, применить PERM для всех
  42. |||| если TYPE есть, применить только для TYPE
  43. ||||
  44. g - группа
  45. u - юзер
  46. o - остальные юзеры
  47. ==========================================================
  48. Числовые режимы
  49. Режим Число
  50. rwx 7
  51. rw- 6
  52. r-x 5
  53. r-- 4
  54. -wx 3
  55. -w- 2
  56. --x 1
  57. --- 0
  58.  
  59. $ chmod 0755 scriptfile.sh
  60. $ ls -l scriptfile.sh
  61. -rwxr-xr-x 1 drobbins drobbins 0 Jan 9 17:44 scriptfile.sh
  62.  
  63. Значение первого знака в числовом режиме
  64.  
  65. suid sgid sticky режим
  66. on on on 7
  67. on on off 6
  68. on off on 5
  69. on off off 4
  70. off on on 3
  71. off on off 2
  72. off off on 1
  73. off off off 0
  74. ==========================================================
  75. umask - значение показывает, какие права отключаются для
  76. создаваемых файлов.
  77. Например, 0022 (в большинстве Linux-дистрибутивов):
  78. ||||
  79. |||запрещена запись для остальных(w)
  80. ||запрещена запись для группы
  81. |для юзера ничего не меняется
  82. должен тут быть
  83. ( http://unix.stackexchange.com/questions/84676/how-is-umask-calculated-in-linux )
  84. ==========================================================
  85. suid
  86. $ ls -l /usr/bin/passwd
  87. -rwsr-xr-x 1 root wheel 17588 Sep 24 00:53 /usr/bin/passwd
  88. |
  89. бит suid, означает что эта программа будет работать от имени root.
  90. ==========================================================
  91. Предупреждение о suid/sgid
  92. Важно!
  93. Немного разрозненная, но в то же время очень важная информация о suid и sgid. Во-первых, биты suid и sgid занимают те же поля в выводе команды ls -l. Если бит x тоже задан, соответствующие биты будут показаны как s (в нижнем регистре). Однако, если бит x не задан то он будет отображаться как S (в верхнем регистре).
  94.  
  95. Важно!
  96. Еще одно важное замечание: suid и sgid бывают удобны во многих ситуациях, но неправильное их использование может привести к появлению уязвимостей в защите системы. Лучше всего иметь как можно меньшее количество suid программ. Команда passwd — одна из немногих, которая должна быть suid.
  97. ==========================================================
  98. Способ установки и удаления битов suid и sgid чрезвычайно прост. Вот так мы задаем бит suid:
  99.  
  100. # chmod u+s /usr/bin/myapp
  101.  
  102. А в следующем примере мы снимаем флаг sgid с директории. Вы увидите, как бит sgid работает с директориями немного ниже:
  103.  
  104. # chmod g-s /home/drobbins
  105. ==========================================================
  106. Директории и флаг sgid
  107. Если для директории установлен флаг sgid, то создаваемые файлы внутри
  108. наследуют группу директории:
  109. # mkdir /home/groupspace
  110. # chgrp mygroup /home/groupspace
  111. # chmod g+s /home/groupspace
  112. ==========================================================
  113. Sticky бит
  114. Если у директории установлен sticky бит, то файлы в ней могут
  115. изменять только владельцы файлов и root.
  116. Команда:
  117. chmod +t /tmp
  118. ==========================================================
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement