Найти тему
Laboratory Luch

Администрирование VPS Linux (Debian) – FTP. PART 1/3 – Быстрая настройка SFTP

#FTP #SFTP #Администрирование #Linux #Debian #VPS

1. FTP

FTP (File Transfer Protocol) – протокол передачи файлов по сети. Является одним из базовых протоколов Ethernet. Появился в 1971.

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

С развитием и распространением интернета опасность несанкционированного доступа возросла во много раз. В мае 1999 авторы RFC 2577 свели уязвимости в следующий список проблем:

· Скрытые атаки (bounce attacks)

· Спуф-атаки (spoof attacks)

· Атаки методом грубой силы (brute force attacks)

· Перехват пакетов, сниффинг (packet capture, sniffing)

· Захват портов (port stealing)

Обычный FTP не обладает возможностью передачи данных в зашифрованном виде, вследствие чего имена пользователей, пароли, команды и другая информация могут при желании легко и просто быть перехвачены злоумышленниками. Обычное решение этой проблемы — использовать «безопасные», TLS-защищённые версии уязвимых протокола (FTPS) или же другой, более защищённый протокол, вроде SFTP/SCP, предоставляемого с большинством реализаций протокола Secure Shell

2. SFTP

Быстрый способ безопасного обмена файлами с сервером

SFTP (Secure File Transfer Protocol) – протокол прикладного уровня передачи файлов, работающий поверх безопасного канала.

Разработкой протокола занималась одна из групп IETF под названием Secsh. Рабочая документация к новому протоколу SFTP не стала официальным стандартом, однако начала активно применяться для разработки приложений. В дальнейшем было выпущено шесть версий протокола. Однако, постепенное наращивание в нём функциональности привело к тому, что 14 августа 2006 года было принято решение о прекращении работы над развитием протокола в связи с выполнением основной задачи проекта (разработка SSH) и отсутствием достаточного экспертного уровня для перехода к разработке полноценного протокола удалённой файловой системы.

SSH – это сетевой протокол, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов). Схож по функциональности с протоколами Telnet и rlogin, но, в отличие от них, шифрует весь трафик, включая и передаваемые пароли.

SSH позволяет безопасно передавать в незащищённой среде практически любой другой сетевой протокол.

Распространены две реализации SSH: частная коммерческая и бесплатная свободная. Свободная реализация называется OpenSSH

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

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

Использование с помощью PSFTP(PuTTY)

cmd.exe cd C:\Program Files\PuTTY

psftp open ip-хоста

Самый простой способ безопасно использовать SFTP (без установки FileZilla и сервера vsftpd)

1. Делаем батник run.bat

call ftp.bat set path=%path%;C:\Program Files\PuTTY

pause

2. Содержимое второго батника ftp.bat
psftp -l ftp_user -pwfile pwd.txt ip-host

3. В pwd.txt сохраняем пароль для пользователя FTP

4. Скачать файл с сервера

get ftp/test.txt

5. Загрузить файл на сервер

put C:\FTP\test.txt

6. Поменять директорию WIN для загрузки

lcd C:\FTP

Так же доступно использование напрямую через PuTTY

На своей станции под WIN запускаем CMD.EXE и задаем путь для PuTTY

set path=%path%;C:\Program Files\PuTTY

Для загрузки файла на сервер:

pscp d:\documents\example.txt username@host:/home/username/public_html

Для скачивания файла с сервера:

pscp username@host:/home/username/public_html/example.txt d:\documents