- •Описание протокола ftp.
- •2. Шаги по первичному развёртыванию ftp-сервера на виртуальной ос.
- •3. Монтирование удалённой серверной ftp-директории как локальной файловой системы клиента.
- •4. Описание параметров конфигурационного файла vsftpd.Conf.
- •Allow_anon_ssl
- •Anon_mkdir_write_enable
- •Anon_other_write_enable
- •Chroot_local_user
- •Session_support
- •Setproctitle_enable
- •Ssl_enable
- •Secure_email_list_enable
- •Strict_ssl_write_shutdown
- •Syslog_enable
- •Tcp_wrappers
- •Text_userdb_names
- •Tilde_user_enable
- •Use_localtime
- •Use_sendfile
- •Userlist_deny
- •Userlist_enable
- •Cmds_allowed
- •Cmds_denied
- •Deny_file
- •Userlist_file
- •Vsftpd_log_file
- •Xferlog_file
- •5. Система инициализации и управления службами systemd.
- •6. Systemctl. Команда-диспетчер systemd.
- •7. Менеджер пакетов dnf.
- •8. Список литературы.
2. Шаги по первичному развёртыванию ftp-сервера на виртуальной ос.
Для начала необходимо запустить пользовательский программный гипервизор VirtualBox. После этого осуществляем запуск виртуальной машины, содержащей Linux-подобную операционную систему RedOS, входим в учётную запись и запускаем терминал с оболочкой shell.
(Опционально) Переключаемся на учётную запись суперпользователя (root) с помощью команды su. Иначе, для большинства введенных далее команд потребуется исполнение от имени администратора командой sudo.
С помощью менеджера пакетов и модулей dnf устанавливаем сверхбезопасного ftp-демона (vsftpd), осуществляющего управление протоколом FTP, и сами модули протокола FTP.
С помощью команды systemctl start vsftpd (команды-диспетчера системы инициализации и управления службами systemd) запускаем демона-службу vsftpd, с помощью команды systemctl enable vsftpd включаем ftpдемона в автозагрузку и создаём символьную ссылку на эту службу в каталоге /etc/systemd/system.
Создаём бэкап-файл конфигурации службы vsftpd с помощью команды cp /etc/vsftpd/vsftpd.conf vsftpd.conf.backup . Далее, с помощью команды vim /etc/vsftpd/vsftpd.conf открываем файл конфигурации демона vsftpd в текстовом редакторе vim, редактируем файл, разрешая анонимный доступ к файлам через FTP (anonymous_enable=YES). После этого перезапускаем демона vsftpd с помощью команды systemctl restart vsftpd и просматриваем статус службы vsftpd.service с помощью команды systemctl status vsftpd.
Создаем каталог командой mkdir –p /srv/share/ftp и делаем ее основной директорией для системного пользователя ftp командой usermod –d /srv/share/ftp ftp.
С помощью команды dnf install lftp устанавливаем ftp-клиент lftp, который позволяет осуществлять монтирование удалённой серверной ftp-директории как локальной файловой системы клиента.
Для того, чтобы проверить работу настроенного ftp-сервера, создадим в нашем каталоге тестовый файл с любым содержанием, например vim /srv/share/ftp/123.txt. Для того, чтобы файл гарантированно был в свободном доступе, дополнительно выдадим всем пользователям разрешения на работу с ним командой chmod 666 /srv/share/ftp/123.txt.
Подключимся к серверу, предварительно выяснив его ip адрес с помощью команды ip a. Команда подключения выглядит как lftp <адрес> (по стандарту, 10.0.2.15). Командой ls проверим, доступен ли файл.
Теперь пропишем правило для определенного пользователя, которое будет отправлять его в созданный нами каталог. Для этого снова откроем файл /etc/vsftpd/vsftpd.conf и добавим в него строчку user_config_dir=/etc/vsftpd_user_conf.
Создадим файл /etc/vsftpd_user_conf/<имя_пользователя> (в данном примере, lazyslav) и в нем пропишем параметр local_root=/srv/share/ftp/
Для того, чтобы изменения вступили в работу, перезапускаем демон vsftpd командой systemctl restart vsftpd.
Установим filezilla – ftp-клиент с графическим интерфейсом. Для этого выполним команду dnf install filezilla.
Откроем filezilla. В верхней строке пропишем ip адрес нашей машины и данные пользователя, для которого мы ранее создали правило. Нажав «Быстрое соединение» увидим два всплывающих окна: о сохранении паролей внутри filezilla и предупреждение о небезопасном соединении. Пропускаем оба и в правой вкладке с подзаголовком «Удаленный сайт» будет показана текущая наша директория и доступные нам файлы (в частности, созданный нами файл 123.txt, который мы теперь можем переместить в желаемую локальную директорию, как если бы удаленный ftp-сервер был подключенной файловой системой. После этого сверху в логах и снизу во вкладке «Успешные передачи» мы должны увидеть сообщение об успешной передаче файла.
Как итог, задача по первичному развёртыванию FTP-сервера и монтированию файловой системы удалённого сервера в качестве локальной файловой системы была выполнена успешно.
