Собрал для начинающих разработчиков несколько шпаргалок по основным командам SSH, а также рассказал немного про FTP: о его недостатках, про опасность, которую он в себе таит, и почему от него лучше отказаться.
Многие веб-разработчики в какой-то момент осознают, что протокол FTP очень ограничен по своим возможностям. Например, по FTP невозможно работать с архивами, копировать файлы с одного сервера на другой без их скачивания, работать с БД и т.д.
Второй не менее важный момент — безопасность.
FTP — устаревший и небезопасный протокол с многочисленными уязвимостями, которому в профессиональной веб-разработке просто не может места быть.Во-первых, трафик по FTP не шифруется, он передается в открытом виде. То есть его можно перехватить и без особого труда прочесть любым самым, даже самым примитивным сниффером. Кроме этого, FTP подвержен скрытым атакам, спуфингу, брутфорсу, захвату портов. Это ответ на вопрос, почему на серверах с серьезными веб-проектами очень редко можно встретить FTP.
Вообще, тема безопасности FTP заслуживает отдельного поста. Возможно я вернусь к ней чуть позже.
Альтернатива FTP — протокол SSH
SSH (англ. Secure Shell — «безопасная оболочка») — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов).
В 2006 году рабочей группой инженерного совета Интернета (IETF) протокол SSH был утвержден в качестве Интернет‐стандарта.
Поддержка протокола SSH имеется во всех Unix-подобных ОС (GNU/Linux): Debian, Ubuntu Server, CentOS, FreeBSD и т.д.
Ощутить всю мощь SSH можно только через командную строку терминала. Именно в этом и заключается вся сложность перехода с FTP на SSH. Терминал отпугивает многих новичков и кодеров-любителей. На самом деле ничего страшного там нет. И если вы хотите серьезно заниматься разработкой, придется вникнуть, разобраться и применять на практике. Уверен, потом будете вспоминать FTP как страшный сон.
В отличие от системного администратора, разработчику совсем не обязательно знать все команды управления сервером. Вполне достаточно уметь работать с файлами, архивами, БД; понимать файловую систему: уметь управлять пользователями, группами, правами.
Если вы только еще планируете изучать терминал, я поделюсь с вами несколькими шпаргалками с основными командами SSH. Будет полезно их распечатать, держать первое время перед глазами и больше практиковаться.
- Unix, Linux, and Max OS X Commands (DevDaily) — 15 кб
- Linux Command Cheat Sheet (Alvin Khoo) — 964 кб
- Unix Cheat Sheet (UtahState University) — 102 кб
- Unix/Linux Command Reference (FOSSwire) — 69 кб
- Linux Commands Cheat Sheet (Red Hat Developers) — 2 Мб
Переводить на русский не стал. Я думаю, в оригинальном виде разобраться будет проще и быстрее.
Делаю сайты на Вордпресс с 2008 года, в том числе уникальные инструменты для решения сложных бизнес‑задач.
Подробнее