Хостинг ssh

1. Что такое ssh

Протокол SSH — «протокол безопасной оболочки». Весь трафик, передаваемый по этому протоколу шифруется. Таким образом значительно повышается сохранность вашего пароля и защита сайта в целом от взлома. С помощью этого протокола можно осуществлять работу с удаленным сервером в командной строке — отлаживать, запускать программы; для этого у вас должен быть опыт работы с командной строкой UNIX. Кроме того, этот протокол позволяет осуществлять передачу файлов. Обратите внимание — для доступа к нашим серверам следует использовать только протокол SSH версии 2.

2. Программы для работы с хостингом через ssh

Наиболее популярными программами для соединения с сервером, используя протокол ssh, являются программа Putty, которая служит для работы с сервером посредством терминала, и программа WinSCP2, которая служит для передачи данных на сайт используя ssh протокол, ее можно использовать вместо ftp-менеджера.

3. Настройка и использование программы Putty

Для того, чтобы осуществить соединения с сервером используя Putty, вам надо сначала скачать с официального сайта саму программу. После того, как вы ее запустите, в поле Host Name(or IP address) вам надо указать либо имя вашего домена или технический хост который указан в регистрационном письме (вида hostXXXXXX.servXX.hostland.ru) и выбрать Protocol — SSH.

После этого Вам надо нажать на кнопку «Open» и программа осуществит соединение с сервером и появится другое окно. В данном окне сначала появится строчка login as: вам надо в нем ввести ваш логин и нажать Enter. Потом у вас появится строчка password: и в ней надо ввести пароль. После успешного соединения, перед вами должен появится такой текст:

Copyright © 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
The Regents of the University of California. All rights reserved.
hostXXXXXX.servXX.hostland.ru
-bash.no_hist-2.05b$

Для упрощения повторного соединения с хостингом, вы можете сохранить сессию в Putty, для этого вам надо сначала заполнить поле Host Name (or IP address), выбрать протокол — ssh, в поле Saved Sessions ввести произвольное название для соединения и нажать сохранить (Save). Чтобы каждый раз не вводить логин, вы можете в поле Host Name перед вашим доменом дописать логин и поставить символ @. Пример: login@your_domain_name.ru. Для ознакомления с работой в shell’e перейдите к 5-ому пункту данной инструкции в которой описаны часто используемые команды.

Если у вас после ввода логина и пароля появляется надпись: «Shell access is not enabled on your account! If you need shell access please contact support.» , то вам надо связаться со службой поддержки, в теле письма обязательно укажите имя вашего домена и возникшую ошибку.

Скачать WinSCP3 вы можете с их сайта, по адресу http://winscp.net/. После установки и запуска приложения перед вами появляется окно с настройками и аккаунтами. В этом окне вам надо создать новый аккаунт нажатием на кнопку New (Новое).

В окне создания соединения заполните поля Host name (Сервер) — имя вашего домена, User name (Имя пользователя) — логин и Password (Пароль) — пароль. Протокол оставьте SFTP (При ошибке — SCP) и нажмите кнопку Save (Сохранить). После этого у вас при загрузке WinSCP будет сохраненный аккаунт, для упрощения соединения.

После того как вы закончили настройку нажмите кнопку Login (Войти) и перед вами появится интуитивно понятный файловый менеджер.

Если у вас после ввода логина и пароля появляется примерно такая надпись:

«Слишком большой (1399350636 байт) SFTP пакет. Наибольший размер 102400 байт

Обычно, эта ошибка вызывается сообщением от скрипта автозагрузки (например, .profile). Сообщение может начинаться с „Shel“.» , то вам надо связаться со службой поддержки, в теле письма обязательно укажите имя вашего домена и возникшую ошибку.

Более подробную инструцкию по установке и использованию WinSCP3 вы можете найти на сайте разработчика по адресу: http://winscp.net

4. Часто задаваемые shell-команды

mc

Данная команда служит для запуска программы Midnight Commander. Она является файловым менеджером, аналогом Norton Commander или FAR.


man command

Вызывает руководство пользователя по введенной вами команде, например: man ls.


cd directory

Команда служит для навигации по каталогам, пример: cd ~/public_html произведет заход в директорию public_html вашего домашнего каталога.


pwd

Показывает абсолютный путь до каталога, в котором вы находитесь.


rm <filename>

Удалить файл или директорию (для удаления директорий надо использовать rm -rf <directory> ).


 cp ~/from/<filename> ~/to/<filename>

Скопировать файл или директорию.


cp -rf ~/from/directory/ ~/to/directory

Скопировать каталог из одной директории в другую.


 mv ~/from/<filename> ~/to/<filename>

Переместить файл или директорию (также можно использовать для переименовывания файлов).


mv -rf ~/from/directory/ ~/to/directory

Чтобы переместить каталог используйте с ключами -rf


ls -all

Показывает все файлы в текущем каталоге.


 -rw-r -r- 1 username group - 851 Jul 8 17:40 .profile

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

-rw-r-r- это права, которые установлены на текущий файл.

username— это имя владельца текущего файла.

group— это имя группы текущего файла.

851— размер файла в байтах.

Jul 8 17:40— время последнего редактирования файла.

.profile— имя файла.


chmod 0755 filename

Изменить права на filename. На все файлы страниц и php-скрипты рекомендуется ставить 644, а на perl скрипты — 755.


chown -R owner:groupname filename

Изменить владельца и группу для filename (можно использовать для директорий). owner всегда надо использовать такой же, как и ваш логин, groupname может быть либо nobody, virthost(если вы находитесь на сервере без панели управления) или такая же, как ваш логин (на файлы со скриптами всегда надо ставить группу, такую же, как и логин).


tar zxf archive_name.tgz

Разархивировать файл в текущий каталог.


tar zcf archive_name.tgz filename

Создать архив, вместо filename можно также указывать имя директории, тогда она будет тоже заархивирована. Архив создается в текущем каталоге.


mysqldump -Q -u username -p -h localhost database_name > filename

Сделать dump базы данных database_name в файл filename, username — имя пользователя к базе данных, dump которой вы хотите сделать.


mysql -u username -p -h localhost database_name < filename

Распаковать dump из файла filename в базу данных database_name, username — имя пользователя к базе данных, в которую вы хотите распаковать dump.