ansfers_2.2 ssh + configs + mac Flashcards

1
Q
  1. Создание ключей SSH;
A

Ключи SSH создаются с использованием программы ssh-keygen, которая генерирует пару ключей (публичный и приватный). Публичный ключ размещается на сервере, а приватный сохраняется на клиенте.

ssh-keygen -t rsa -b 4096 -C “your_email@example.com”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q
  1. Как скопировать открытый ключ на ваш сервер;
A

Скопировать открытый ключ на сервер можно с помощью команды ssh-copy-id user@hostname, которая автоматически добавляет ключ в файл ~/.ssh/authorized_keys на сервере.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q
  1. Аутентификация на сервере с использованием ключей SSH;
A

Для аутентификации используется приватный ключ на клиенте и соответствующий ему публичный ключ на сервере. При подключении SSH клиент использует приватный ключ для установления безопасного соединения.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q
  1. Отключение аутентификации с помощью пароля на сервере;
A

В файле конфигурации SSH сервера /etc/ssh/sshd_config необходимо установить параметр PasswordAuthentication в значение no, чтобы отключить аутентификацию по паролю.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q
  1. Копирование открытого ключа с помощью SSH;
A

Используйте команду ssh-copy-id, чтобы скопировать ваш публичный ключ на сервер. Это облегчает процесс добавления ключа в файл ~/.ssh/authorized_keys на сервере.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q
  1. Организовать SSH соединение между двумя linux-системами;
A

Настройте SSH сервер на одной системе и создайте SSH ключи на другой. Используйте команду ssh user@hostname для установления соединения, указав имя пользователя и адрес хоста.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q
  1. Произвести настройку SSH-сервера и SSH-клиента;
A

На сервере отредактируйте файл /etc/ssh/sshd_config для настройки параметров SSH, включая аутентификацию и доступы. На клиенте создайте ключи SSH командой ssh-keygen и используйте ssh для подключения к серверу.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q
  1. Сменить порт default на другой;
A

В файле /etc/ssh/sshd_config измените параметр Port на желаемый номер порта, например Port 2222. После изменения перезапустите SSH сервис.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q
  1. Запретить соединения от root;
A

В файле /etc/ssh/sshd_config установите параметр PermitRootLogin в значение no. Это предотвратит вход в систему от пользователя root через SSH.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q
  1. Настройка подключения по одному ip-адресу;
A

В /etc/ssh/sshd_config используйте директиву AllowUsers с указанием имени пользователя и IP-адреса (например, AllowUsers user@specific_ip_address) для ограничения доступа.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q
  1. Настройка подключения по группе ip-адресов;
A

В /etc/ssh/sshd_config используйте директивы AllowUsers или AllowGroups в сочетании с IP-адресами для разрешения доступа только для выбранных IP-адресов или подсетей.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q
  1. Вывести журнал событий SSH службы;
A

Используйте команду journalctl -u sshd для просмотра журнала событий SSH на системах с systemd или проверьте файлы логов, например, /var/log/auth.log.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q
  1. Показать неудачные попытки входа по SSH с помощью журнала событий;
A

Используйте команду grep ‘Failed’ /var/log/auth.log на системах, основанных на Debian, или grep ‘Failed’ /var/log/secure на системах, основанных на Red Hat, для поиска записей о неудачных попытках входа.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q
  1. Выполнить команду на удалённом сервере без создания сессии шелла;
A

Используйте ssh username@host ‘command’ для выполнения команды command на удаленном сервере. Это позволяет выполнить команду без открытия интерактивного шелла.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q
  1. Выполнить подключение к SSH по имени хоста;
A

Для этого в файле ~/.ssh/config на клиентской машине настройте блок с параметрами для хоста, включая имя хоста, имя пользователя, IP-адрес и путь к ключу. После этого можно подключаться, используя только имя хоста.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q
  1. Выполнить Подключение к SSH из Windows;
A

ssh username@host -p port (пример: ssh root@192.168.1.202)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q
  1. Выполнить подключение по SSH с мобильного телефона;
A

Для этого придётся использовать приложение ssh клиент. Пример - termux, есть версии для андроид и ios. Они представляют собой оболочку линукс, развернутую на телефоне с обычным терминалом bash. Далее необходимо установить OpenSSH. После этого можно использовать команду “ssh логин@хост -p номер_порта”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q
  1. Подобрать логин:пароль к SSH;
A

1 способ - брутфорс (brute force) - простыми словами перебор комбинаций логинов и паролей.

Для примера возьмем утилиту из kali - medusa

- подготовим список хостов(айпи) для подбора hosts.txt
  • подготовим файл со списком логинов login.txt
  • подготовим файл со списком паролей pass.txt
  • установим утилиту - sudo apt update -y && sudo apt install medusa -y
  • запустим брут со следующими флагами

medusa -h hosts.txt -U login.txt -P pass.txt -M ssh -n 22 -O log.txt -t 4 -e ns

где -h хосты

-U файл с возможными логинами

-P файл с возможными паролями

-M модуль для выполнения(ftp, ssh, etc)

-n порт

-O логи

-t кол-во логинов для одновременного брута

-e ns - проверка пустых логинов и паролей

Подробнее

Пример вывода:

Примечание: он о таком не рассказывал, но как ответ на вопрос должно подойти

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q
  1. Разобраться, что такое masscan;
A

Masscan — быстрый сетевой сканер, который хорошо подходит для сканирования большого диапазона IP-адресов и портов.

Использование: masscan \ -p ports options

Примеры:

sudo masscan 172.217.167.46 -p443 - один порт

sudo masscan 172.217.167.46 -p12-443 - диапазон портов

sudo masscan 172.217.167.46 -p0-65535 –rate 25000000 - увеличить скорость сканирования

masscan совместим с nmap, для проверки - “masscan -nmap”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q
  1. Просканировать свою сеть с помощью masscan по портам 22,80,2222,8080;
A

sudo masscan 17.0.0.0/8 -p22,80,2222,8080

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q
  1. Разобраться как masscan работает совместно с nmap, произвести сканирование минимум 10 аргументами из masscan –nmap;
A

УКАЗАНИЕ ЦЕЛИ:

Можно передать только IPv4 адрес, CIDR сети или диапазоны (не в стиле nmap)

пример: 10.0.0.0/8, 192.168.0.1, 10.0.0.1-10.0.0.254

-iL <имя_файла>: Ввод из файла списка хостов/сетей

–exclude : Пропустить хосты/сети

–excludefile <файл_пропуска>: Список для пропуска из файла

–randomize-hosts: Случайный порядок хостов (по умолчанию)

РАСКРЫТИЕ ХОСТОВ:

-Pn: Расценивать все хосты как онлайн (по умолчанию)

-n: Никогда не делать DNS преобразование (по умолчанию)

ТЕХНИКИ СКАНИРОВАНИЯ:

-sS: TCP SYN (всегда включена, по умолчанию)

ОПРЕДЕЛЕНИЕ СЛУЖБ/ВЕРСИЙ:

–banners: если есть прослушивающие службы, то получить их баннеры.

Время ожидания для получения данных по умолчанию 30 секунд.

УКАЗАНИЕ ПОРТОВ И ПОРЯДКА СКАНИРОВАНИЯ:

-p <диапазон портов>: Сканировать только указанные порты

Пример: -p22; -p1-65535; -p 111,137,80,139,8080

РАСЧЁТ ВРЕМЕНИ И ПРОИЗВОДИТЕЛЬНОСТЬ

–max-rate <число>: Отправлять пакеты не быстрее чем <число> в секунду

–connection-timeout <число>: время в секунда истечения времени TCP

подключения при ожидании данных баннера с порта.

УКЛОНЕНИЕ ОТ ФАЙЕРВОЛОВ/IDS И СПУФИНГ:

-S/–source-ip : Подменять источник адреса

-e : Использовать указанный интерфейс

-g/–source-port <номер порта>: Использовать данный номер порта

–ttl : Установить поле время-жизни IP

–spoof-mac : Подменять ваш MAC адрес

ВЫВОД:

–output-format <формат>: Установить вывод в бинарный/список/json/grepable/xml

–output-file <файл>: Записать результаты сканирования в файл. Если –output-format

 не указана, то по умолчанию xml

-oL/-oJ/-oG/-oB/-oX <файл>: Вывод сканирования в файл Список/JSON/Grepable/Двоичный/XML формат,

 в соответствии с именем данного файла. Сокращение для

 --output-format \<формат\> --output-file \<файл\>

-v: Увеличивать уровень вербальности (используйте -vv или более для увеличения эффекта)

-d: Увеличение уровня отладки (используйте -dd или более для увеличения эффекта)

–open: Показать только открытые (или возможно открытые) порты

–packet-trace: Показать все отправленные и полученные пакеты

–iflist: Напечатать интерфейсы и маршруты хостов (для отладки)

–append-output: Дописывать, а не переписывать файл вывода

–resume <имя_файла>: Возобновить прерванное сканирование

