# Занятие 3. Сервисы Linux
# Практическая работа №3.1
- <span STYLE="font-size:16.0pt">**1) Написать четыре скрипта (скрипт должен быть не менее 3 строчек)** </span>




- <span STYLE="font-size:16.0pt">**2) Скрипт должен выполнятся:**
- **один раз в 15 минут постоянно**
- **один раз в сутки**
- **15:00 в среду**
- **20:00 в воскресенье** </span>

# Практическая работа №3.2
- <span STYLE="font-size:16.0pt">**Установить и настроить SFTP** </span>



- <span STYLE="font-size:16.0pt">**Научиться работать с SFTP** </span>




- <span STYLE="font-size:16.0pt">**Научиться работать filezilla** </span>

- <span STYLE="font-size:16.0pt">**wireshark - поясните вывод** </span>
Было отправлено и принято 106 байт на интерфейс eth0, id0 от 192.168.1.80:22 к 192.168.1.76:1051 по протоколу TCP (SSH)

# Практическая работа №3.3
<span STYLE="font-size:18.0pt">**1. Apache** </span>
**Apache** - интернет-сервер. Интернет-сервера используются для выдачи интернет-страниц по запросу клиентских компьютеров. Как и в случае с остальными пакетами, Apache устанавливается командой <span style="color:red">`sudo apt-get install apache2`</span>.
Получить информацию о сервисе или службе можно командами:
<span style="color:red">`sudo service apache2 status`</span>
<span style="color:red">`systemctl status apache2`</span>


Если Apache установлен и работает, то то можно открыть браузер и ввести в адресную строку`127.0.0.1`

Также <span style="color:red">`service`</span> и <span style="color:red">`systemctl`</span> позволяют запускать и останавливать службы:
<span style="color:red">`sudo service apache2 stop`</span>
<span style="color:red">`sudo service apache2 start`</span>
<span style="color:red">`sudo systemctl apache2 stop`</span>
<span style="color:red">`sudo systemctl apache2 start`</span>

Добавление и удаление автозагрузки:
<span style="color:red">`sudo systemctl enable apache2`</span>
<span style="color:red">`sudo systemctl disable apache2`</span>
Аналогично можно сделать с любой другой службой.
<span STYLE="font-size:18.0pt">**2. Telnet** </span>
**TELNET** (сокр. от англ. teletype network) — сетевой протокол для реализации текстового терминального интерфейса по сети. Устанавливаем telnet <span style="color:red">`sudo apt-get install telnet`</span>.
С ее помощью можно тестировать веб-ресурсы: <span style="color:red">`telnet opennet.ru 80`</span>

Позволяет проверять наличие ssh-сервера <span style="color:red">`telnet -d ip-адрес 22`</span>.
Создать подключение с помощью telnet <span style="color:red">`telnet -d ip-адрес 22`</span>.
<span STYLE="font-size:18.0pt">**3. FTP** </span>
**FTP** (File Transfer Protocol) — протокол передачи файлов. В стеке TCP/IP протокол находится на прикладном уровне.
Протокол FTP, также как и HTTP для адресации файлов использует url. Например, `ftp://ftp-server.ru/pub/documents/latex/example1.tex` состоит из 3-х частей:
- **первая часть** `ftp` — идентификатор протокола.
- **вторая часть** `ftp-server.ru` — имя сервера, здесь может быть DNS-имя или IP-адрес.
- **третья часть** `pub/documents/latex/example1.tex` — путь к файлу, файловой системе и само имя файла.
Установка: <span style="color:red">`sudo apt install vsftpd`</span>.
Файл конфигурации: <span style="color:red">`sudo nano /etc/vsftpd.conf`</span>. Главные настройки:
- **listen=(YES/NO)** Сервер сам заботится о прослушивании и определении входящих соединений.
- **listen_ipv6=(YES/NO)** аналогично обычному listen, но с ipv6.
- **anonymous_enable=(YES/NO)** Если разрешено, пользователи с именами ftp и anonymous распознаются как анонимные пользователи.
- **local_enable=(YES/NO)** Если включено, то для авторизации могут использоваться обычные нормальные учётные записи пользователей из «/etc/passwd»
- **dirmessage_enable=(YES/NO)** Если включено, то пользователям FTP-сервера можно показывать сообщения, когда они переходят в каталог. По-умолчанию каталог сканируется на наличие файла «.message», но вы можете указать другой файл, изменив расположение в значении параметра «message_file».
- **xferlog_enable=(YES/NO)** Если параметр установлен в «YES», то лог-файл будет содержать детальную информацию о загрузках на vsftpd и закачках с vsftpd. По-умолчанию, этот файл находится в «/var/log/vsftpd.log», но путь к файлу может быть изменён установкой значения параметра «vsftpd_log_file».
- **connect_from_port_20=(YES/NO)** Включение этого параметра указывает исходящим с сервера соединениям использовать 20 порт (ftp-data). По соображением безопасности, некоторые клиенты могут настаивать на таком случае
- **rsa_cert_file=(/usr/share/ssl/certs/vsftpd.pem)** путь в файловой системе до сертификата RSA для использования в шифрованных SSL-соединениях.
Вся инфа о файле: https://jakondo.ru/fajl-konfiguratsii-vsftpd-conf/
<span STYLE="font-size:18.0pt">**4. SMB** </span>
Samba — это программа, которая позволяет компьютерам UNIX/Linux имитировать машины Windows.
C помощью Samba можно:
- Давать доступ к дискам Linux Windows-машинам.
- Получать доступ к дискам Windows для машин под Linux.
- Давать доступ к принтерам Linux для Windows-машин.
- Получать доступ к принтерам Windows из Linux-систем.
Как обычно, сначала устанавливаем: <span style="color:red">`sudo apt-get install samba`</span>
И переходим в конец конфигурационного файла: <span style="color:red">`sudo nano /etc/samba/smb.conf`</span>

- **[shared]** — имя общей папки, которое увидят пользователи, подключившись к серверу.
- **comment** комментарий для удобства.
- **path** путь на сервере, где будут храниться данные.
- **public** для общего доступа. Установите в yes, если хотите, чтобы все могли работать с ресурсом.
- **writable** разрешает запись на сетевой ресурс.
- **read only** только для чтения. Установите no, если у пользователей должна быть возможность создавать папки и файлы.
- **guest ok** разрешает доступ к папке гостевой учетной записи.
- **create mask, directory mask, force create mode, force directory mode** при создании новой папки или файла назначаются полные права.
1. **user** - имя общей папки
2. **browseable** - чтобы была видна
3. **path** - директория
4. **quest ok** - важная опция, можно использовать любого пользователя
5. **read only** - можно добавлять и удалять анонимным пользователям
Вся инфа о файле: https://smb-conf.ru/aio-write-behind-s.html
По умолчанию **SMB** выключен в **Windows 10**. Чтобы его включить, нажмите <span style="color:red">`win+R`</span>, введите `OptionalFeatures` и включите "Поддержка общего доступа к файлам SMB 1.0/CIFS". Теперь надо перезагрузить ПК и можно подключаться к smb через проводник, введя <span style="color:red">`\\a.b.c.d\sharename`</span> в путь файла
