day & night

SSH-доступ. Учимся использовать шелл на серваке!, полезные фишки по shell для админов хост
Дата обновления: , перейти к новому сообщению
#1
PRYANIK



Made In Tula
[SoftoRooMTeaM] Group Icon

Группа: Администраторы
Сообщений: 31.372
Регистрация: 22.02.2004
Пользователь №: 7


Респектов: 6432
-----XXXXX




Твой софтовый форум

Здесь не будет ничего о взломе или «Бруте» через шелл, я просто расскажу что к чему и почему smile.gif.


Шаг 1
Закачивать файлы можно по протоколу FTP, соединяясь с сервером, где расположен ваш сайт, с помощью FTP-клиента.
Но бывают ситуации, когда нужно залить файл на хостинг с другова сервера, в обход убогово GPRS коннекта или "DialUp".
Для всех этих и многих других действий пользователей хостинг-провайдеры предоставляют доступ по защищенному протоколу telnet (а не по ftp), так называемый shell-доступ (ssh-доступ).
Работа с shell - это работа с командной строкой Unix, так как это специфичная операционная система, то в ней существуют законы, команды и т.п. непохожие на Windows.

Что нужно для работы с ssh? А всё просто, надо скачать утилитку, скажем Putty

Шаг 2
Запускаете файл putty.exe
Откроется окно программы.
Твой софтовый форум

В поле "Host name" прописываете доменное имя вашего сайта. К примеру, softoroom.org

Выбираете протокол доступа - Protocol SSH.

Нажимаете "Open". Все, сессия началась. Программа запросит ввести вас логин, вводите тот же, что у вас для доступа по FTP. Затем вводите пароль (Если Вы ошибётесь, то придётся набирать пароль заново, стирать символ здесь нельзя).

Готово! Теперь если Вы имеете доступ к SSH, то перед глазами появится инфа о сервере, и командная строка. Если доступа нет, то надпись: "Обратитесь в суппорт", в таком случаи сделайте это smile.gif...

Шаг 3
Рассмотрим несколько основных команд, которые могут понадобиться при работе с сайтом.

Для работы с файлами:
[/I]pwd[/I] - получить имя текущей папки, где вы находитесь.
cd - изменить текущую директорию

Например, Вы находитесь в директории /home, а Вам нужно попасть в /usr/vip Для этого Вам нужно просто набрать команду:
Code
cd /usr/vip


ls - вывести информацию о файлах или папках
При этом список может быть довольно большой.
Поэтому существуют ключи для этой команды, вот некоторые из них:
-a - вывести все файлы (даже те, имена которых начинаются с точки);
-x - вывод в 4 колонки;
-t - имена файлов сортируются не по алфавиту, а по времени последнего изменения (сначала идут самые свежие, только что измененные файлы);
-R - рекурсивно пройти по всем подкаталогам
-CF - оглавление каталога в несколько столбиков
-al - оглавление в полном формате
Эти ключи нужно подставлять сразу после команды ls.

cat -- слить или вывести файлы-аргументы на стандартный вывод
cp -- копировать файлы
mv -- переместить (переименовать) файлы
ln -- создать ссылку на файл

rm -- удалить файлы
Формат команды:
rm [-fri] файл ...
-i - просить подтверждения на каждое удаление
-r - рекурсивно удалить вместе с подкаталогами
-f - не просить подтверждения, а сразу удалить

rmdir - удалить директорию
mkdir - создать директорию
echo - вывести аргументы командной строки на стандартный вывод

Если вы считаете, что это полная муть и Вы на уровне ДНК не переносите командую строку, то:
Набираем:
mc
И о чудо, видим подобие FAR-а, т.е можно копировать, удалять, открывать архивы, создавать и т.п, в пару щелчков мыши....


Основные команды по работе с директориями и файлами, мы с Вами рассмотрели, теперь поюзаем шелл на получение файлов с другова хоста.
Допустим Нам надо скопировать файл proga.zip с сервера http://softoroom.CoM/filezzz/proga.zip на http://softoroom.NeT/vip/proga.zip

1) Открываем директорию в которую хотели бы поместить proga.zip, пример:
cd /usr/vip
2) Теперь набираем:
wget "http://softoroom.CoM/filezzz/proga.zip"
Крутится инфа, файл залит в директорию vip и находится теперь по такому адресу:
http://softoroom.NeT/vip/proga.zip