ПРОЧЕЕ:

–send-eth: Отправлять используя сырые ethernet фреймы (по умолчанию)

-V: Напечатать номер версии

-h: Напечатать страницу помощи.

Другой вариант ответа от чата гпт:

Masscan и Nmap могут работать совместно для получения подробной информации о хостах и портах в сети. Для интеграции между ними можно использовать опцию –nmap в Masscan, которая позволяет запускать Nmap автоматически на открытых портах, найденных Masscan.

Вот пример команды с 10 аргументами для использования с Masscan и опцией –nmap:

masscan -p1-65535 192.168.0.0/24 –rate 1000 –nmap -oX scan_results.xml –open-only –max-rate 5000 –min-rate 1000 –top-ports 10 –script vuln

В этом примере используются следующие аргументы Masscan:

-p1-65535 - диапазон портов для сканирования от 1 до 65535.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

192.168.0.0/24 - сеть или диапазон IP-адресов для сканирования.

A

–rate 1000 - скорость сканирования на уровне 1000 пакетов в секунду.

–nmap - запускает Nmap на открытых портах.

-oX scan_results.xml - сохраняет результаты сканирования в формате XML в файл scan_results.xml.

–open-only - сканирует только открытые порты.

–max-rate 5000 - устанавливает максимальную скорость сканирования на уровне 5000 пакетов в секунду.

–min-rate 1000 - устанавливает минимальную скорость сканирования на уровне 1000 пакетов в секунду.

–top-ports 10 - сканирует только верхние 10 портов.

–script vuln - запускает скрипт уязвимостей в Nmap для обнаружения уязвимостей на открытых портах.

  1. Продемонстрировать stat - все возможности данной команды с помощью man на конфигурационных файлах - passwd, interfaces, auth.log, shadow;

$ stat опции /путь/к/файлу

Опции передавать не обязательно и их совсем не много:

-L, dereference - показывать информацию о файле вместо символической ссылки;

-f, –file-system - показывать информацию о файловой системе в которой расположен файл;

-c, –format - позволяет указать формат вывода вместо стандартного, каждый файл выводится с новой строки;

–printf - аналогично –format, только для новой строки надо использовать \n;

-t, –terse - показ информации в очень кратком виде, в одну строку;

–version - показать версию утилиты.

stat –format=’%n’ /etc/passwd

stat –print=’%n\n’ /etc/passwd

stat -t /etc/passwd

  1. Настроить секцию команд таким образом, чтобы пароль запрашивался для всех команд кроме su;

В файле /etc/sudoers:

%user ALL=(ALL) NOPASSWD: /usr/bin/su (из notion)

  1. Разрешить членам группы “MIREA” монтирование и размонтирование устройств;

В файле /etc/sudoers:

%MIREA ALL=(ALL) NOPASSWD: /bin/mount, /bin/umount

Теперь монтировать и размонтировать устройства группа MIREA может без пароля

  1. Разрешить выполнение через sudo для всех пользователей группы “MIREA”, всех команд, кроме команд смены оболочки;

В файле /etc/sudoers:

%MIREA ALL=(ALL:ALL) ALL, !/bin/sh

  1. Сконфигурировать, чтобы команда sudo запрашивала пароль не позже, чем через 1 минуту после ввода пароля для предыдущей команды;

В файле /etc/sudoers:

Defaults timestamp_timeout=1

  1. Сконфигурировать, чтобы команда sudo запрашивала при каждом запуске пароль и при повторный вводе пароля, чтобы не запрашивался никогда;

В файле /etc/sudoers:

Defaults timestamp_timeout=0, timestamp_type=tty

  1. Chattr применить все атрибуты на конфигурационных файлах passwd, resolv.conf, /etc/;

sudo chattr +i /etc/passwd /etc/resolv.conf

sudo chattr -R +i /etc/

+i - файлы становятся недоступными для изменений

+u - недоступно удаление файлов

+a - запись только в конец файла

Чтобы убрать атрибут необходимо написать его с “-” chattr -i /etc/passwd /etc/resolv.conf

  1. VLAN в Linux?

По сути вся инфа из следующих вопросов. Пример настройки через файл etc/network/interfaces.

  1. Что такое VLAN и зачем он нужен?

VLAN (Virtual Local Area Network, виртуальная локальная сеть) — это функция в роутерах и коммутаторах, позволяющая на одном физическом сетевом интерфейсе (Ethernet, Wi-Fi интерфейсе) создать несколько виртуальных локальных сетей. VLAN используют для создания логической топологии сети, которая никак не зависит от физической топологии. Примеры использования VLAN. Объединение в единую сеть компьютеров, подключенных к разным коммутаторам.

  1. Как создать VLAN в Linux?

ip link add - добавить устройство

link eth0 - соединить с ФИЗИЧЕСКИМ адаптером eth0

name eth0.100 - имя устройства в списке. Это имя можно выбрать любым, но для собственного удобства мы выбрали имя физического интерфейса и номер vlan. так то точно не запутаемся

type vlan - тип создаваемого интерфейса. Оно работает с 8021q - тип vlan

id 100 - собственно сам id vlan

Теперь присвоим этому интерфейсу ip адрес: ip addr add 10.10.10.10/24 dev ens33.100

И выполним включение интерфейса командой:

ip link set dev eth0.100 up

Таким образом мы создали интерфейс, который будет получать тегированные пакеты с vlan id = 100 и соответственно вешать на пакеты тег 100 при выпуске пакета в сеть через этот интерфейс. и назначили ему ip адрес 10.10.10.*/24.

  1. Как удалить VLAN в Linux?

Для удаления VLAN в Linux, выполните следующие шаги:

Откройте окно терминала.

Перейдите в каталог ‘/etc/sysconfig/network-scripts’.

Найдите файл, соответствующий VLAN, который вы хотите удалить. Файл будет иметь имя, состоящее из числа, обозначающего VLAN-номер, и расширения ‘.ifcfg-'. Например, если вы хотите удалить VLAN с номером 10, файл будет называться ‘ifcfg-10’.

Удалите этот файл. Для этого введите команду ‘sudo rm ifcfg-'.

После удаления файла, перезагрузите сетевой сервис. Для этого введите команду ‘sudo systemctl restart network’.

Или гораздо проще:

Выполните следующую команду для удаления интерфейса VLAN:

ip link delete <имя_интерфейса_VLAN>

где <имя_интерфейса_VLAN> - это имя интерфейса VLAN, который вы хотите удалить. Например:

ip link delete eth0.10

  1. Как проверить, что VLAN работает?

Перейдите в каталог ‘/etc/sysconfig/network-scripts’.

Найдите файл, соответствующий VLAN, которую вы хотите проверить. Файл будет иметь имя, состоящее из числа, обозначающего VLAN-номер, и расширения ‘.ifcfg-'. Например, если вы хотите проверить VLAN с номером 10, файл будет называться ‘ifcfg-10’.

Откройте файл в текстовом редакторе. Вы можете использовать команду ‘sudo nano ifcfg-' для открытия файла.

Проверьте наличие строки ‘VLAN=yes’ в файле. Если эта строка присутствует, это означает, что VLAN активирована и работает.

Или проще:

командой ip a проверяем, что VLAN создан и поднят (например, видим строчку ens33.100 )

выполняем ping внутри поднятой подсети

  1. Какие преимущества и недостатки использования VLAN?

Преимущества использования VLAN:

Изоляция сети: VLAN позволяет разделить сеть на отдельные сегменты, что обеспечивает большую безопасность и изоляцию трафика. Это особенно полезно в больших сетях, где необходимо предотвратить несанкционированный доступ или распространение вредоносного трафика.

Управление трафиком: VLAN позволяет администраторам сети более гибко управлять трафиком. Например, можно создать отдельные VLAN для разных типов трафика, таких как голосовые данные или видео, чтобы обеспечить более эффективное использование сетевых ресурсов.

Упрощение управления сетевыми ресурсами: VLAN позволяет легко добавлять, удалять или изменять сетевые устройства и ресурсы. Это упрощает управление сетевой инфраструктурой и облегчает масштабирование сети.

Недостатки использования VLAN:

Дополнительная настройка: Для использования VLAN требуется дополнительная настройка сетевых устройств и оборудования. Это может потребовать дополнительных затрат на оборудование и время на настройку.

Ограничения пропускной способности: VLAN может привести к снижению пропускной способности сети, особенно при использовании большого количества VLAN. Это может быть проблемой в сетях с ограниченными ресурсами.

Ограничения масштабируемости: При увеличении количества VLAN может возникнуть сложность в управлении и масштабировании сети. Добавление новых VLAN может потребовать дополнительных настроек и ресурсов, что может быть сложно в больших сетях.

  1. Что такое SSH и зачем он нужен?

