Push 163 file(s) from Obsidian

This commit is contained in:
2026-09-24 13:22:58 +05:00
parent 4c6a45e2e8
commit 9777f9490f
163 changed files with 36730 additions and 0 deletions
+61
View File
@@ -0,0 +1,61 @@
#linux #ssh
Port Knocking — это метод скрытой защиты, при котором все критически важные порты (например, 22) блокируются файрволлом и открываются только после получения специальной последовательности запросов (knocks) на заранее заданные закрытые порты. Пока атакующий не знает правильного порядка и тайминга, его порт-сканер увидит лишь, что порт 22 просто закрыт.
Как дополнительный фактор защиты, port knocking может снизить обнаружение сервиса, а не пытаться бороться с последствиями (брутфорс, эксплуатация уязвимости).
⚙️ **Как настроить knockd на Linux**
Самый популярный инструмент — демон `knockd`. В большинстве дистрибутивов он ставится стандартным способом.
**1. Установка:**
```bash
apt update && apt install knockd iptables-persistent -y
```
**2. Настройка автозапуска:**
Редактируем `/etc/default/knockd`. Меняем `START_KNOCKD=0` на `START_KNOCKD=1`.
**3. Конфигурация knockd в `/etc/knockd.conf`:**
```ini
[options]
Interface = eth0
logfile = /var/log/knockd.log
[openSSH]
sequence = 661,671,681
seq_timeout = 5
tcpflags = syn
start_command = /sbin/iptables -I INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
cmd_timeout = 30
```
**Описание параметров:**
> 🟢 Interface — сетевой интерфейс, который будет прослушиваться.
> 🟢 logfile — файл логирования knockd (необязательный параметр).
> 🟢 sequence — последовательность портов для «стука». Можно также явно задать протокол (например, 661:udp, 671, 681:tcp).
> 🟢 seq_timeout — время в секундах, за которое необходимо завершить «стук».
> 🟢 tcpflags — флаги tcp, которые должны быть в «открывающей» последовательности. Можно указать несколько флагов или исключить их явно (например -fin,syn,ack), но в стандартной конфигурации используется флаг syn.
> 🟢 start_command — команда, выполняемая после успешного «стука».
> 🟢 stop_command — команда, выполняемая по истечении cmd_timeout.
> 🟢 cmd_timeout — время в секундах, на которое открывается порт.
**4. Запуск демона:**
```bash
systemctl enable knockd && systemctl start knockd
```
🔐 **Как открыть порт (клиент):**
С удаленного узла мы можем предъявить пропуск — простучать указанные порты в правильной последовательности.
knock -v target.host 661 671 681
В ответ ты увидишь: `hitting tcp target.host:661``hitting tcp target.host:671``hitting tcp target.host:681`. После этого соединение по SSH станет возможным.
💀 **Атака через knockknock**
Если последовательность слишком простая (например, идущие подряд порты), её можно перебрать. Быстрый способ — специальные брутфорс-утилиты, которые за секунды перебирают тысячи комбинаций, дожидаясь открытия порта.
+72
View File
@@ -0,0 +1,72 @@
**Vim** (_Vi Improved_)— свободный текстовый редактор, созданный на основе более старого vi, разработанного Биллом Джойем в 1991 году. Vim можно использовать как прямо в командной строке (большинство делает именно так), так и через GUI (gVim).
Vim может работать почти во всех операционных системах (вернее я просто не знаю ОС, в которой он не работает, возможно такой нет). А в современных Линуксах Vim вообще встроен по умолчанию. Скачать его для Windows вы можете [здесь](https://www.vim.org/download.php).
Про Vim и Vi написано внушительное количество книг внушительных объемов (как для текстового редактора), но в этой статье мы ограничимся лишь краткой инструкцией по режимам работы, основным командам и макросам, которых достаточно для комфортного использования редактора.
### Режимы работы Vim
- Режим команд (Command mode) - используется для выполнения команд. При запуске Vim, вы находитесь в этом режиме.
- Режим вставки (Insert mode) - используется для ввода текста. Для перехода в этот режим, нажмите клавишу "i".
- Режим замены (Replace mode) - используется для замены существующего текста. Для перехода в этот режим, нажмите клавишу "R".
- Режим визуального выделения (Visual mode) - используется для выделения текста для копирования, вырезания или изменения. Для перехода в этот режим, нажмите клавишу "v".
### Навигация
- h - переместить курсор влево
- j - переместить курсор вниз
- k - переместить курсор вверх
- l - переместить курсор вправо
- w - переместить курсор на начало следующего слова
- b - переместить курсор на начало предыдущего слова
- e - переместить курсор на конец текущего слова
- 0 - переместить курсор в начало строки
- $ - переместить курсор в конец строки
- gg - переместить курсор в начало файла
- G - переместить курсор в конец файла
### Редактирование текста
- i - вставить текст перед курсором
- a - вставить текст после курсора
- o - вставить новую строку после текущей строки и перейти в режим вставки
- dd - вырезать текущую строку
- yy - скопировать текущую строку
- p - вставить скопированный или вырезанный текст после курсора
- u - отменить последнее действие
- Ctrl + r - повторить отмененное действие
### Сохранение и выход из редактора
- :w - сохранить файл
- :q - выйти из Vim
- :wq - сохранить файл и выйти
Всё это была лишь небольшая часть команд Vim, но как я уже писал, этого достаточно для быстрого старта и понимания того, что происходит в программе. Если вы хотите запомнить все эти команды и макросы, то рекомендую сразу проделать всё это в каком ни будь подопытном файле. Я думаю, что пары – тройки повторений каждой команды будет вполне достаточно для запоминания, по крайней мере, мне хватило.
На этом эта короткая статья подошла к концу, надеюсь, она была вам полезна. PDF с текстом шпаргалки, и другие полезные материалы вы можете скачать его [здесь](https://t.me/+mbTFRIJGjD84NDJi).
+37
View File
@@ -0,0 +1,37 @@
#linux #logs
🛑 Ошибка новичков – просто удалить файлы из /var/log/. Да, так освободится место, но службы, использующие логи, могут сломаться.
✅ Правильные способы очистки:
🔹 Используем logrotate
Это стандартный инструмент для управления логами в Linux. Настройки хранятся в /etc/logrotate.conf и /etc/logrotate.d/. Можно настроить автоудаление старых логов:
```sh
sudo nano /etc/logrotate.conf
```
Добавляем:
/var/log/*.log {
daily
rotate 7
compress
missingok
notifempty
}
Это означает: чистим ежедневно, храним 7 копий, сжимаем старые файлы.
🔹 Очистка логов вручную
Если нужно срочно освободить место, используем:
```sh
sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/auth.log
```
Эта команда обнуляет файлы, не удаляя их.
🔹 Удаление старых логов
Можно удалить файлы старше 7 дней:
```sh
sudo find /var/log -type f -name "*.log" -mtime +7 -delete
```