Шаг 4
Полезные команды:
who - определить, кто из пользователей тоже в шелле
uptime - кол-во времени с последний загрузки
top - Список процессов на серваке (аля Ctrl+Alt+Del)
free - инфа по памяти
Так, я наверное перечислять устану все фишки smile.gif.... Открываем Гугль и проводим поиск Юникс ресурсов, на предмет "команд"...


Пара составленных мной wget-команд, чтобы обходить антиличи на сервак и в обменниках...

wget + refer - обходим антилич через "рефер"
Цитата | Quote


wget + refer + ip - обходим антилич через "рефер" и "ip"

В начале заходим браузером через прокси (пример 217.67.22.142:3128) в обменник, получаем ссылку и привязку к проксе, дальше идём в шелл, и набираем:
Цитата | Quote
wget -e \"http_proxy=217.67.22.142:3128\" --header=\"Referer: http://softoroom.org\" \"http://vip.softoroom....ygen.zip\"



P.S Что-то не понятно? Спрашивайте, расскажу более толково smile.gif!


--------------------
Не работает ссылка? Пишите в теме, обновим :)! Link not working? Let us know in the comments, we'll fix it!


Трудно найти слова, когда действительно есть что сказать. Э.М. Ремарк
User is online!
Go topGo end

Ответов(1 - 9)
3.02.2005 - 22:50
#2
PRYANIK



Made In Tula
[SoftoRooMTeaM] Group Icon

Группа: Администраторы
Сообщений: 31.372
Регистрация: 22.02.2004
Пользователь №: 7


Респектов: 6432
-----XXXXX




Что такое cron. И как работать с ним через SSH.


cron - это механизм, который автоматически запускает файлы на сервере в определенное время.

Для каждого пользователя создается конфигурационный файл, куда записывается расписание запуска программ. Данный конфигурационный файл каждую минуту просматривается cron'ом и запускаются те программы, время запуска которых подошло. Редактируется конфигурационный файл с помощью программы crontab.

Вот основные команды:
crontab -e : войти в режим редактирования
crontab -l : вывести все задания крона
crontab -r : удалить все задания

Команда crontab file заменят текущие настройки cron на те, которые содержатся в файле 'file'. Для этого вам нужно закачать сначала на сервер этот самый файл (например, через ftp), а затем в команде указать полный путь к нему. Пути для вашего сайта можно узнать у своего хостинг-провайдера, он их обычно указывает в инструкциях. В результате, если вы закачали файл raspisanie.txt в папку /pupkin/public_html/mypapka/raspisanie.txt, то команда будет выглядеть так:

crontab /pupkin/public_html/mypapka/raspisanie.txt,

Когда вы задаете команду "вывести все задания крона", вы увидите нечто вида:
Code
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=pupkin
HOME=/home/pupkin
# run-parts
01 * * * * command
02 4 * * * command


Первые четыре строки просто обозначают настройку технических параметров, и на них не стоит обращать внимание (как впрочем и менять тоже).
А вот на следующие строки внимание уже стоит обратить... Формат этих строк выглядит следующим образом:
Цитата | Quote
Нужная минута часа для запуска (0-59)
Нужный час дня для запуска (0-23)
Нужный день месяца (0-30)
Нужный месяц года (1-12)
Нужный день недели (0-6)
Выполнимая команда.


Значок * обозначает слово каждый (день, год, месяц, час).

Например, строка 01 * * * * command будет обозначать запуск программы каждый час в одну минуту.

А строка 02 4 * * * command означает запуск программы каждый день в 4 часа утра в две минуты.

Вы можете как создать отдельный файл со строками запуска программ, просто в столбик написав
Цитата | Quote
01 * * * * command
02 4 * * * command


где command - ваша команда (запуска определенного скрипта или еще что-то), а затем просто командой "crontab file" перенести все задания из файла в крон, либо вручную все ввести в крон. Первое, на мой взгляд, удобнее.

Вот и все премудрости крона smile.gif


--------------------
Не работает ссылка? Пишите в теме, обновим :)! Link not working? Let us know in the comments, we'll fix it!


Трудно найти слова, когда действительно есть что сказать. Э.М. Ремарк
User is online!
Go topGo end
25.05.2005 - 21:14
#3
PRYANIK



Made In Tula
[SoftoRooMTeaM] Group Icon