SSH (Secure Shell) - это сетевой протокол прикладного уровня, который обеспечивает безопасное удаленное управление операционной системой и туннелирование TCP-соединений. Он шифрует весь трафик, включая передаваемые пароли, и позволяет безопасно передавать практически любой другой сетевой протокол. SSH используется для удаленной работы на компьютере через командную оболочку, передачи звукового потока или видео, а также для запуска клиентов X Window System. SSH-сервер прослушивает соединения на TCP-порту 22 и производит аутентификацию клиента перед началом обслуживания. Для работы по SSH необходимы SSH-сервер и SSH-клиент. SSH является безопасной альтернативой небезопасному протоколу Telnet для управления важными узлами сети

Secure Shell, т. е. SSH – протокол, обеспечивающий защищённые соединения и передачу данных между двумя удалёнными компьютерами. Изначально создавался на замену таким системам как rlogin и rcp. Как понятно из полного названия протокола, система SSH позволяет соединяться и управлять удалённым узлом (компьютером, маршрутизатором и т. д.), при этом защищая весь передаваемый трафик с помощью высоконадёжного шифрования.

  1. Как установить SSH сервер на Linux?

Для установки SSH сервера на Linux выполните следующие шаги:

Установите openssh-server, который является пакетом SSH сервера. Для этого введите команду ‘sudo apt install openssh-server’

После установки откройте файл конфигурации SSH сервера. Для этого введите команду ‘sudo nano /etc/ssh/sshd_config’.

Найдите строку ‘PasswordAuthentication’ и установите значение ‘yes’, чтобы разрешить аутентификацию по паролю.

Сохраните и закройте файл конфигурации.

Перезапустите SSH сервер. Для этого введите команду ‘sudo systemctl restart sshd’.

  1. Как подключиться к удаленному Linux серверу по SSH?

Для подключения к удаленному Linux серверу по SSH необходимо установить SSH-сервер на сервере и SSH-клиент на клиентской машине. SSH-сервер прослушивает соединения на TCP-порту 22 и производит аутентификацию клиента перед началом обслуживания. Для работы по SSH также требуется создание пары ключей - открытых и закрытых - и обмен открытыми ключами между сервером и клиентом. Обычно также используется пароль для аутентификации. Для подключения к серверу можно использовать клиентские программы SSH, такие как PuTTY на Windows или Terminal на Mac, указав IP-адрес или доменное имя сервера и порт 22. После успешного подключения можно выполнять команды на удаленном сервере.

  1. Как отключить SSH доступ на Linux сервере?

Перейдите в каталог ‘/etc/ssh/’.

Найдите файл ‘sshd_config’ и откройте его в текстовом редакторе.

Найдите строку ‘PasswordAuthentication’ и установите значение ‘no’, чтобы запретить аутентификацию по паролю.

Сохраните и закройте файл ‘sshd_config’.

Перезапустите SSH сервер. Для этого введите команду ‘sudo systemctl restart sshd’.

Закройте порт SSH (по умолчанию 22) для входящих соединений. sudo ufw deny 22

Отключение службы SSH sudo systemctl stop ssh sudo systemctl disable ssh

  1. Как сменить порт SSH на Linux сервере?

Перейдите в каталог ‘/etc/ssh/’.

Найдите файл ‘sshd_config’ и откройте его в текстовом редакторе.

Найдите строку ‘Port’ и измените значение на желаемый порт. Например, если вы хотите изменить порт на 2222, измените строку на ‘Port 2222’.

Сохраните и закройте файл ‘sshd_config’.

Перезапустите SSH сервер. Для этого введите команду ‘sudo systemctl restart sshd’.

  1. Какие методы аутентификации поддерживает SSH?

SSH поддерживает несколько методов аутентификации. Наиболее распространенным является аутентификация по паролю, где клиент предоставляет учетные данные для входа на сервер. Также SSH поддерживает аутентификацию по ключевой паре, где клиент и сервер обмениваются открытыми и закрытыми ключами для установления безопасного соединения. Кроме того, SSH может использовать аутентификацию при помощи ip-адреса хоста и даже обратную совместимость с rlogin. Все эти методы аутентификации обеспечивают безопасное удаленное управление и передачу данных через SSH протокол

  1. Какие преимущества и недостатки использования SSH?

Преимущества использования SSH:

Безопасность: SSH обеспечивает шифрование данных и аутентификацию пользователей, что делает удаленное управление и передачу данных безопасной. Это помогает предотвратить несанкционированный доступ и защищает конфиденциальность информации.

Удаленное управление: SSH позволяет администраторам сети удаленно управлять компьютерами и серверами. Это удобно для выполнения задач, таких как обновление программного обеспечения, проверка системных ресурсов и мониторинг работы сети.

Туннелирование: SSH может создавать туннели для передачи данных между удаленными узлами. Это позволяет использовать протоколы, такие как X Window System, для удаленного доступа к графическим приложениям и другим сетевым ресурсам.

Недостатки использования SSH:

Настройка: Для использования SSH требуется настройка сервера и клиента. Это может потребовать дополнительного времени и усилий для установки и конфигурации SSH-сервера и SSH-клиента.

Ограничения пропускной способности: SSH может потреблять пропускную способность сети, особенно при передаче большого объема данных. Это может быть проблемой в сетях с ограниченными ресурсами или при передаче больших файлов.

Ограничения масштабируемости: При увеличении количества пользователей и соединений SSH может стать сложным в управлении и масштабировании. Добавление новых пользователей и настройка прав доступа может потребовать дополнительного времени и усилий.

  1. Кто такой пользователь root в Linux и какие у него права?

Пользователь root в Linux является суперпользователем и имеет права на выполнение любых операций в системе. Он может изменять настройки, устанавливать и удалять программы, изменять системные файлы, останавливать компоненты или всю систему, а также полностью удалить ее одной командой. Учетная запись root обычно имеет идентификатор пользователя UID 0. В системе могут существовать несколько пользователей с правами, аналогичными root. Это позволяет администраторам сети иметь полный контроль над системой и выполнять необходимые задачи. Однако, использование учетной записи root требует осторожности, так как она может быть использована злоумышленниками для несанкционированного доступа и взлома системы. Поэтому рекомендуется ограничивать использование учетной записи root только необходимыми действиями и регулярно обновлять пароль для нее.​

  1. Как создать пользователя с правами root на Linux?

sudo adduser <имя пользователя>

sudo usermod -aG sudo <имя пользователя>

  1. Как изменить пароль пользователя root в Linux?

sudo passwd root

  1. Как удалить пользователя root в Linux?

userdel root -f

или

Перейдите в каталог ‘/home’.

Удалите папку с именем пользователя root.

  1. Как отключить доступ пользователя root в Linux?

sudo vim /etc/passwd

И замените:

root:x:0:0:root:/root:/bin/bash

на

root:x:0:0:root:/root:/sbin/nologin

Сохраните файл и закройте его.

С этого момента, когда пользователь root войдет в систему, он / она получит сообщение «This account is currently not available».

  1. Какие преимущества и недостатки использования пользователя root?

Преимущества использования пользователя root в Linux:

Полные права доступа: Пользователь root имеет полные права доступа к системе, что позволяет выполнять любые операции и изменять любые настройки. Это полезно при выполнении задач, требующих повышенных привилегий, таких как установка программного обеспечения, обновление системы или изменение системных файлов.

Управление и администрирование: Пользователь root обладает полным контролем над системой, что упрощает ее управление и администрирование. Он может контролировать процессы, мониторить ресурсы, устанавливать и удалять программное обеспечение, а также выполнять другие административные задачи.

Обновление системы: Пользователь root может устанавливать обновления системы, включая обновления безопасности, чтобы обеспечить защиту от уязвимостей и повысить стабильность системы.

Недостатки использования пользователя root в Linux:

Уязвимости безопасности: Пользователь root является основной целью для злоумышленников, поэтому его учетные данные должны быть надежно защищены. Если злоумышленник получит доступ к учетным данным пользователя root, он может получить полный контроль над системой и нанести серьезный ущерб.

Ошибки администрирования: Пользователь root имеет полный доступ к системе, поэтому ошибки при администрировании могут привести к нежелательным последствиям. Неправильные настройки или команды, выполненные пользователем root, могут привести к потере данных, сбоям в работе системы или даже полной неработоспособности.

Управление доступом: Пользователь root может быть сложно управлять доступом к ресурсам и файлам. Если необходимо предоставить доступ другим пользователям, требуется осторожность, чтобы не предоставить им больше прав, чем необходимо. Это может привести к возникновению уязвимостей безопасности или нежелательному доступу к файлам и данным.

  1. Какие службы используются для управления SSH на Linux?

Основная служба, используемая для управления SSH на Linux, - это sshd. В зависимости от дистрибутива и версии Linux, управление службой может выполняться различными инструментами, такими как service, systemctl.

  1. Какой файл конфигурации используется для SSH на Linux?

Настройки демона хранятся в файле /etc/ssh/sshd_config

  1. Как перезапустить службу SSH на Linux?

systemctl restart sshd

  1. Как проверить статус службы SSH на Linux?

