Compare commits

..

No commits in common. "a92bf6e8d20f35c20ad7d72350c35ca2877b7ee2" and "ffb3e58bf08e6eefd9421050fefaec2074ad02d9" have entirely different histories.

4 changed files with 0 additions and 102 deletions

View File

@ -8,7 +8,6 @@
### Команды
- `git remote -v` - показывает все удалённые репозитории, которые связаны с локальным репозиторием
- `git init ; git remote add origin <https> or <ssh>` - добавить удалённый репозиторий
- `git remote set-url origin git@github.com:ilyamak04/shortest_flight.git` - установить новый url удалённого репозитория
- `rm -rf /path/to/repo/.git` - git больше не будет отслеживать эту директорию
- `git config --global --list`
- `git config --global user.name "Ваше Имя"`

View File

@ -132,92 +132,6 @@ echo `date`
```
Bash сначала выполнит команду `date` (внутри кавычек), затем передаст её результат команде `echo`.
### ACL
ACL (Access Control Lists) — позволяет более гибко управлять правами доступа к файлам в Linux. ACL позволяет назначать права для конкретных пользователей и групп, не меняя владельца файла или группу.
Для работы с ACL используются две основные команды:
- `setfacl` - устанавливает ACL для файлов и каталогов
- `getfacl` - показывает текущие ACL для файлов и каталогов
**Синтаксис `setfacl`:**
```bash
setfacl [опции] [действие] [пользователь/группа]:[права] файл
```
**Опции:**
- `-m` (modify) — изменить ACL.
- `-x` (remove) — удалить ACL.
- `-b` (remove all) — удалить все ACL.
- `-R` (recursive) — применить рекурсивно ко всем файлам и подкаталогам.
- `-d` (default) — установить ACL по умолчанию для новых файлов в каталоге.
**Действия:**
- `u:пользователь:права` — установить права для пользователя.
- `g:группа:права` — установить права для группы.
- `m::права` — изменить маску (максимальные права для группы и других).
**Права:**
- `r` — чтение.
- `w` — запись.
- `x` — выполнение (для каталогов — доступ).
- `X` — выполнение, только если это каталог или файл уже имеет право на выполнение.
- `-` — отсутствие прав.
**Примеры использования:**
```bash
# Дать пользователю prometheus права на чтение файла
sudo setfacl -m u:prometheus:r /etc/letsencrypt/live/prometheus.mcarov.pro/fullchain.pem
```
```bash
# Дать пользователю prometheus права на чтение и выполнение для каталога
sudo setfacl -m u:prometheus:rX /etc/letsencrypt/live/prometheus.mcarov.pro/
```
```bash
# Удалить ACL для пользователя prometheus
sudo setfacl -x u:prometheus /etc/letsencrypt/live/prometheus.mcarov.pro/fullchain.pem
```
```bash
# Удалить все ACL
sudo setfacl -b /etc/letsencrypt/live/prometheus.mcarov.pro/fullchain.pem
```
```bash
# Просмотр ACL
getfacl <file_name>
# Пример вывода:
# file: file.txt
# owner: user1
# group: group1
user::rw-
user:username:rwx
group::r--
mask::rwx
other::r--
```
**Маска (mask)** — это специальная запись ACL, которая ограничивает максимальные права доступа для всех записей ACL, кроме владельца файла и группы. Права владельца файла (owner) и группы (group), указанные в стандартных правах доступа (например, через chmod), не ограничиваются маской. Маска влияет только на дополнительные записи ACL, созданные для конкретных пользователей или групп.
Например, если маска установлена на r--, то даже если пользователю назначены права rwx, он сможет только читать файл.
```bash
# Задать маску
setfacl -m m::r-- <file_name>
```
sudo setfacl -R -m u:prometheus:rX /etc/letsencrypt/
#### Разное
Маска прав (`umask`) одна и та же для файлов и директорий, но результат применения маски отличается, поскольку начальные права у файлов и директорий разные (666 для файлов, 777 для директорий). То есть `umask` не различает файлы и директории, она применяется одинаково ко всем объектам, но итоговые права различаются из-за исходных прав.

View File

@ -308,11 +308,6 @@
---
- `chmod u+s` - устанавливает бит setuid на файл
- `cat /etc/passwd` - список пользователей
- `cat /etc/group` - список групп
- `id` - список пользователей, групп
- `id <user_name>` - проверить наличие пользователя в системе
- `groups <user_name>` - к каким группам приналежит пользователь
??? info "Set User ID"
setuid (Set User ID) — это специальный бит прав доступа в Unix/Linux, который позволяет исполняемому файлу запускаться с привилегиями владельца файла, а не пользователя, который его запускает

View File

@ -123,16 +123,6 @@ http {
---
- `allow 127.0.0.1` - разрешить доступ только с ip 127.0.0.1
- `deny allow` - запрещает доступ всем ip адресам, кроме `allow`
- `stub_status on`
Включает модуль `ngx_http_stub_status_module`, который предоставляет статистику о работе Nginx. Например:
- Активные соединения.
- Количество принятых запросов.
- Количество обработанных запросов.
- Текущее состояние (чтение, запись, ожидание).
```
# Передаёт backend-серверу доменное имя хоста из запроса клиента