Типичный Сисадмин
1.25K subscribers
363 photos
43 videos
201 links
⚙️Информация для системного администратора

По всем вопросам : @Sofiia_artamonova
Download Telegram
💡Полезный набор хоткеев для работы в Bash

Навигация

Ctrl+A переместить курсор в начало строки
Ctrl+E переместить курсор в конец строки
Ctrl+F переместить курсор на один символ вправо
Ctrl+B переместить курсор на один символ влево
Alt+B / Esc+B переместить курсор влево на одно слово


Редактирование


Ctrl+U удалить все и вернуться в начала строки
Ctrl+K удалить все после курсора
Ctrl+W удалить слово перед курсором
Alt+D удалить слово после курсора
Ctrl+Y вернуть удаленное
Ctrl+D удалить символ под курсором
Ctrl+H аналогично backspace
Alt+T смена позиции текущего слова на предыдущее
Ctrl+T замена местами двух символа перед курсором
Alt+U перевод слова в заглавные после курсора
Alt+L перевод слова в строчные после курсора
Ctrl+_ отмена последнего ввода


Bash History

Ctrl+R режим обратного поиска
Ctrl+P переход к предыдущей команде
Ctrl+N переход к следующей команде
Ctrl+O выполнить найденную команду
Ctrl+G выход из режима поиска
!! выполнить предыдущую команду
!vim выполнить последнюю команду, которая начиналась на vim
!vim:p вывести последнюю команду, которая начиналась на vim
!n запустить n команду из history


Общие хоткеи


Ctrl+C завершить команду
Ctrl+L очистить экран
Ctrl+S приостановить вывод, остановить прокрутку
Ctrl+Q возобновить прокрутку
Ctrl+D закрыть оболочку
Ctrl+Z приостановить процесс
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Шпаргалка по сетевой безопасности
3
Шпаргалка по автоматизации задач с помощью cron и таймеров systemd

🟢 Cron
1. Формат записи задач в crontab:

* * * * * command_to_execute
| | | | |
| | | | +---- День недели (0 - вс, 6 - сб)
| | | +------ Месяц (1 - 12)
| | +-------- День месяца (1 - 31)
| +---------- Час (0 - 23)
+------------ Минуты (0 - 59)


2. Примеры:
- Запуск каждый день в 3 утра:

0 3 * * * /path/to/script.sh

- Каждые 15 минут:

*/15 * * * * /path/to/script.sh


3. Просмотр/редактирование crontab:

crontab -e


4. Логи cron:
- Расположены в /var/log/syslog или /var/log/cron.



🟢 Таймеры systemd
1. Файлы таймеров:
- Сервис: /etc/systemd/system/mytask.service
- Таймер: /etc/systemd/system/mytask.timer

2. Пример .service:

[Unit]
Description=My Task Service

[Service]
ExecStart=/path/to/script.sh


3. Пример .timer:

[Unit]
Description=Run My Task Every Day

[Timer]
OnCalendar=daily
Persistent=true

[Install]
WantedBy=timers.target


4. Основные команды:
- Включение таймера:

systemctl enable mytask.timer

- Запуск таймера:

systemctl start mytask.timer

- Проверка статуса:

systemctl list-timers
👍2
Команда findmnt

Это простая утилита командной строки, используемая для отображения списка подключенных файловых систем или поиска файловой системы в /etc/fstab, /etc/mtab или /proc/self/ mountinfo.

Для отображения списка подключенных файловых систем, выполните в командной строке следующую команду.
По умолчанию команда findmnt отображает файловые системы в древовидном формате.
# findmnt

Чтобы отобразить информацию в виде обычного списка, используйте параметр -l, как показано ниже
# findmnt -l

Можно выбрать отображение файловых систем только определенного типа, используя параметр командной строки -t, за которым следует тип файловой системы, такой как XFS или EXT4.
# findmnt --fstab -t xfs или # findmnt --fstab -t ext4

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