systemctl status sshd или service sshd status

  1. Как изменить настройки SSH на Linux?

sudo nano /etc/ssh/sshd_config

  1. Какие преимущества и недостатки использования службы по управлению SSH?

Преимущества

Недостатки

Удобство

Использование инструментов управления (например, systemctl, service) обеспечивает удобство в запуске, остановке и перезапуске службы SSH.

Сложность настройки

Для новичков может быть сложно разобраться в файлах конфигурации и инструментах командной строки для управления SSH.

Гибкость конфигурации

Редактирование файла конфигурации sshd_config предоставляет гибкость в настройке параметров безопасности и поведения SSH-сервера.

Безопасность

Неправильная конфигурация может привести к уязвимостям безопасности. Например, неправильная настройка параметра PermitRootLogin может сделать систему более уязвимой.

Инструменты для работы с ключами

Использование ssh-keygen и ssh-add облегчает генерацию и управление ключами для аутентификации.

Неудобство при большом числе серверов

При управлении большим количеством серверов может потребоваться использование дополнительных средств автоматизации, таких как Ansible, чтобы упростить конфигурацию и обслуживание.

  1. Что такое Masscan и как он работает?

Masscan - это высокопроизводительный сканер открытых портов, который предназначен для быстрого сканирования больших сетевых диапазонов.

  1. Как установить Masscan на Linux?

Если в системе не установлен Masscan, тогда установите зависимости:

sudo apt-get install clang git gcc make libpcap-dev

И применив следующую команду, установите Masscan с помощью:

sudo apt-get install masscan

  1. Как использовать Masscan для сканирования портов?

Общий синтаксис команды выглядит следующим образом:

masscan -p \ \

Где \ - это перечень портов, а \ - целевой IP-адрес или диапазон адресов. Пример сканирования порта 80 на одном конкретном IP-адресе: masscan -p 80 192.168.1.1

  1. Как сохранить результаты сканирования Masscan в файле?

Для сохранения результатов сканирования Masscan в файле вы можете использовать опцию –output-format в командной строке, чтобы указать формат вывода, и –output-file для указания имени файла, в который будут записаны результаты. Вот пример использования: masscan -p 22 192.168.1.1 –output-format json –output-file scan_results.txt

  1. Как изменить настройки Masscan?

Опция –rate для установки скорости сканирования. Установить скорость в 10000 пакетов в секунду: masscan –rate 10000 -p 1-65535 192.168.1.1

Используйте опцию –output-format для выбора формата вывода. Например, для вывода в формате JSON используйте: masscan -p 22 192.168.1.1

–output-format json

Используйте опцию –wait для установки времени ожидания ответа от целевого устройства: masscan -p 22 192.168.1.1 –wait 5

Masscan может читать настройки из конфигурационного файла. Создайте текстовый файл с вашими настройками (например, myconfig.conf) и указывайте его при запуске Masscan: masscan –config myconfig.conf 192.168.1.1

Пример содержания конфигурационного файла:

–rate 5000

-p 22,80,443

  1. Какие преимущества и недостатки использования Masscan?

Преимущества

Недостатки

Высокая производительность

Masscan разработан с учетом максимальной производительности, что позволяет ему проводить эффективные сканирования даже в больших сетевых диапазонах.

Ограниченная обработка ответов

Masscan ориентирован на высокую производительность, и в некоторых случаях может игнорировать часть ответов, особенно при использовании высоких скоростей сканирования.

Асинхронность

Асинхронная работа Masscan позволяет эффективно обрабатывать множество запросов одновременно, что улучшает скорость выполнения сканирования.

Неудобство при использовании для полного анализа уязвимостей

Masscan сканирует открытые порты, но не предоставляет полноценного анализа уязвимостей. Для этой цели часто используют другие инструменты, такие как Nmap или Nessus.

Поддержка различных протоколов

Masscan поддерживает сканирование как по протоколу TCP, так и по протоколу UDP, что позволяет обнаруживать различные открытые порты и службы.

Возможность восприниматься как атака

Использование Masscan для сканирования сетей может быть воспринято как атака сети, что может привести к заблокировке IP-адреса или другим последствиям.

  1. Как добавить новый виртуальный диск в VMware?

В настройках VMware добавляем новый диск, размер по усмотрению (нe принципиально).

Далее перезапускаем операционную систему: sudo reboot now.

  1. Как установить новую виртуальную машину в VMware?

Запустите VMware Workstation

Создайте новую виртуальную машину:

Нажмите на кнопку “Create a New Virtual Machine” (Создать новую виртуальную машину) или выберите File -> New Virtual Machine.

Выберите тип настройки:

Например, если вы устанавливаете виртуальную машину с нуля, выберите “Typical”.

Укажите источник операционной системы:

Выберите, откуда будет установлена операционная система: с установочного диска, образа ISO или виртуальной машины.

Выберите операционную систему:

Укажите тип операционной системы, которую вы собираетесь устанавливать на виртуальной машине.

Настройте параметры виртуальной машины:

Задайте имя виртуальной машины, выберите расположение для сохранения файлов виртуальной машины и определите размер диска.

Завершите процесс установки:

Пройдите все этапы установки, включая присвоение объема памяти, сетевых настроек и других параметров.

Установите операционную систему:

Если вы выбрали установку операционной системы из ISO-образа или установочного диска, следуйте инструкциям по установке.

Завершите настройку:

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

  1. Как добавить новый сетевой адаптер в VMware?

Откройте настройки виртуальной машины

После выбора виртуальной машины перейдите в меню VM -> Settings (ВМ -> Настройки).

Добавьте новый сетевой адаптер:

В окне “Virtual Machine Settings” (Настройки виртуальной машины) выберите “Add…” (Добавить).

В списке выберите “Network Adapter” (Сетевой адаптер) и нажмите “Next” (Далее).

Выберите тип сетевого адаптера:

Выберите тип сетевого адаптера, который соответствует вашим требованиям. Например, “Bridged” (Мост) позволяет виртуальной машине работать на одной сети с хост-компьютером, а “NAT” (Сеть адресации сетевого уровня) предоставляет доступ к сети через хост.

Настройте параметры нового сетевого адаптера:

В зависимости от выбранного типа сетевого адаптера вам могут быть предложены дополнительные настройки. Например, для моста вам нужно выбрать физический сетевой адаптер.

Примените изменения:

Нажмите “Finish” (Готово) или “OK”, чтобы завершить процесс добавления нового сетевого адаптера.

  1. Как удалить устройство из VMware?

Откройте настройки виртуальной машины

После выбора виртуальной машины перейдите в меню VM -> Settings (ВМ -> Настройки).

Выберите устройство для удаления:

В окне “Virtual Machine Settings” (Настройки виртуальной машины) выберите устройство, которое вы хотите удалить. Это может быть, например, сетевой адаптер, жесткий диск или другое устройство.

Нажмите “Remove” (Удалить) или “Remove Device” (Удалить устройство)

Подтвердите удаление

Примените изменения

Нажмите “OK” или “Apply” (Применить), чтобы завершить процесс удаления устройства.

  1. Как изменить настройки устройств в VMware

Перейдите к нужной виртуальной машине в VMware Remote Console.

Если необходимо изменить тип операционной системы, выключите виртуальную машину.

Откройте настройки виртуальной машины в VMware Remote Console.

В Windows выберите VMRC > Управление > Настройки виртуальной машины.

В macOS выберите Виртуальная машина > Настройки.

В Linux выберите Виртуальная машина > Настройки виртуальной машины.

Откройте общие параметры виртуальной машины.

В Windows или Linux откройте вкладку Параметры и нажмите Общие.

В macOS нажмите Общие.

Введите имя и выберите тип гостевой операционной системы.

Файл конфигурации виртуальной машины будет обновлен в соответствии с указанными данными.

  1. Какие преимущества и недостатки использования VMware?

Преимущества использования VMware включают:

Упрощение сопровождения инфраструктуры: с помощью VMware можно создавать множество виртуальных машин на одном “железном” сервере, каждая из которых будет отдельной системой.

Экономия на покупке серверного оборудования: без покупки дополнительных серверов можно развернуть на виртуалках DNS- и WEB-серверы.

Сэкономить на покупке компьютеров для сотрудников компании: на виртуализации во многом стоит идея виртуальных рабочих столов, или VDI

Проводить тестирование и разработку в выделенных защищенных средах.

Недостатки использования VMware:

Цена: Главный недостаток решений VMWare — их цена, она выше, чем у конкурентов. Бесплатные продукты ограничены по функционалу, а все дополнительные опции оплачиваются отдельно4.

Сложности с операционными системами: оплате подлежит лицензия операционной системы на каждом виртуальном сервере. Поддерживается ограниченный круг гостевых операционных систем и их сборок4.

Недостаточное количество поддерживаемых гостевых операционных систем - только Windows и Linux (не все дистрибутивы)5.

  1. Что такое утилита fdisk в Linux и как ей пользоваться?

