---
# System prepended metadata

title: ●▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬●

---

# ●▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬● 
# Практическая работа “Настройка сети в Linux” 
# ●▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬●
>## Выполнил Пиджаков Давид ББСО-01-22
## Цель работы:
<u1>
    <li>Научиться работать с утилитами ip a, ifconfig, traceroute, ping;</li>
    <li> Научиться настраивать сетевой интерфейс;</li>
<li>Научиться настраивать шифрование домашнего каталога;</li>
    <li>Научиться работать с Help, Man.</li>
</u1>

## Практическая работа 1.0 “Пользовательское окружение ОС Linux”:
>### В данной работе нужно ознакомиться и понять, как работают Утилиты  "tty", "users", "who" и "w".
### Утилита tty:
![](https://i.imgur.com/pCCnh6K.png)
tty печатает имя терминала, который вы используете. TTY означает «телетайп» (teletypewriter)
### Утилита users:
![](https://i.imgur.com/eSTuCmk.png)
Выведет список всех зарегистрировавшихся пользователей. Она, до некоторой степени, является эквивалентом команды **who -q**.
### Утилита who:
![](https://i.imgur.com/O5rples.png)
Выводит список пользователей, работающих в настоящий момент в системе.
### Утилита w:
![](https://i.imgur.com/PysAyx5.png)
Выводит информацию о системе, список пользователей, подключенных к системе и процессы, связанные с пользователями. Это расширенная версия команды **who**. 
# Настройка сети
## <li>ifconfig</li>
При вызове без каких-либо опций ifconfig отображает информацию о конфигурации всех сетевых интерфейсов и связанный IP-адрес:
 ![](https://i.imgur.com/SNx4utg.png)
Вывод включает информацию обо всех активных и неактивных сетевых интерфейсах
**inet**  - сетевой адрес
**netmask** - маска сети 
При запуске машина обнаружила 2 сетевых интерфейса (**eth0** и **lo**)

Используя **ifconfig** можно даже поменять IP адрес вашего интерфейса. 
![](https://i.imgur.com/fAHhSln.png)
С помощью команд up/down мы можем включать/выключать интерфейсы
![](https://i.imgur.com/WwmuNDI.png)

![](https://i.imgur.com/ZjsCocT.png)

## <li>ping </li>
Данная утилита может производить огромное количество действий, в зависимости от аргумента ![](https://i.imgur.com/jE4QrvE.png)
Пример использования:
![](https://i.imgur.com/IT9lX6M.png)

<li> "c" - способ использования утилиты</li>
<li> "4" - количество возможных пакетов</li>
<li> "youtube.com" - домен нужного сайта</li>

## <li> traceroute </li>
Данная утилита позволяет проследить сетевой маршрут до конечного хоста, печатая количество переходов (IP-адреса маршрутизатора) на этом пути.
Она также имеет огромное количество возможностей, в зависимости от аргумента.
![](https://i.imgur.com/oXKXIGu.png)
## <li> route </li>
утилита **route** помогает при работе с таблицей маршрутизации
![](https://i.imgur.com/xUSJNaq.png)
меняем шлюз при помощи утилиты **route**![](https://i.imgur.com/ajkWkBe.png)

## <li> nmcli </li>
**Nmcli** - это простой в использовании инструмент командной строки с поддержкой сценариев для сообщения о состоянии сети, управления сетевыми подключениями и управления NetworkManager.
![](https://i.imgur.com/vGoNkNK.png)
# 2. Инструменты сетевого сканирования и анализа производительности
## <li>netstat</li>
Данная утилита очень помогает при устранении неполадок в сети и анализе производительности. Она предоставляет много полезной информации. 
При помощи **netstat -a** выводится список всех портов, как прослушиваемых, так и не прослушиваемых. 
Показать таблицу маршрутизации ядра: **netstat -r**
![](https://i.imgur.com/r6WYOG0.png)
На данный момент утилита **netstat** устарела и есть более удобные и практичные в применении аналоги.
## <li>netcat</li>
Утилита **netcat** используется при работе с сокетами, позволяет прослушивать и сканировать порты, открывать соединения с разными протоколами. Попробуем открыть TCP порт через **netcat**
Для этого откроем командную строку windows, узнаем через нее IP адрес своего роутера и проверяем доступность портов. 
В моем случае в выбранном диапазоне было свободно 2 порта.
![](https://i.imgur.com/7gxxd1L.png)
## <li>ss</li>
**ss** (socket statystics) - утилита, предоставляющая помимо той же информации, что и **netstat**, еще и дополнительную информацию о TCP портах.
Через открытый с помощью **netcat** TCP порт, и с помощью **ss** получили о нем подробную информацию
![](https://i.imgur.com/kfO4sUZ.png)
## <li>Nmap</li>
**Nmap** это один из лучших сетевых сканеров. Применяется для сбора информации о сетях или отдельных адресах. **Nmap** позволяет узнать какой сервис работает на том или ином открытом порте. Просто указав свой IP мы можем очень быстро проверить доступность портов
![](https://i.imgur.com/5dGCSoR.png)
Рядом с номером открытого TCP порта указывается назначение порта.
### Трессировка в **nmap** 
Используя функцию **trceroute** можно просканировать локальную сеть.
![](https://i.imgur.com/qetzX79.png)
Просканировав локальную сеть мы получаем следующую информацию:
<li>Просканированы все доступные порты(1000 штук)</li>
<li>Найдено 2 узла</li>
<li>1 IP адрес с поднятым на нем единственным хостом</li>


## <li> host </li>
Простая утилита для перевода имен хостов в IP адреса. ![](https://i.imgur.com/cSsyJOW.png)

## <li> dig </li>
*(сокращение от «domain information groper»)* — утилита (DNS-клиент), предоставляющая пользователю интерфейс командной строки для обращения к системе DNS. Позволяет задавать различные типы запросов и запрашивать произвольно указываемые сервера.
![](https://i.imgur.com/tQKVlNH.png)
## <li>Nslookup</li>
Иногда может возникнуть необходимость проверить работоспособность DNS, посмотреть как быстро работает сервер, увидеть IP адрес и скорость его получения для определенного домена. Для этого используется утилита nslookup.
![](https://i.imgur.com/LRGltj2.png)
# 3. Анализаторы сетевых пакетов Linux
## <li>Tcpdump</li>
Сетевой сниффер *(sniff - нюхать)* для захвата и анализа пакетов TCP/IP. 
С помощью аргумента **-i** можно перехватывать все проходящие через интерфейс пакеты, указав имя интерфейса.
![](https://i.imgur.com/RqsEjMT.png)
С помощью аргумента **-с** мы можем ограничить количество перехватываемых пакетов. 
![](https://i.imgur.com/K8FousS.png)
Также с помощью **-w** можно сохранять захваченные пакеты в файл.
## <li>Wireshark</li>
**Wireshark** - утилита, используемая для анализа пакетов и информации в них. Дает гораздо более подробную информацию, чем **tcdump**.
![](https://i.imgur.com/IIv3WoU.png)
При вызове данной утилиты открывается окно, которое предоставляет множество возможных операций с пакетами, таких как: фильтрация, перемещение, просмотр содержания.
На фото пакеты были отсортированы по IP с помощью команды ip.addr == *(Ip адрес, по которому сортируем)*
## <li>bmon</li>
Данная утилита собирает статистику, связанную с сетью, и выводит ее визуально в удобном для человека формате. Это надежный и эффективный монитор полосы пропускания и оценщик скорости в реальном времени.
![](https://i.imgur.com/CgOSQc0.png)
# <li>IP</li>
Синтаксис команды ip следующий:

> ip [OPTIONS] OBJECT { COMMAND | help 


![](https://i.imgur.com/gEbjRrY.png)


**OBJECT** — это тип объекта, которым вы хотите управлять. Наиболее часто используемые объекты (или подкоманды):
<li>link ( l ) — отображение и изменение сетевых интерфейсов.</li>
<li>address ( a ) — отображение и изменение IP-адресов.</li>
<li>route ( r ) — отображение и изменение таблицы маршрутизации.</li>
<li>neigh ( n ) — Отображение и управление соседними объектами (таблица ARP).</li>

С помощью команды **ip addr show** можно получить всю информацию о IP адресах.
![](https://i.imgur.com/Nl4AiUz.png)
Чтобы запросить информацию об одном определенном интерфейсе, используйте **ip addr show dev *(имя интерфейса)***
![](https://i.imgur.com/QbV1d3M.png)
Можно назначить интерфейсу другой IP адрес 
![](https://i.imgur.com/5wqLai3.png)
![](https://i.imgur.com/jnxSSS9.png)
Отображение всех сетевых интерфейсов
![](https://i.imgur.com/4Q9OEBh.png)
## Включение/выключение интерфейса
![](https://i.imgur.com/CZWEbSH.png)
![](https://i.imgur.com/Ax76NHe.png)
## Таблица маршрутизации
Список записей маршрута ядра:
![](https://i.imgur.com/V6d8PJw.png)
Добавим маршрут к 192.168.121.0/24 через шлюз 192.168.121.1
![](https://i.imgur.com/IuTG08m.png)
Чтобы добавить маршрут по умолчанию, используйте ключевое слово default.
![](https://i.imgur.com/FscBHwZ.png)
Удалим добавленные маршруты ![](https://i.imgur.com/PeEsJ7d.png)
![](https://i.imgur.com/aKiFiMq.png)
# Traceroute 
Необходим для отладки сети через отслеживание пути сетевого пакета. Для прослеживания пути могут быть использованы различные протоколы, такие как ICMP, UDP и TCP. Для отладки удобнее всего использовать ICMP, так как в него встроена система классификации ошибок.

Все сообщения об ошибках ICMP, за исключением Истекло время и Порт недостижим, выдаются в следующем формате:
<li>!H - Хост недостижим</li>
<li>!N - Сеть недостижима</li>
<li>!P - Протокол недоступен</li>
<li>!S - Ошибка в исходном маршруте</li>
<li>!F - Требуется фрагментация</li>

# СПРАВОЧНЫЕ СИСТЕМЫ 
В UNIX системах предусмотрена справочная система для быстрого доступа к информации о самой системе и инструментах, содержащиеся в ней. Самой известной справочной системой, сопровождающей UNIX практически с момента ее рождения, является справочная система страниц руководства, информация из которой доступна при помощи команд **man**, **apropos** и **whatis**.

**Whatis** дает краткую информацию по утилите
![](https://i.imgur.com/KcObB2x.png)
**Man** дает очень подробную информацию.
![](https://i.imgur.com/it7DSIU.png)
**Apropos** - своего рода поисковик, находит страницы по запросу
![](https://i.imgur.com/kAOaHUf.png)

# Шифрование домашнего каталога на базе Ubuntu
Для защиты своих данных от несанкционированного доступа будем использовать утилиту **ecryptfs**.
Создадим юзера, домашний каталог которого собираемся зашифровать:
![](https://i.imgur.com/f4nM9qU.png)
Для шифрования всего домашнего каталога пользователя можно использовать
программу ecryptfs. Допустим, что у вас в системе есть пользователь NATE_HIGGERS, тогда его домашний каталог можно зашифровать следующей командой:
==sudo ecryptfs-migrate-home -u NATE_HIGGERS==
![](https://i.imgur.com/FykhdZP.png)
Заходим в Ubuntu через созданного пользователя и получаем ключ вписав такую команду:
![](https://i.imgur.com/oalGc80.png)
Заходим обратно, на основного пользователя и попробуем зайти в зашифрованную домашнюю директорию нашего пользователя.
![](https://i.imgur.com/LGIIKiS.png)

# {{{{{{{{{{{{{{{{{{{{{{ВЫВОДЫ:}}}}}}}}}}}}}}}}}}}}}
В ходе практической работы:
<li>Изучены этапы загрузки системы</li>
<li>Была установлена виртуальная машина</li>
<li>Произведено знакомство с Ubuntu и Linux</li>
<li>Изучены различные утилиты и особенности работы с ними</li>
<li>Изучены возможности системы по шифрованию файлов на диске</li>
<li>Освоен навык работы со справочными материалами</li>