Группа: Администраторы
Сообщений: 31.372
Регистрация: 22.02.2004
Пользователь №: 7


Респектов: 6432
-----XXXXX




Перенос баз данных MySQL

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

1. Создание копии базы на сервере №1.

QUOTE
mysqldump -p -u -h mysql.<доменное_имя_сайта> --add-drop-table >


Тут - имя файла, где будет храниться база данных.

В процессе выполнения команды mysqldump спросит пароль пользователя MySql - нужно будет ввести его в ответ на соответствующее приглашение и нажать "Enter" - при этом набираемый пароль на терминале не отображается.

2. Содание базы данных из файла на сервере №2.

Закачиваете на сервер №2 по ftp файл

Затем, соединившись по ssh

QUOTE
mysqldump -p -u -D -h mysql.<доменное_имя_сайта> <


Здесь, обратите внимание, dbuser, dbname и пароль могут быть другими.

Все, база перенесена!


--------------------
Не работает ссылка? Пишите в теме, обновим :)! Link not working? Let us know in the comments, we'll fix it!


Трудно найти слова, когда действительно есть что сказать. Э.М. Ремарк
User is online!
Go topGo end
4.07.2005 - 1:30
#4
cmerch



Unregistered














вот это нужная темка- пригодиться не видел нигде больше про шелл
Go topGo end
6.07.2005 - 14:37
#5
Guria



Unregistered














А возможно ли запустить ssh на виндоус компьютере? Всмысле чтобы к нему подключаться. Суть проблемы см.
_https://softoroom.org/...pid=32656&st=0
Go topGo end
6.07.2005 - 19:07
#6
PRYANIK



Made In Tula
[SoftoRooMTeaM] Group Icon

Группа: Администраторы
Сообщений: 31.372
Регистрация: 22.02.2004
Пользователь №: 7


Респектов: 6432
-----XXXXX




QUOTE(Guria @ 6.07.2005 - 15:37)
А возможно ли запустить ssh на виндоус компьютере?
*

нет, только Юникс-системы


--------------------
Не работает ссылка? Пишите в теме, обновим :)! Link not working? Let us know in the comments, we'll fix it!


Трудно найти слова, когда действительно есть что сказать. Э.М. Ремарк
User is online!
Go topGo end
icon4 13.07.2005 - 9:46
#7
Ra1N



Специалист
****

Группа: Пользователи
Сообщений: 455
Регистрация: 13.07.2005
Пользователь №: 28.722


Респектов: 8
-----X----


Предупреждений: 2


QUOTE(PRYANIK @ 7.07.2005 - 3:07)
нет, только Юникс-системы

Вынужден тебя огорчить, уже написаны интерпретаторы для ssh под винду!
User is offline
Go topGo end
25.10.2005 - 13:47
#8
Брит



Unregistered














Рэспееект smile.gif просто обалденный FAQ)
Go topGo end
25.10.2005 - 14:09
#9
PRYANIK



Made In Tula
[SoftoRooMTeaM] Group Icon

Группа: Администраторы
Сообщений: 31.372
Регистрация: 22.02.2004
Пользователь №: 7


Респектов: 6432
-----XXXXX




Пара составленных мной wget-команд, чтобы обходить антиличи на сервак и в обменниках...

wget + refer - обходим антилич через "рефер"
QUOTE


wget + refer + ip - обходим антилич через "рефер" и "ip"

В начале заходим браузером через прокси (пример 217.67.22.142:3128) в обменник, получаем ссылку и привязку к проксе, дальше идём в шелл, и набираем:
QUOTE
wget -e "http_proxy=217.67.22.142:3128" --header="Referer:
http://softoroom.org" "http://vip.softoroom....ygen.zip"




--------------------
Не работает ссылка? Пишите в теме, обновим :)! Link not working? Let us know in the comments, we'll fix it!


Трудно найти слова, когда действительно есть что сказать. Э.М. Ремарк
User is online!
Go topGo end
25.10.2005 - 14:15
#10
Ra1N



Специалист
****

Группа: Пользователи
Сообщений: 455
Регистрация: 13.07.2005
Пользователь №: 28.722


Респектов: 8
-----X----


Предупреждений: 2


what is it "Антилич" ??? blink.gif blink.gif
User is offline
Go topGo end

Topic Options
Сейчас: 29.04.2024 - 16:18
Мобильная версия | Lite версия