fdisk из пакета util-linux - интерактивная консольная утилита, которая может создать таблицу разделов и разделы на жестком диске и управлять ими. В таблице разделов описано разбиение жесткого диска на разделы.

  1. Как установить утилиту fdisk в Linux?

Для установки fdisk в Ubuntu / Linux Mint, введите в Терминал:

sudo apt update

sudo apt install fdisk

  1. Как использовать утилиту fdisk для создания разделов на диске?

Чтобы посмотреть список доступных вам дисков и разделов на них используйте опцию -l:

sudo fdisk -l

переход в интерактивный режим:

sudo fdisk /dev/nvme0n1

В интерактивном режиме с помощью команды n можно создавать разделы дисков.

И зафиксировать изменения командой w в интерактивном режиме

  1. Как изменить размер раздела с помощью утилиты fdisk?

fdisk -l

fdisk /dev/vda

Далее проверяем разделы командой p:

Disk /dev/vda: 10.7 GB, 10737418240 bytes

16 heads, 63 sectors/track, 20805 cylinders, total 20971520 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x89fc115c

Device Boot Start End Blocks Id System

/dev/vda1 2048 10487807 5242880 83 Linux

Сейчас на диске одна партиция /dev/vda1 . Добавим места.

Раздел понадобится удалить, затем не применяя изменений создать новую большего размера вместо этой. Должен совпадать исходный блок, с которого начинается раздел.

С ключом -p ещё раз просматриваем таблицу, фиксируем имя раздела, начальный и конечный секторы, тип файловой системы.

Device Boot Start End Blocks Id System

/dev/vda1 2048 10487807 5242880 83 Linux

Удаляем раздел командой d

Command (m for help): d

Selected partition 1

Создаем новый

Command (m for help): n

Partition type:

p primary (0 primary, 0 extended, 4 free)

e extended

Command (m for help):p

Partition number (1-4, default 1):

Using default value 1

First sector (2048-20971519, default 2048): [Enter]

Using default value 2048

Конец раздела ставим +7Гб вместо начальных 5 Гб.

Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +7GB

Можно просто нажать Enter, тогда fdisk выберет последний сектор автоматически и раздел займёт весь диск.

  1. Как удалить раздел на диске с помощью утилиты fdisk?

Как указано выше, выбираем раздел и в интерактивном режиме используем команду d:

fdisk /dev/vda

Затем вводим команду n, выбираем номер раздела и удаляем его командой d.

  1. Какие преимущества и недостатки использования утилиты fdisk?

Преимущества использования utiлиты fdisk:

Управление разделами: fdisk позволяет создавать, изменять, удалять и переименовывать разделы на диске. Это дает больше контроля над структурой диска, чем некоторые другие утилиты.

Поддержка различных типов разделов: fdisk поддерживает различные типы разделов, включая FAT, NTFS, ext2, ext3, ext4 и другие. Это делает его гибким инструментом для работы с различными типами файловых систем.

Работа с большими дисками: fdisk может работать с дисками, размер которых превышает 2 ТБ.

Недостатки использования утилиты fdisk:

Сложность использования: fdisk является командной строковой утилитой, которая может быть сложной для новичков или тех, кто предпочитает графические интерфейсы.

Отсутствие некоторых функций: Некоторые функции, такие как изменение размера существующих разделов, недоступны в fdisk. Для этих задач могут потребоваться другие утилиты, такие как resize2fs.

Риск потери данных: Из-за своей низкоуровневой природы fdisk может представлять риск потери данных, если он используется неправильно. Например, если вы случайно удаляете или изменяете раздел, это может привести к потере всех данных на этом разделе.

  1. Что такое файл /etc/fstab в Linux и какой он имеет смысл?

Файл /etc/fstab в Linux - это файл конфигурации, который содержит информацию о файловых системах и о том, как их следует монтировать при загрузке.

  1. Как изменить файл /etc/fstab в Linux?

Файл /etc/fstab это обычный текстовый файл, поэтому его можно редактировать в любом текстовом редакторе. Единственное требование - наличие прав суперпользователя. Так что, прежде чем приступать, войдите в систему как root или используйте команду su, чтобы получить права root.

  1. Как добавить новое устройство в файл /etc/fstab?

Создайте папку для раздела и получите идентификатор устройства. Откройте терминал и создайте папку с помощью команды: sudo mkdir /media/Data

И предоставьте юзеру права на чтение и запись в эту папку:

sudo chown [user]:[group] /media/Data

sudo chmod +rw /media/Data

Получение идентификатора устройства:

sudo apt-get install libblkid1

sudo blkid

Вывод будет похож на что-то типо этого:

/dev/sda2: UUID=”32a4b76f-246e-486e-8495-31b8a781fb4c” TYPE=”swap”

/dev/sda1: UUID=”31f39d50-16fa-4248-b396-0cba7cd6eff2” TYPE=”ext4”

Создайте запись в fstab: откройте файл /etc/fstab с помощью редактора nano: sudo nano /etc/fstab и добавьте строку:

UUID=31f39d50-16fa-4248-b396-0cba7cd6eff2    /media/Data  auto   rw,user,auto   0   0

Чтобы смонтировать раздел, откройте терминал и выполните команду: mount /media/Data. Из-за записи “auto”, он должен быть автоматически смонтирован при следующем загрузке. Перед следующей загрузкой не забудьте проверить записи! Если в файле fstab есть ошибка, система не запустится, и вам потребуется восстановить ее, отменив изменения. Вы можете проверить записи с помощью команды: sudo findmnt –verify.

  1. Как удалить устройство из файла /etc/fstab?
Открываем файл в редакторе и убираем строчку, соответствующую нашему устройству. Строка будет содержать UUID или путь к устройству (например, /dev/sda1), а также точку монтирования и другие параметры.:

sudo nano /etc/fstab

Сохраняем изменения и выходим.

После внесения изменений в файл /etc/fstab, рекомендуется проверить, нет ли ошибок, с помощью команды sudo mount -a. Эта команда попытается смонтировать все устройства, указанные в /etc/fstab. Если все работает правильно, команда завершится без сообщений об ошибках. Если есть проблемы, она выдаст сообщения об ошибках, которые помогут вам их исправить.
  1. Как изменить параметры устройства в файле /etc/fstab?
Повторяем действия из предыдущего вопроса, только вместо удаления строки, редактируем её, например если вы хотите изменить параметры mouting на ro (только для чтения), вы можете это сделать следующим образом:

UUID=your-uuid /media/Data ext4 ro 0 0

Точно также сохраняем изменения и вводим sudo mount -a.

  1. Какие преимущества и недостатки использования файла /etc/fstab?

Преимущества:

Автоматическое монтирование: При загрузке системы, файловые системы, указанные в /etc/fstab, автоматически монтируются в указанные точки монтирования. Это значит, что вам не нужно вручную монтировать каждую файловую систему при каждой загрузке системы.

Управление параметрами монтирования: Файл /etc/fstab позволяет контролировать параметры монтирования для каждой файловой системы. Это включает в себя параметры, такие как тип файловой системы, точку монтирования, параметры монтирования (например, rw, ro, nosuid, nodev и т. д.), и др..

Поддержка UUID: Файл /etc/fstab поддерживает монтирование по UUID, что позволяет правильно монтировать разделы даже если они поменяют свой порядок, например, при добавлении новых разделов или подключении новых дисков 1.

Недостатки:

Ошибки могут привести к проблемам при загрузке: Если в файле /etc/fstab есть ошибка, это может привести к тому, что система не сможет загрузиться. Это особенно важно, если вы добавляете или удаляете устройства, которые были заданы в /etc/fstab.

Нужно быть осторожным при редактировании: Изменение файла /etc/fstab может быть рискованным, если вы не знакомы с форматом файла и возможными последствиями. Опечатки или неправильные параметры могут привести к проблемам с монтированием файловых систем.

Зависимость от UUID: Хотя использование UUID может быть полезным для стабильности при изменении порядка разделов, это также означает, что если UUID устройства изменится (например, при повторной инициализацией файловой системы), вам придется обновить /etc/fstab.

  1. Какие файловые системы поддерживает Linux?

Linux поддерживает множество различных файловых систем. Вот некоторые из них:

ext4: Это самая распространенная файловая система в Linux. Она предлагает лучшую производительность и надежность по сравнению с более старыми версиями, такими как ext3 и ext2.

ext3: Это предыдущая версия ext4, которая также широко используется. Она обеспечивает надежность и стабильность, но может быть медленнее по сравнению с ext4.

ext2: Это еще более старая версия файловой системы ext, которая была популярна во времена Linux 2.x. Она менее надежна и менее эффективна по сравнению с ext3 и ext4.

btrfs: Это относительно новая файловая система, которая предлагает множество продвинутых функций, таких как снимки, дедупликация и поддержка больших объемов данных. Однако она все еще находится в стадии разработки и может не быть полностью совместимой с некоторыми дистрибутивами Linux.