Например, следующая команда отображает все файловые системы /etc/fstab, где каталогом точки монтирования является /mnt/external/disk2.
# findmnt --fstab /mnt/external/disk2 #this prints bind mounts where /mnt/external/disk2 is a source
или # findmnt --fstab --target /mnt/external/disk2

Выводим все файловые системы /etc/fstab и преобразовываем теги LABEL = и UUID = в реальные имена устройств, добавьте ключ – –evaluate
# findmnt --fstab --evaluate

Отобразить только точку монтирования, в которой смонтирована файловая система с меткой «/ boot» или «/», используйте следующую команду.
# findmnt -n --raw --evaluate --output=target LABEL=/boot или # findmnt -n --raw --evaluate --output=target LABEL=/

Findmnt также позволяет отслеживать действия по монтированию, размонтированию, перемонтированию и перемещению каталога, например, в /mnt/test.
# findmnt --poll --mountpoint /mnt/test

Если вы хотите больше информации в выводе, используйте ключ –verbose.
# findmnt --real --verbose
👍2
Совет для Linux💡

Получайте уведомления, когда ваши команды в терминале завершатся!


$ sudo apt update; notify-send "Обновление завершено" "Обновления получены"


Замените apt update на любую команду, выполнение которой займет время. Не забудьте сначала установить inotify-tools:


$ sudo apt install inotify-tools
👍4
Шпаргалка по работе с Tmux
3👍2
Выводим список установленных пакетов в Linux по дате

Порой необходимо узнать когда тот или иной пакет был установлен в операционной системе (например, в целях аудита). В данной статье рассмотрим как вывести список установленных пакетов в Linux, отсортированный по дате установки - давайте разберемся!

https://telegra.ph/Vyvodim-spisok-ustanovlennyh-paketov-v-Linux-po-date-09-10
👍1
Список полезных команд для работы с `telnet`, которые могут помочь при подключении и отладке сетевых служб

### Основные команды telnet:
1. Подключение к удаленному хосту:

telnet <hostname> <port>

Пример:

telnet example.com 80

Подключается к хосту example.com на порту 80 (HTTP).

2. Закрытие соединения:
Чтобы завершить сессию, используйте сочетание клавиш:

Ctrl + ] (переход в режим команд)

Затем введите:

quit


3. Отправка текстового запроса после подключения:
Если подключились к порту, например, HTTP-сервера, можно отправить запрос вручную:

GET / HTTP/1.1
Host: example.com

Это выполняет запрос к домашней странице на порту 80.

### Встроенные команды telnet (используйте в режиме команд после нажатия `Ctrl + ]`):

1. help
Показывает список доступных команд telnet:

telnet> help


2. open
Открывает новое соединение с указанным хостом:

telnet> open <hostname> <port>


3. close
Закрывает текущее соединение:

telnet> close


4. display
Показывает текущие параметры подключения:

telnet> display


5. mode
Переключает режим работы telnet (например, line или `character`):

telnet> mode line


6. send
Отправляет управляющие символы (например, send escape для отправки escape-секвенции):

telnet> send escape


7. status
Показывает статус текущего соединения:

telnet> status


8. set и unset
Настраивают параметры подключения (например, установка режима эхо):

telnet> set echo
telnet> unset echo


### Примеры использования telnet:

1. Проверка доступности порта:
Чтобы проверить, открыт ли порт на удаленном сервере:

telnet <hostname> <port>


2. Проверка почтового сервера (SMTP):
Подключение к серверу SMTP:

telnet smtp.example.com 25

Затем можно вручную ввести SMTP-команды, такие как:

EHLO example.com


3. Проверка DNS сервера:
Можно подключиться к DNS-серверу и проверить его ответы:

telnet <dns-server> 53


Эти команды помогут вам работать с telnet для отладки, диагностики и проверки сетевых служб.
Быстрый совет по Linux 💡

