Не попадитесь на накрученные каналы! Узнайте, не накручивает ли канал просмотры или
подписчиков
Проверить канал на накрутку
Телеграм канал «Системный Администратор (Сисадмин)»
Системный Администратор (Сисадмин)
5.6K
1.6K
2.0K
25
16.9K
Настройка серверов Windows, Linux, сетевое оборудование Cisco Systems, D-Link, HP, Huawei, Juniper, MikroTik. Книги и мануалы для сисадминов. По всем вопросам @evgenycarter
🥷 Living off the Browser — пентест из вкладки Chrome
Приглашаем на открытый урок.
🗓 05 октября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Пентест. Инструменты и методы проникновения в действии».
Программа вебинара
✔️ Как работает Direct Sockets API в Chrome
✔️ Почему Isolated Web Apps (IWA) — подписные и изолированные приложения
✔️ Как IWA открывают прямой доступ к сетевым протоколам транспортного уровня из JavaScript
Кому будет интересно:
Пентестерам и специалистам по информационной безопасности, которые хотят понять возможности браузера как инструмента для тестирования инфраструктуры.
🔗 Ссылка на регистрацию: https://vk.cc/d2bXbG
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Обе эти команды умеют удалять, но в 99% используется именно rm, потому что про unlink вы либо не слышали, либо rm с головой хватает.
Есть ошибочное мнение, что unlink предназначен для удаления лишь ссылок — команда вполне может удалять обычные файлы. А если углубиться, то весь процесс удаления в Linux, это удаление ссылок.
У unlink есть всего лишь два ключа запуска help и version. Очень ограниченный инструмент, но чем инструмент проще, тем проще его синтаксис.
# unlink /tmp/hardlink
# unlink /tmp/file
Софт очень молчаливый — после удаления, он промолчит и ничего не выведет на экран.
Команда unlink использует системную команду unlink, в то время как команда rm использует системный вызов unlinkat. Оба системных вызова практически одинаковы.
Unlink не умеет работать с wildcard и globbing шаблонами. Так же вы не сможете с помощью нее удалить каталог.
Запустим команду и пытаемся насильно удалить файл которого нет в каталоге:
rm -f test.txt
И получаем - НИЧЕГО. То есть rm -f не вернул ошибку, что файл отсутствует. А если сделать так:
unlink test.txt
получим ошибку:
unlink: cannot unlink 'test.txt': No such file or directory
То есть если нужно будет обработать результат выполнения команды rm -f, то будет непонятно, существовал ли вообще файл.
С unlink можно гибче обрабатывать эксепшены в скриптах. А еще при использовании команды unlink отсутствует проверка безопасности. Она удалит файл, защищенный от записи. Хотя современная версия rm теперь тоже так умеет.
Небольшой секрет: если нужно, чтобы файл никто не смог удалить, включая root:
chattr +i test.txt
chattr позволяет устанавливать и отключать атрибуты файлов, на уровне файловой системы не зависимо от стандартных (чтение, запись, выполнение).
Ключ i - сделает файл неизменяемым. Чтобы снять с файла этот аттрибут, в команде которая выше, замените знак «+» на «-».
7. Выполнить команду на удаленной системе. Остановит cron на компьютере с IP-адресом 192.168.0.15, подключившись под учетной записью root
systemctl --host root@192.168.0.15 stop cron
9. Проверка работы сервиса. Выполняется с помощью опции is-active. В данном примере мы проверим работу службы docker.
systemctl is-active docker
а) Если сервис запущен, мы увидим:
active
б) Если не запущен:
failed
... или:
inactive
в) Если такого сервиса нет в системе:
unknown
... или:
inactive
Если сервис не работает или его нет в системе, команда вернет код ошибки, таким образом конструкция:
systemctl is-active docker && docker run hello-world
... приведет к выполнению команды docker run hello-world только в том случае, если сервис docker работает.
# cat -n file1
Вывести содержимое файла, нумеруя выводимые строки
# cat example.txt | awk 'NR%2==1'
Вывести только не четные строки файла
# echo a b c | awk '{print $1,$3}'
Вывести первую и третью колонки. Разделение, по-умолчанию, по пробельным символам или символу табуляции
# echo a b c | awk '{print $1}'
Вывести первую колонку содержимого файла. Разделение, по-умолчанию, по пробельным символам или символу табуляции
# comm -3 file1 file2
Сравнить содержимое двух файлов, удаляя строки встречающиеся в обоих файлах
# comm -1 file1 file2
Сравнить содержимое двух файлов, не отображая строки принадлежащие файлу file1
# comm -2 file1 file2
Сравнить содержимое двух файлов, не отображая строки принадлежащие файлу file2
# grep [0-9] /var/log/messages
Отобрать и вывести строки содержащие цифровые символы из файла /var/log/messages
# grep ^Aug /var/log/messages
Отобрать и вывести строки, начинающиеся с сочетания символов "Aug", из файла /var/log/messages
# grep Aug /var/log/messages
Отобрать и вывести строки, содержащие сочетание символов "Aug" из файла /var/log/messages
# grep Aug -R /var/log/*
Отобрать и вывести строки, содержащие сочетание символов "Aug", из всех файлов, расположенных в директории /var/log и ниже
# paste -d '+' file1 file2
Объединить содержимое file1 и file2 в виде таблицы с разделителем "+"
# paste file1 file2
Объединить содержимое file1 и file2 в виде таблицы: строка 1 из file1 = строка 1 колонка 1-n, строка 1 из file2 = строка 1 колонка n+1-m
# sdiff file1 file2
Сравнить содержимое двух файлов
# sed 's/string1/string2/g' example.txt
Заменить string1 на string2 в файле example.txt и вывести содержимое
# sed '/ *#/d; /^$/d' example.txt
Удалить пустые строки и комментарии из файла example.txt
# sed '/^$/d' example.txt
Удалить пустые строки и комментарии из файла example.txt
# sed -e '1d' exampe.txt
Удалить первую строку из файла example.txt
# sed -n '/string1/p'
Отобразить только строки содержащие string1
# sed -e 's/string//g' example.txt
Удалить строку string1 из текста файла example.txt не изменяя всего остального
# sed -e 's/ *$//' example.txt
Удалить пустые символы в конце каждой строки файла example.txt
# sed -n '5p;5q' example.txt
Вывести пятую строку
# sed -n '2,5p' example.txt
Вывести строки со второй по пятую
# sed -e 's/00*/0/g' example.txt
Заменить последовательность из любого количества нулей одним нулём
# sort file1 file2
Вывести отсортированное содержимое двух файлов
# sort file1 file2 | uniq
Вывести отсортированное содержимое двух файлов исключая повторные значения
# sort file1 file2 | uniq -u
Вывести уникальные значения из отсортированного содержимого двух файлов
# sort file1 file2 | uniq -d
Вывести только повторяющиеся значения из отсортированного содержимого двух файлов
# echo 'word' | tr '[:lower:]' '[:upper:]'
Перевести символы нижнего регистра в верхний