XFS: Это высокопроизводительная файловая система, которая часто используется в серверных средах. Она обеспечивает быстрое время монтирования и высокую скорость записи.

JFS: Это еще одна файловая система, которая была разработана IBM для AIX. Она предлагает высокую производительность и надежность.

ReiserFS: Это еще одна файловая система, которая была разработана в Германии. Она известна своей эффективностью в работе с маленькими файлами, но ее поддержка в Linux не так активна, как у других файловых систем.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q
  1. Как проверить файловую систему на ошибки в Linux?
A

Перед проверкой фс надо её отключить от ОС:

sudo umount /dev/sda1

Теперь запустим fsck для проверки файловой системы:

sudo fsck /dev/sda1

Проверим результаты: Если fsck обнаружил и исправил какие-либо ошибки, он выведет сообщение об этом. Если нет ошибок, он просто выведет сообщение, подтверждающее, что файловая система в порядке.

Обратно перемонтируем файловую систему:

sudo mount /dev/sda1
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q
  1. Как отформатировать диск в определенной файловой системе в Linux?
A

Выполнить команду с флагом -t, который указывает тип файловой системы и указать диск, например, /dev/sda

mkfs -t ext4 /dev/sda (из практики)

Другие возможные файловые системы: -t vfat -t ntfs -t xfs

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q
  1. Как изменить файловую систему на диске в Linux?
A

1) Если диск уже примонтирован, необходимо его размонтировать командой: umount /dev/sda

2) Выполнить команду: mkfs -t <файловая система> /dev/sda

Пример: mkfs -t ext4 /dev/sda

В некоторых случаях может понадобиться указать флаг force -f: mkfs -t xfs -f /dev/sda

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q
  1. Какие преимущества и недостатки использования файловых систем в Linux?
A

Преимущества:

1) Многие ФС поддерживают журналирование

2) Поддержка хранения различных типов данных

3) Расширяемость и масштабируемость

4) Линукс поддерживает различные ФС

5) Некоторые ФС позволяют сжимать данные, создавать снимки и производить резервное копирование

Недостатки:

1) Несовместимость с др. ОС

2) Нет универсальных файловых систем

3) Некоторые новые функции могут влиять на производительность

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q
  1. Как определить список жестких дисков в Linux?
A

fdisk -l

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q
  1. Как проверить состояние жесткого диска в Linux?
A

1) Полная проверка всех атрибутов (нужно установить пакет smartmontools):

smartctl -a /dev/sdc – диск должен поддерживать SMART

2) Проверка заполненности (из практики): df -h

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q
  1. Как создать новый раздел на жестком диске в Linux?
A

fdisk /dev/sdX

Указать следующие параметры для создания: n, p, 1, \, \

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q
  1. Как отформатировать жесткий диск в Linux? (повторяет 194)
A

mkfs -t ext4 /dev/sda

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q
  1. Как изменить буферный кэш жесткого диска в Linux?
A

1) Для некоторых ФС указывается стратегия кэширования через data=:

mount -o data=writeback /dev/sdX1 /mnt

     В данном случае изменения в данных сначала записываются в кэш оперативной памяти, а затем асинхронно сбрасываются на диск.

2) Настройки в /etc/sysctl.conf

Определяет процент свободной оперативной памяти, при котором начинается асинхронная запись “грязных” (измененных) данных на диск:

     vm.dirty_background_ratio=10

Устанавливает порог, когда система начнет активную запись на диск:

     vm.dirty_ratio=20
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q
  1. Какие преимущества и недостатки использования HDD в Linux?
A

Преимущества:

1) Емкость хранения

2) Долговечность и надежность

3) Совместимость; поддержка старого аппаратного обеспечения

Недостатки:

1) Скорость чтения/записи

2) Энергопотребление

3) Склонность к механическим повреждениям и чувствительность к физ. воздействию

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q
  1. Как работает технология SSD в Linux?
A

Из практики:

Для SSD произвольный доступ к разделам — не проблема, потому что нет головки, которая двигалась бы по «блину», как у HDD, но некоторые характеристики все же меняют работу SSD.

Один из наиболее существенных факторов, влияющих на производительность SSD, — это выравнивание разделов. Считывая данные с SSD, вы читаете их частями, например, 4096 байт или 8192 байта за раз, и чтение должно начинаться с части, кратной этому значению.

Разделы являются более мелкими частями всего диска. В Linux они обозначаются цифрой после блочного устройства, поэтому у них есть такие имена, как /dev/sda1 и /dev/sdb3. Ядро представляет каждый раздел как блочное устройство, как представляло бы весь диск. Менеджер логических томов Linux (Logical Volume Manager, LVM) позволяет более гибко управлять традиционными дисковыми устройствами и разделами и в настоящее время применяется во многих системах.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q
  1. Как проверить состояние SSD в Linux? (частично повторяет 198)
A

Как в 198 вопросе с помощью SMART, который вшит в диск и мониторит его состояние smartctl -a /dev/sdX

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q
  1. Как отформатировать SSD в Linux?
A

Так же как HDD в вопросе 194

mkfs -t ext4 /dev/sda

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q
  1. Какие преимущества и недостатки использования SSD в Linux?
A

Преимущества:

1) Высокая скорость чтения и записи

2) Отсутствие механических движущихся частей => устойчивость к физ. повреждениям

3) Легкий вес, малый размер

4) Работает тихо

Недостатки:

1) Ограниченная прочность ячеек памяти

2) Сложнее восстановить данные при выходе из строя по сравнению с HDD

3) Часто не обладают такой емкостью как HDD

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q
  1. Как работает протокол TCP/IP в Linux?
A

В Linux реализация протокола TCP/IP предоставляется ядром операционной системы и соответствующими утилитами.

Физический уровень: включает в себя аппаратное обеспечение, такое как сетевые кабели и сетевые карты. Ядро Linux взаимодействует с аппаратным уровнем через драйверы сетевых устройств.

Канальный уровень: протоколы канального уровня (например, Ethernet) обеспечивают передачу фреймов между устройствами в локальной сети. В Linux, драйверы сетевых устройств и сетевой стек обрабатывают этот уровень.

Сетевой уровень: на этом уровне IP-пакеты формируются с заголовками, содержащими информацию о маршрутизации. Linux использует протоколы, такие как IP, ICMP, ARP и другие.

Транспортный уровень: протоколы транспортного уровня: TCP и UDP предоставляют службы доставки данных от одной программы к другой на разных узлах сети. В Linux, это управляется ядром и стеком сетевых протоколов.

Сеансовый, представительский и прикладной уровни: эти уровни включают в себя различные протоколы и службы, такие как HTTP, FTP, SSH, DNS и другие. Приложения Linux используют стек TCP/IP для обмена данными с другими узлами в сети.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q
  1. Как настроить IP адрес в Linux?
A

1) Дать ip интерфейсу: ip addr add 192.168.1.2/24 dev eth0

2) Отредактировать файл /etc/network/interface. Пример:

auto eth0

iface eth0 inet static

address 192.168.1.2

netmask 255.255.255.0

gateway 192.168.1.1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q
  1. За что отвечают данные конфигурационные файлы:
A

За различные аспекты конфигурации и настроек системы. Время, сети, пользователи, безопасность и т.д.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q
  1. /etc/adjtime
A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q
  1. /etc/bash.bashrc
A

Глобальный конфигурационный файл для оболочки Bash, который выполняется для интерактивных оболочек Bash. Он содержит настройки и псевдонимы, применяемые ко всем пользователям системы.

42
Q
  1. /etc/crontab
A

Главный файл расписания cron, который используется для запуска заданий (cron jobs) в определенное время.

43
Q
  1. /etc/environment
A

Этот файл используется для установки системных переменных окружения, которые будут доступны всем пользователям.

44
Q
  1. /etc/fstab
A

Файл системы, который содержит информацию о доступных дисковых разделах и их точках монтирования.

45
Q
  1. /etc/group
A

Файл, содержащий информацию о группах пользователей системы.

46
Q
  1. /etc/hostname
A

Файл, содержащий имя хоста системы.

47
Q
  1. /etc/hosts
A

Локальный файл разрешения имен, используемый для сопоставления IP-адресов с именами хостов.

48
Q
  1. /etc/hosts.allow и /etc/hosts.deny
A

Файлы, используемые для настройки списков разрешений и запретов для сервисов, управляемых через TCP Wrappers.

49
Q
  1. /etc/issue и /etc/issue.net
A

Файлы, содержащие сообщение, отображаемое перед входом в систему на локальной консоли (/etc/issue) и в сетевых службах (/etc/issue.net).

50
Q
  1. /etc/ld.so.conf
A

Конфигурационный файл для динамического компоновщика, указывающий, где искать библиотеки при запуске программ.

51
Q
  1. /etc/localtime
A

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

52
Q
  1. /etc/login.defs
A

Файл конфигурации, который определяет настройки системы входа в систему и поведение пользователей.

53
Q
  1. /etc/mime.types