В Linux вы можете сделать файл или каталог недоступным для удаления, используя команду chattr для установки флага неизменности:


$ sudo chattr +i filename.txt
🔥3👍1
Как изменить дату установки пароля пользователя в Active Directory

У учетной записи пользователя в ActiveDirectory есть два атрибута, в которых хранится последнее время смены пароля учетной записи. Это атрибуты pwdLastSet и PasswordLastSet.

Различаются они форматом записи. PasswordLastSet хранит данные в нормальном читабельном виде, а вот в pwdLastSet дата хранится в виде большого целого числа, которое представляет собой количество 100-наносекундных интервалов, прошедших с 12:00 полуночи, 1 января 1601 года нашей эры в формате UTC (Coordinated Universal Time).

https://telegra.ph/Kak-izmenit-datu-ustanovki-parolya-polzovatelya-v-Active-Directory-08-08
👍2
3 довольно неизвестных команды Docker, которые помогут вам в самых различных ситуациях

Если вы какое-то время используете Docker, у вас, вероятно, уже есть адаптированный для вас простой и эффективный рабочий процесс, который включает в себя некоторые из ваших любимых команд Docker (если это технически правильные подкоманды).

https://telegra.ph/3-dovolno-neizvestnyh-komandy-Docker-kotorye-pomogut-vam-v-samyh-razlichnyh-situaciyah-09-26
👍2
Краткий курс по созданию сценариев Bash
👍3
Shell Scripting

Bash (Born Again) - это оболочка Unix и язык командной строки, написанный Брайаном Фоксом. Оболочка Born Again используется большинством операционных систем Unix/Linux в качестве оболочки по умолчанию.

Этот туториал по Shell Script написан для тех, кто хочет изучить основы программирования сценариев оболочки (Shell scripting). В этой серии уроков вы узнаете о скриптах bash, которые будут очень полезны для автоматизации повседневных задач. Он помогает автоматизировать такие задачи, как резервное копирование, очистка диска и т.д.

https://tecadmin.net/tutorial/bash-scripting/
🔥21
Как работает DHCP
1
Настройка фаервола в Ubuntu с помощью утилиты UFW

UFW (Uncomplicated Firewall) — удобный интерфейс для управления политиками безопасности межсетевого экрана. Наши серверы постоянно подвергаются различным атакам или сканируются в поиске уязвимостей. Как только эти уязвимости находятся, мы рискуем стать частью ботнета, раскрыть конфиденциальные данные или потерять деньги из-за сбоев в работе веб-приложений. Одной из первых мер по снижению рисков безопасности является грамотная настройка правил межсетевого экрана. В нашем руководстве мы рассмотрим основные команды и правила работы с утилитой UFW.
2
Работа с пользователями в командной строке Windows (net user)

Вот справка по замечательной программе net, точнее по её работе с пользователями: net user. Иногда, например нужно активировать учётную запись гостя или администратора в Windows 10 на клиентском ПК. Тогда короткая и удобная для запоминания Windows net user Гость /active:yes может быть удобнее других способов.

https://telegra.ph/Rabota-s-polzovatelyami-v-komandnoj-stroke-Windows-net-user-09-26
👍1
Шпаргалка по повышению привилегий в Linux

Эта шпаргалка предназначена для тех, кто готовится к OSCP, чтобы помочь им понять различные методы эскалации привилегий на машинах под управлением Linux и CTF с примерами.

https://github.com/Ignitetechnologies/Linux-Privilege-Escalation
👍2
20 лучших скриптов Powershell для Active Directory

Работая много лет, я столкнулся со многими проблемами в качестве системного администратора windows. Иногда создание пользователей или групп в домене занимает значительное время. Это процесс можно автоматизировать, чтобы сэкономить время. В данной статье есть скрипты DNS powershell, скрипты DHCP powershell и мой собственный репозиторий powershell.

https://itmozg.ru/20-luchshih-skriptov-powershell-dlja-active-directory/
👍3