Практическая работа №2.1 df -a ![](https://i.imgur.com/hr9LCsx.png) df- aBM ![](https://i.imgur.com/83htS8b.png) df -ah ![](https://i.imgur.com/rJpewEK.png) df -aH ![](https://i.imgur.com/YjwKnYF.png) df -i /dev ![](https://i.imgur.com/n4tYk8g.png) df -k ![](https://i.imgur.com/2L25fJW.png) df --output file /dev ![](https://i.imgur.com/oJgcqEx.png) df -P ![](https://i.imgur.com/ZreFNAh.png) df --total ![](https://i.imgur.com/VK6ubpO.png) df -t ext4 ![](https://i.imgur.com/3j54ymn.png) df -x ext4 ![](https://i.imgur.com/Xu4gF38.png) df ![](https://i.imgur.com/ZQUdSHE.png) df -h ![](https://i.imgur.com/VlTmMoR.png) df -a ![](https://i.imgur.com/DYfzavl.png) df -x tmpfs ![](https://i.imgur.com/Avs6fwh.png) df -x tmpfs -x devtmpfs ![](https://i.imgur.com/k17RXZv.png) df -t ext4 ![](https://i.imgur.com/3QYVKJo.png) df -h /dev/sda1 ![](https://i.imgur.com/ZTY5IW1.png) df -h /home ![](https://i.imgur.com/sPYVg8Q.png) 2\. Команда du в Linux du ~/Documents ![](https://i.imgur.com/MrmP8r0.png) du ~/Documents ~/Pictures ~/.zshrc ![](https://i.imgur.com/NBK211U.png) du -a ~/Documents ![](https://i.imgur.com/sjZU8PV.png) sudo du -h /var ![](https://i.imgur.com/aD5Rjvb.png) sudo du -sh /var ![](https://i.imgur.com/2yRtraS.png) sudo du -csh /var/log /var/lib ![](https://i.imgur.com/bZyqgui.png) sudo du -h --max-depth=1 /var/lib ![](https://i.imgur.com/mmMREqB.png) sudo du -sh --apparent-size /var/lib ![](https://i.imgur.com/kLeO0bV.png) sudo du -csh ~/Do* ![](https://i.imgur.com/T5P0Z7d.png) sudo du -h /var/ | sort -rh | head -5 ![](https://i.imgur.com/nm2ZU4X.png) 3\. Команда free в Linux free ![](https://i.imgur.com/cAwDEzi.png) free -w ![](https://i.imgur.com/b9uPWl1.png) free -h ![](https://i.imgur.com/riWEI7G.png) free [опции отображения единиц измерения] - b , --bytes ![](https://i.imgur.com/0fHwkTM.png) - -kilo ![](https://i.imgur.com/yTxeUyi.png) - --mega ![](https://i.imgur.com/Q8XvnrU.png) - --giga ![](https://i.imgur.com/UnZm4Tn.png) - --tera ![](https://i.imgur.com/SlHDxsg.png) - k , --kibi ![](https://i.imgur.com/NAXlhgz.png) - m , --mebi ![](https://i.imgur.com/w1eFDRO.png) - g , --gibi ![](https://i.imgur.com/WalgLpw.png) - -tebi ![](https://i.imgur.com/IG3nKTA.png) - -pebi ![](https://i.imgur.com/m9t9bBJ.png) - -si ![](https://i.imgur.com/RcBuxrv.png) free -h -t ![](https://i.imgur.com/0TwzChT.png) free -s 5 ![](https://i.imgur.com/7vVIb1p.png) free -s 1 -c 10 ![](https://i.imgur.com/IOkCEgB.png) ### 3.1 Команда free в Linux с примерами Автоматизируйте команду free и запускайте ее непрерывно или периодически Еще одна отличная особенность – возможность автоматизировать команду. Есть два варианта, которые помогают нам настроить этот инструмент: Есть параметр ‘-s’, которая запускает команду free в течение заданного интервала секунд, пока пользователь не закроет программу (^ + C). Существует также «-c», который можно использовать отдельно или в сочетании с параметром секунд. Если вы введете только «-c» и целое число (n), команда будет запускаться n раз. По умолчанию используются интервалы в одну секунду. Допустим, вы хотите открыть серию приложений и посмотреть, как влияет ваша память. Для тестового вывода мы будем использовать читаемый человеком формат, используя степени 1000 (Gb) вместо 1024 (GiB). Мы собираемся записать в течение 20 секунд, чтобы проанализировать воздействие. Мы собираем данные каждые 5 секунд, и будем делать это за 4 цикла. Вот этот пример, отформатированный для командной строки и ее вывода: free -h --si -s 5 -c 4 ![](https://i.imgur.com/NzJdFlj.png) Если вы хотите постоянно отслеживать использование памяти командой free, но не хотите, чтобы ее вывод загромождал экран, вы можете использовать команду watch вместе с командой free. Это покажет вам только один вывод для команды free, но этот вывод будет изменяться через регулярные промежутки времени. watch free -h ![](https://i.imgur.com/Peqk7iv.png) 4\. iostat Установка sudo apt-get install sysstat ![](https://i.imgur.com/ISY2I9p.png) запуск iostat ![](https://i.imgur.com/Gee9r6F.png) Синтаксис iostat iostat опции устройство интервал - с - отобразить только информацию об использовании процессора; ![](https://i.imgur.com/CRgJ4wC.png) - d - отобразить только информацию об использовании устройств; ![](https://i.imgur.com/p0D9Glv.png) - h - выводить данные в отчёте в удобном для чтения формате; ![](https://i.imgur.com/NEBcImm.png) - k - выводить статистику в килобайтах; ![](https://i.imgur.com/jySjS3M.png) - m - выводить статистику в мегабайтах; ![](https://i.imgur.com/IaL9xxx.png) - o JSON - выводить статистику в формате JSON; ![](https://i.imgur.com/cdn8ezr.png) - p - вывести статистику по устройству и всех его разделам; ![](https://i.imgur.com/dYc9G4M.png) - x - вывести расширенную статистику; ![](https://i.imgur.com/oLdh34U.png) - y - отображать статистику с момента запуска утилиты, а не системы; ![](https://i.imgur.com/gzhFQoK.png) - z - спрятать информацию о дисках, у которых нет активности. ![](https://i.imgur.com/tSmwmsL.png) sudo iostat -h ![](https://i.imgur.com/dbxNWiZ.png) sudo iostat /dev/nvme0n1 ![](https://i.imgur.com/BDa83pG.png) sudo iostat -p /dev/nvme0n1 ![](https://i.imgur.com/4SQ4dQ8.png) sudo iostat -p /dev/nvme0n1 1 ![](https://i.imgur.com/tvQcwh4.png) sudo iostat -y -p /dev/nvme0n1 1 ![](https://i.imgur.com/FJaz1y8.png) 4.1 Профилирование нагрузки на файловую систему с помощью iostat **Строчка для получения лог файла:** iostat -xk -t 10 | awk '// {print strftime("%Y-%m-%d %H:%M:%S"),$0}' >> iostat.log & ![](https://i.imgur.com/hpJSno6.png) iostat -xk -t 10 | awk '// {print strftime("%Y-%m-%d %H:%M:%S"),$0}' ![](https://i.imgur.com/VKNCv33.png) 5\. mpstat ![](https://i.imgur.com/dfVtpis.png) ### 5.1 Отображение всей информации ![](https://i.imgur.com/qaRLUgb.png) mpstat -A ### 5.2 Показать статистику CPU индивидуального процессора (или) ядра ![](https://i.imgur.com/eJJN6BA.png) mpstat -P ALL ### 5.3 Для отображения статистически о конкретном CPU или ядре, используйте опцию «-P», как показано ниже: ![](https://i.imgur.com/Ru5JM6y.png) mpstat -P 0 ### 5.4 Можно выполнить «mpstat -V» чтобы показать версию утилиты: ![](https://i.imgur.com/OVUokFQ.png) 6\. vmstat ![](https://i.imgur.com/EhCypDR.png) vmstat -a ![](https://i.imgur.com/GA6fFQT.png) vmstat -f ![](https://i.imgur.com/gOnXVgo.png) vmstat -d ![](https://i.imgur.com/aaEPffH.png) vmstat -D ![](https://i.imgur.com/g28oH1z.png) vmstat --help ![](https://i.imgur.com/gI5pUtO.png) vmstat 1 ![](https://i.imgur.com/N8kYGu5.png) 7\. Утилита/команда " w " ![](https://i.imgur.com/nJhnBkZ.png) w -h ![](https://i.imgur.com/fvHyNrV.png) w -u ![](https://i.imgur.com/XEU1EcE.png) w -s ![](https://i.imgur.com/BjDorUu.png) w -f ![](https://i.imgur.com/6eDZNLx.png) w -i ![](https://i.imgur.com/1sYVZ0b.png) w -o ![](https://i.imgur.com/2oQ8XJe.png) w -V ![](https://i.imgur.com/aQPa4G5.png) 8\. Утилита htop Как установить htop sudo apt install htop ![](https://i.imgur.com/Sisqbok.png) Как просмотреть все процессы в Linux htop ![](https://i.imgur.com/MoWWSjM.png) Как ускорить или замедлить частоту обновления htop sudo htop -d 1 ![](https://i.imgur.com/hEIr7N4.png) Как вывести процессы в виде дерева sudo htop -t ![](https://i.imgur.com/tAEhSM5.png) Практическая работа №2.2 - Установить, настроить SSH-сервер, клиент. Устанавливаем сервис ssh ![](https://i.imgur.com/Y2thIav.png) - Отключить доступ по root-пользователю. Откроем файл ssh_config sudo nano /etc/ssh/sshd_config и раскоментируем данную строчку ![](https://i.imgur.com/o2es0s2.png) - Сменить порт по умолчанию на любой другой. В этом же файле раскоментируем строчку Port и изменим значение на произвольное в пределах 1024-65535 ![](https://i.imgur.com/V2kxNIB.png) Перезапустим сервис ssh ![](https://i.imgur.com/F9RE4vi.png) - Подключиться к серверу linux c хостовой операционной системы через Putty. Чтобы подключиться нам нужно знать ip ssh сервера так что смотрим его ![](https://i.imgur.com/lAD7qJg.png) Выбираем способ подключения и вставялем соответсвующие данные в поля ip address и port ![](https://i.imgur.com/cbaLnfu.png) Подключаемся Подтверждаем, что мы доверяем этому серверу и нажимаем accept ![](https://i.imgur.com/gzfjAXR.png) Логинимся под учеткой ![](https://i.imgur.com/pnXopDx.png) Вводим пароль ![](https://i.imgur.com/YbnBDUs.png) соединение установлено! ![](https://i.imgur.com/p6LXwaT.png) Практическая работа №2.3 Cначала сгенерируем ключ ssh на хостовой машине и указваем где будет храниться ключ ![](https://i.imgur.com/VInm4si.png) Дальше нужно перекинуть публичный ключ с помощью ssh-copy-id ![](https://i.imgur.com/YEvphgw.png) пробуем зайти без пароля на удаленный хост ![](https://i.imgur.com/7xEHyMc.png) соединение установилось, и все работает, если не брать во внимания что debian плоховато интерпритирует zsh, это можно поправить переключившись на стандартную оболочку ![](https://i.imgur.com/A6CtCH0.png) теперь отключим доступ ssh по паролю заходим на ssh сервер и отключаем доступ по паролю ![](https://i.imgur.com/UpKPQUX.png) рестартим сервис ![](https://i.imgur.com/RsbDg0W.png) теперь доступ к ssh серверу настроен только через ключи Практическая работа №2.4 1.Базовый сбор информации cat /etc/*release ![](https://i.imgur.com/L3HjuSc.png) uname -a ![](https://i.imgur.com/mybiC5U.png) whoami ![](https://i.imgur.com/XoArQ2O.png) uptime ![](https://i.imgur.com/Aoyns4B.png) ls -la /home ![](https://i.imgur.com/Nke5vB6.png) sudo chmod o-rx /home/kali ![](https://i.imgur.com/SABWu0Y.png) ip neigh ![](https://i.imgur.com/EWSp4BZ.png) sudo ss -tlnp ![](https://i.imgur.com/i1bGilV.png) sudo -l ![](https://i.imgur.com/m7GD0tH.png) 2.Суидные файлы sudo find / -user root -perm -4000 -exec ls -ldb {} \; 2> /dev/null ![](https://i.imgur.com/2iSCkep.png) wget <https:// downloads.cisofy.com/lynis/lynis-3.0.6.tar.gz ![](https://i.imgur.com/gMja2ie.png) tar xfv lynis-3.0.6.tar.gz ![](https://i.imgur.com/hzdygBo.png) SHA256 hash: 98373a4cc9d0471ab9bebb249e442fcf94b6bf6d4e9c6fc0b22bca1506646c63 ![](https://i.imgur.com/INWB07P.png) cd lynis ls ![](https://i.imgur.com/mSqVpP5.png) sudo ./lynis audit system ![](https://i.imgur.com/VhcZpTh.png) ![](https://i.imgur.com/izBzCIa.png) ./lynis show options ![](https://i.imgur.com/HFgp508.png) /var/log/lynis-report.dat ![](https://i.imgur.com/4uiA6Ef.png) 3\. Проверка целостностей пакетов dpkg -l ![](https://i.imgur.com/ASMlpGw.png) dpkg -L coreutils ![](https://i.imgur.com/RU3gERC.png) /bin/dir --help ![](https://i.imgur.com/wNpKS55.png) sudo mv /bin/dir /bin/dir.bak ![](https://i.imgur.com/nYyFq89.png) sudo cp /bin/false /bin/dir ![](https://i.imgur.com/t14oXhH.png) dir echo $? ![](https://i.imgur.com/LcQqzdh.png) sudo apt install debsums ![](https://i.imgur.com/vhcn6PD.png) debsums -a ![](https://i.imgur.com/Zk7LoM0.png) debsums -e ![](https://i.imgur.com/4OD5MAX.png) debsums -s ![](https://i.imgur.com/d9i5ZSR.png) debsums -ac coreutils ![](https://i.imgur.com/JMJzka0.png) debsums -cs coreutils ![](https://i.imgur.com/uLHmkev.png) dpkg --verify coreutils ![](https://i.imgur.com/SyUq4xY.png) sudo find / -printf "%T@ %Tc %p\\\n" ![](https://i.imgur.com/gS60jiB.png) udo find /home/kali/ -printf "%T@;%Tc;%p\\\n" > timeline.csv ![](https://i.imgur.com/1ZtzY4h.png) head timeline.csv ![](https://i.imgur.com/Sn10enE.png) sort -rn timeline.csv | less ![](https://i.imgur.com/ss12R28.png) Практическая работа №2.5 apt install coreutils ![](https://i.imgur.com/xY5BWsJ.png) printenv ![](https://i.imgur.com/mU8Slil.png) 2\. Запуск команд с указанием нового значения переменной окружения env HOME=/home/vlxxx ![](https://i.imgur.com/APHXhWw.png) 2.1 Установка и удаление локальных переменных окружения TESTKALI=/home/vlxx ![](https://i.imgur.com/rNmCd0u.png) echo $TESTKALI ![](https://i.imgur.com/OMlDq8d.png) unset TESTKALI echo $TESTKALI ![](https://i.imgur.com/hon01gW.png) nano .bashrc ![](https://i.imgur.com/IxS3CHg.png) export TESTKALI='/home/kali' ![](https://i.imgur.com/mCbOopj.png) echo TESTKALI ![](https://i.imgur.com/OAP2ZM8.png) 2.3 Создание и удаление системных переменных окружения nano /etc/profile ![](https://i.imgur.com/UtgkYSW.png) TESTKALI2=/home/kali12345 ![](https://i.imgur.com/tkHeULL.png) echo $TESTKALI ![](https://i.imgur.com/2yq2uSf.png)