A

Файл, содержащий соответствия между MIME-типами и расширениями файлов.

54
Q
  1. /etc/modprobe.d/
A

Каталог, содержащий конфигурационные файлы для modprobe, которые определяют дополнительные параметры для загружаемых модулей ядра.

55
Q
  1. /etc/modules-load.d/
A

Каталог, содержащий файлы, которые определяют модули ядра, которые должны быть загружены при запуске системы.

56
Q
  1. /etc/nsswitch.conf
A

Конфигурационный файл, который определяет, с каких источников брать информацию о встроенных в Linux именных сервисах (passw, services и пр.)

57
Q
  1. /etc/ntp.conf
A

Используется при запуске синхронизации системных часов с интернет часами.

58
Q
  1. /etc/os-release
A

Содержит информацию о текущей информационной системе (название, версия, сайты с поддержкой и отчетом об ошибках).

59
Q
  1. /etc/passwd
A

Содержит информацию об учетных записях пользователей

60
Q
  1. /etc/profile
A

Данный файл загружается вторым в системе, и определяет локальные и глобальные переменные окружения, информацию переменной PATH, настройки терминала и другие вещи, которые надо определить при загрузке профиля пользователя.

61
Q
  1. /etc/resolv.conf
A

Конфигурационный файл для resolver — набора рутин для получения доступа к системе доменных имен.

62
Q
  1. /etc/sddm.conf
A

Файл настройки для SDDM (Simple Desktop Display Manager) – дисплейного менеджера для X11 и Wayland. Присутствует в стабильной ветке Debian.

63
Q
  1. /etc/shadow
A

Файл с набором паролей пользователей системы. Принадлежит пользователю root и группе shadow.

64
Q
  1. /etc/sudoers
A

Файл с настройками политик доступа к возможностям root.

65
Q
  1. /etc/sysctl.conf
A

Файл, который содержит значения, которые будут загружены sysctl при старте.

66
Q
  1. /etc/vconsole.conf
A

Настраивает параметры виртуальной консоли терминала, вроде раскладки клавиатуры, шрифта и пр.

67
Q
  1. /boot/grub/grub.cfg*
A

Управляет работой загрузчика GRUB, здесь указаны все его параметры и настройки, а также сформировано меню. Поэтому, изменяя этот файл, мы можем настроить Grub как угодно.

68
Q
  1. Что такое GREP и для чего он используется в Linux?
A

Утилита командной строки Linux grep даёт возможность найти текст в указанном файле. Можно также передать вывод любой команды в grep.

69
Q
  1. Какие флаги можно использовать с командой GREP?
A

-E шаблоны — расширенные регулярные выражения

-F шаблоны — строки

-G шаблоны — простые регулярные выражения

-e – использовать шаблоны для поиска

-f – брать шаблоны из файла

-i – игнорировать различие регистра

-w – совпадение обязательно с целым словом

-x – совпадение обязательно с целой строкой

-z – строки разделяются байтом с нулевым значением, а не символом конца строки

-s – не показывать сообщения об ошибках

-v – выбирать не подходящие строки

-V – показать информацию о версии и закончить работу

–help – показать справку о флагах и закончить работу

-m – остановиться после указанного числа совпавших строк

-b – печатать вместе с выходными строками смещение в байтах

-n – печатать номер строки вместе с выходными строками

-H – печатать имя файла для каждой выводимой строки

-h – не начинать вывод с имени файла

-o – показывать только совпавшие непустые части строк

-q – подавлять весь обычный вывод

-r – то же, что и –directories=recurse

-R – тоже, но с переходом по всем символьным ссылкам

-L – печатать только имена файлов без выбранных строк

-l – печатать только имена файлов с выбранными строками

-c – печатать только количество выбранных строк на файл

-T – выравнивать табуляцией (если нужно)

–color[=КОГДА] – использовать маркеры для различия совпадающих строк; когда может быть «always» (всегда), «never» (никогда) или «auto» (автоматически)

70
Q
  1. Как найти все строки в файле, содержащие определенную фразу?
A

grep “example” file.txt

71
Q
  1. Как найти все строки в нескольких файлах, содержащие определенную фразу?
A

Можно искать напрямую в интересующих файлах:

grep “exmaple” file1.txt file2.txt

Если же таких файлов много, то в теории они могут быть взяты под маску:

grep “exmaple” *.txt

Также можно провести поиск по всей директории и ее поддиректориям:

grep “example” -r /home/user

72
Q
  1. Как найти все строки в файле, НЕ содержащие определенную фразу?
A

Для поиска всех строк в файле, не содержащих определенную фразу, вы можете использовать команду grep -v в Linux. Например, для поиска всех строк в файле “file.txt”, не содержащих фразу “example”, выполните следующую команду:

grep -v “example” file.txt

Эта команда выведет все строки, которые не содержат фразу “example”.

73
Q
  1. Что такое SSH-authorized_keys и для чего он используется в Linux?
A

SSH-authorized_keys - это файл, который используется в Linux для хранения публичных ключей, которые могут быть использованы для аутентификации при подключении по SSH. Когда пользователь пытается подключиться к удаленному серверу по SSH, сервер проверяет его публичный ключ с помощью файла authorized_keys, чтобы удостовериться, что он имеет право доступа.

74
Q
  1. Как создать SSH-ключ и добавить его в файл authorized_keys?
A

Чтобы создать SSH-ключ и добавить его в файл authorized_keys, выполните следующие шаги:

  • Откройте терминал и выполните команду ssh-keygen -t rsa. Она создаст новую пару ключей RSA.
  • Укажите имя файла, в который сохранить ключ (например, id_rsa) и, при запросе, введите парольную фразу (это необязательно, но рекомендуется для усиления безопасности).
  • После этого будет создан приватный ключ (обычно в файле id_rsa) и публичный ключ (обычно в файле id_rsa.pub).
  • Содержимое публичного ключа (id_rsa.pub) можно добавить в файл authorized_keys на удаленный сервер с помощью команды ssh-copy-id user@server.
75
Q
  1. Как удалить SSH-ключ из файла authorized_keys?
A

Чтобы удалить SSH-ключ из файла authorized_keys, найдите соответствующую строку в этом файле и удалите ее.

Файл authorized_keys находится на удаленном сервере и хранит список публичных ключей, которые разрешены для аутентификации по SSH. Когда вы подключаетесь к серверу, SSH-сервер сравнивает ваш публичный ключ с содержимым файла authorized_keys, чтобы удостовериться, что у вас есть право доступа.

Чтобы удалить ключ, выполните следующие шаги:

  1. Подключитесь к удаленному серверу с помощью SSH.
  2. Откройте файл authorized_keys. Обычно он находится в директории ~/.ssh/.

nano ~/.ssh/authorized_keys

Вы можете использовать любой текстовый редактор.

  1. Найдите строку, соответствующую ключу, который вы хотите удалить. Ключи в файле authorized_keys обычно представлены в формате одной строки, начинающейся с “ssh-rsa” или “ssh-ed25519”, а затем идет сам ключ.
  2. Удалите эту строку из файла.
  3. Сохраните изменения и закройте файл.

После удаления ключа он больше не будет использоваться для аутентификации при подключении по SSH к этому серверу.

76
Q
  1. Как проверить, что SSH-ключ работает?
A

Чтобы проверить, что SSH-ключ работает, вы можете выполнить следующую команду:

ssh -i /path/to/private/key user@server

Замените /path/to/private/key на путь к вашему приватному ключу, user на имя пользователя удаленного сервера и server на адрес удаленного сервера. Если ключ настроен правильно, вы сможете подключиться к серверу без ввода пароля.

77
Q
  1. Как установить ограничения на использование SSH-ключа?
A

Для установки ограничений на использование SSH-ключа можно использовать файл “authorized_keys” и опции OpenSSH. Одна из таких опций - ограничение команды, которую может выполнить ключ. Например, вы можете ограничить ключ только на выполнение определенной команды, добавив в начало строки ключа опцию command=”/путь/к/команде”. Это означает, что ключ будет использоваться только для выполнения указанной команды.

78
Q
  1. Что такое многофакторная аутентификация и как она работает для SSH в Linux?
A

Многофакторная аутентификация (MFA) - это метод аутентификации, включающий использование двух или более факторов для подтверждения личности. В контексте SSH в Linux, MFA обычно включает использование пароля и SSH-ключа. Для аутентификации требуется как фактор “что вы знаете” (пароль), так и “что у вас есть” (SSH-ключ).

79
Q
  1. Какие методы аутентификации можно использовать вместе с SSH?
A

Вместе с SSH можно использовать различные методы аутентификации. Некоторые из них:

  • Парольная аутентификация: пользователь должен предоставить правильный пароль.
  • Аутентификация с использованием SSH-ключей: пользователь должен иметь правильный приватный ключ, соответствующий публичному ключу на сервере.
  • Аутентификация с использованием аутентификатора RSA: ключ или карты, подтверждающие личность пользователя.
  • Аутентификация по сертификату: используется цифровой сертификат X.509 для подтверждения личности.
