Обмен данными через протоколы FTP, FTPS, SFTP
Для передачи файлов наиболее активно используются протоколы FTP(S) и SFTP. Наличие буквы «S» в названии протокола свидетельствует о безопасности передачи.
FTP — File Transfer Protocol
FTP — протокол передачи файлов, предназначенный для передачи файлов по TCP‑сетям (например, Интернет). FTP наиболее часто используется для загрузки сетевых страниц и других документов с устройства разработки на открытые серверы хостинга. Протокол построен на архитектуре "клиент-сервер" и использует разные сетевые соединения для передачи команд и данных между клиентом и сервером. Пользователи FTP могут пройти аутентификацию, передавая логин и пароль открытым текстом, или же, если это разрешено на сервере, они могут подключиться анонимно.
Явный FTPS — расширение стандарта FTP, позволяющее клиентам требовать того, чтобы FTP‑сессия была зашифрована. Это реализуется отправкой команды "AUTH TLS". Сервер обладает возможностью позволить или отклонить соединения, которые не запрашивают TLS. Неявный FTPS — устаревший стандарт для FTP, требующий использования SSL- или TLS‑соединения. Этот стандарт должен был использовать отличные от обычного FTP порты.
SFTP — SSH File Transfer Protocol
SFTP — протокол передачи файлов прикладного уровня, предназначенный для копирования и выполнения других операций с файлами поверх надёжного и безопасного соединения. SSH используется для безопасной передачи, скрывающей (шифрующей) логин и пароль, а также шифрующей содержимое.
SFTP не связан с FTP, за исключением того, что он тоже передаёт файлы и имеет аналогичный набор команд для пользователей. SFTP, или безопасный FTP, — это программа, использующая SSH (Secure Shell) для передачи файлов. В отличие от стандартного FTP он шифрует и команды, и данные, предохраняя пароли и конфиденциальную информацию от открытой передачи через сеть. По функциональности SFTP похож на FTP, но так как он использует другой протокол, клиенты стандартного FTP не могут связаться с SFTP‑сервером и наоборот.
Тематические статьи
HTTPS — защищенный протокол передачи гипертекста
HTTPS — расширение протокола HTTP, поддерживающее шифрование. Передаваемые по протоколу HTTPS данные зашифрованы, что обеспечивает защиту от прослушивания. HTTPS широко используется в мире и поддерживается всеми популярными браузерами.
SSH — сетевой протокол для управления серверами
SSH или Secure Shell — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP‑соединений, например, для передачи файлов или для работы с базой данных.
Весь трафик передаваемый по SSH защищён от подделки и перехвата при помощи алгоритмов шифрования. Также защита SSH весьма гибко конфигурируется, что позволяет избежать многих векторов атак. Всё это делает удалённое управление операционной системой через SSH безопасным.
Выделенные сервера, кластеры и облачные решения
Серьёзные проекты требуют серьёзных хостинговых решений. Для средних проектов может хватить одного выделенного сервера, а для больших нагруженных сайтов нужны кластерные или облачные решения.
Рекомендации по выбору хостинга
От правильности выбора хостинга зависит дальнейшая работоспособность сайта и его доступность, поэтому к этому вопросу надо отнестись достаточно серьёзно.
Серверное программное обеспечение
На серверах устанавливается программное обеспечение, которое требуется для работы сайта и других служб домена, для обслуживания и мониторинга, а также для защиты от взлома и устойчивости к нагрузкам.
Безопасность сайтов и веб‑приложений
Под безопасностью веб‑приложений понимается обеспечение сохранности данных, их недоступность для посторонних лиц, а также способность сервиса сохранять работоспособность при кибератаках.
Безопасность веб‑приложений зависит от качества программного кода (это ответственность веб‑разработчиков), от квалификации системного администратора и регулярности обсуживания серверов, а также от компетенций всех пользователей, имеющих доступ к чувствительной информации.
Отказоустойчивость сайтов и веб‑приложений
Причин для сбоев в работе веб‑приложений немало — это и выход из строя серверного оборудования, и сбои программного обеспечения, и аварии на уровне дата‑центров.
При этом, действительно серьёзные проекты должны работать без перебоев даже в случае отказа отдельных подсистем. Практически всех рисков можно избежать или минимизировать их последствия при помощи грамотного проектирования как серверной инфраструктуры, так и архитектуры приложения.
Сколько стоит поддержка сайта?
Стоимость поддержки сайта зависит от объёма необходимых работ, их вида и сложности.
Ускоряем работу сайта, используя быстрый и надёжный веб‑сервер nginx
nginx — это простой, быстрый и надёжный сервер. Применение nginx очень эффективно для отдачи статического контента и в качестве прокси‑сервера перед динамическими сайтами.