80
Q
  1. Как настроить многофакторную аутентификацию для SSH?
A

Чтобы настроить многофакторную аутентификацию для SSH, вы должны включить два или более метода аутентификации. Например, вы можете включить аутентификацию по паролю и SSH-ключам вместе. Это можно сделать путем настройки соответствующих опций в файле /etc/ssh/sshd_config. После внесения изменений необходимо перезапустить службу sshd.

81
Q
  1. Как проверить, что многофакторная аутентификация работает?
A

Чтобы проверить, что многофакторная аутентификация работает, попробуйте подключиться к удаленному серверу через SSH с использованием пароля и SSH-ключа. Если оба фактора успешно подтверждены, вы сможете установить соединение.

82
Q
  1. Какие преимущества дает использование многофакторной аутентификации для SSH?
A

Использование многофакторной аутентификации для SSH дает несколько преимуществ:

  • Усиление безопасности: использование двух факторов устраняет риски, связанные с утечкой пароля или компрометацией SSH-ключа.
  • Защита от атак подбора пароля: если злоумышленник пытается подобрать пароль, у него не будет доступа к системе без наличия правильного SSH-ключа.
  • Удобство использования: после настройки многофакторной аутентификации пользователи могут подключаться к системе, используя только SSH-ключ, минуя ввод пароля.
83
Q
  1. Что такое SFTP и для чего он используется в Linux?
A

SFTP (Secure File Transfer Protocol) - это протокол передачи файлов, основанный на протоколе SSH. В Linux SFTP используется для безопасной передачи файлов между клиентом и сервером.

84
Q
  1. Какой клиент для работы с SFTP можно использовать в Linux?
A

Для работы с SFTP в Linux можно использовать команду sftp в терминале или различные графические клиенты, такие как FileZilla, WinSCP и другие.

85
Q
  1. Как установить и настроить FileZilla на Linux?
A

Чтобы установить и настроить FileZilla на Linux, выполните следующие шаги:

  • Откройте терминал и выполните команду sudo apt install filezilla (если ваша система основана на Debian или Ubuntu) или sudo dnf install filezilla (если ваша система основана на Fedora или CentOS).
  • После установки запустите FileZilla из меню приложений.
86
Q
  1. Как создать новое подключение в FileZilla?
A

Чтобы создать новое подключение в FileZilla, выполните следующие действия:

  • Откройте FileZilla.
  • В меню “Файл” (File) выберите “Управление серверами” (Site Manager).
  • В окне “Управление серверами” нажмите кнопку “Новый сайт” (New Site).
  • Введите имя для нового подключения.
  • В разделе “Хост” (Host) введите адрес сервера.
  • Введите имя пользователя и пароль.
  • Выполните другие необходимые настройки (например, выберите протокол SFTP).
87
Q
  1. Как передать файлы между клиентом FileZilla и сервером SFTP?
A

Чтобы передать файлы между клиентом FileZilla и сервером SFTP, выполните следующие действия:

  • Подключитесь к серверу, используя созданное ранее подключение в FileZilla.
  • В левой панели FileZilla найдите файлы на вашем компьютере.
  • В правой панели FileZilla найдите папку на сервере, куда вы хотите передать файлы.
  • Выберите файлы на компьютере, которые вы хотите передать на сервер, и перетащите их в правую панель FileZilla.
  • FileZilla начнет передачу файлов на сервер. Вы можете наблюдать прогресс передачи в нижней части программы.
88
Q
  1. Что такое IPv6 и как оно отличается от IPv4?
A

IPv6 (Internet Protocol version 6) - это последняя версия протокола интернета (IP), предназначенного для идентификации и распределения адресов в сети. Основное отличие от предыдущей версии, IPv4, заключается в размере адреса. IPv6 использует 128-битные адреса, в то время как IPv4 использует 32-битные адреса. Это позволяет IPv6 предоставить невероятно большое количество уникальных адресов, что особенно важно в условиях постоянного роста числа подключенных к интернету устройств.

89
Q
  1. Как проверить, что IPv6 включено на сервере Linux?
A

Чтобы проверить, отключён ли IPv6 на уровне операционной системы, выполните следующие команды:

sysctl -n net.ipv6.conf.all.disable_ipv6

sysctl -n net.ipv6.conf.default.disable_ipv6

Если вывод равен 0, то IPv6 включено, если 1 - выключено.

90
Q
  1. Как настроить статический IPv6-адрес на сервере Linux?
A

sudo nano /etc/network/interfaces

iface eth0 inet6 static

address 2001:db8::1

netmask 64

gateway 2001:db8::2

Замените значения на соответствующие вашей сети.

91
Q
  1. Как настроить динамический IPv6-адрес на сервере Linux?
A

sudo nano /etc/network/interfaces

iface eth0 inet6 dhcp

Это настроит интерфейс для получения IPv6-адреса через DHCP.

92
Q
  1. Как проверить, что IPv6 работает на сервере Linux?
A

Выполните пинг к какому-либо IPv6-адресу, например:

ping6 ipv6.google.com

Если получен ответ, значит, IPv6 настроен и работает.

93
Q
  1. Что такое mac-адрес?
A

MAC-адрес (ещё называют физический адрес) – это уникальный идентификатор сетевого интерфейса в локальной сети. Пример MAC-адреса 50:46:5D:6E:8C:20

94
Q
  1. Как в Windows по MAC-адресу определить производителя?
A

В Windows для определения вендора (производителя) устройства по MAC-адресу есть бесплатная программа MACAddressView. Правила ввода такие: Можно указывать полный адрес (например, 01-02-03-04-05-06) или только его первые 3 байта (например, 01-02-03).

95
Q
  1. Как в Linux по MAC-адресу определить производителя устройства?
A

База с уникальными идентификаторами организаций (OUI) обычно уже присутствует в системах Linux, поскольку её используют различные программы. Вы можете поискать этот файл:

locate oui.txt

Также вы можете скачать эту базу:

wget \

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

96
Q
  1. Как узнать свой MAC-адрес в Windows?
A

Чтобы узнать свой MAC-адрес в Windows из командной строки, откройте командную строку, для этого нажмите Win+x и выберите «Windows PowerShell». Вы можете использовать две команды, первая:

getmac

показывает краткую информацию о всех MAC-адресах системы, при этом не всегда просто сориентироваться, какому именно интерфейсу соответствует конкретный MAC-адрес. Вторая команда:

ipconfig /all

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

97
Q
  1. Как узнать свой MAC-адрес в Linux?
A

В Linux есть несколько способов узнать свой MAC-адрес. Команды:

cat /sys/class/net/*/address

ip link​

ip a

iw dev

nmap 192.168.127.0/24

arp-scan –l

arp-scan –interface=ens33 192.168.127.0/24

98
Q
  1. Как в Linux сделать так, чтобы MAC подменялся при каждом подключении?
A

Если вы хотите, чтобы при каждом подключении подменялся MAC-адрес, но при этом при соединении с одной и той же сетью использовался одинаковый MAC, то в файл /etc/NetworkManager/conf.d/mac.conf:

sudo nano /etc/NetworkManager/conf.d/mac.conf

Добавьте строки:

[connection]

ethernet.cloned-mac-address=stable

wifi.cloned-mac-address=stable

Строки с ethernet.cloned-mac-address и wifi.cloned-mac-address можно добавлять по отдельности или вместе.

99
Q
  1. Каждый раз разные MAC даже для одних и тех же сетей?
A

Если вы хотите каждый раз разные MAC даже для одних и тех же сетей, то строки должны выглядеть так:

[connection]

ethernet.cloned-mac-address=random

wifi.cloned-mac-address=random

100
Q
  1. Как установить определённый MAC?
A

Откройте файл /etc/NetworkManager/conf.d/mac.conf

sudo nano /etc/NetworkManager/conf.d/mac.conf

Если вы хотите поменять MAC и для проводного и для беспроводного соединения, то можно использовать сразу обе записи:

[connection]

ethernet.cloned-mac-address=Новый_MAC # для проводного соединения

wifi.cloned-mac-address=Новый_MAC2 # для беспроводного соединения

Можно добавить только одну записать для соответствующей настройки (например, только для проводного соединения)

Для отмены спуфинга, как сказано ранее, добавьте в конфигурационный файл строки:

[device]

wifi.scan-rand-mac-address=no

Чтобы изменения вступили в силу перезапустим службу:

sudo systemctl restart NetworkManager

101
Q
  1. Измените MAC-адрес с помощью iproute2?
A

Мы будем использовать программу ip, которая включена в пакет iproute2.

ip link show

sudo ip link set dev <имя_интерфейса> down

sudo ip link set dev <имя_интерфейса> address XX:XX:XX:XX:XX:XX

Где XX:XX:XX:XX:XX:XX – это желаемый новый MAC.

sudo ip link set dev <имя_интерфейса> up