Много статей не имеет срока устаревания. Есть смысл смотреть и 2011, и даже 2008 год. Политика сайта: написать статью, а потом обновлять ее много лет.
Открыта карта ВТБ для материальной поддержки сайта: 4893470220568296.

Рекламодателям! Перестаньте спамить мне на почту с предложениями о размещении рекламы на этом сайте. Я никогда спамером/рекламщиком не был и не буду!
" title="Написать письмо">Написать письмо

Статистика

Пользователи : 1
Статьи : 1250
Просмотры материалов : 4605766
 
Защита файлов сайта при помощи .ftpaccess и SSH (24.03.2012). Печать E-mail
2012 - Март
24.03.2012 14:32
Save & Share

SSH представляет из себя среду без графического интерфейса с командной строкой системы Unix. Не люблю работать без графического интерфейса, но недавний взлом сайта вынудил меня и приобрести внешний IP с помесячной оплатой 130 рублей в месяц, и изучить SSH, и даже сделать кое-что полезное.

Задача: защитить файлы на FTP самостоятельно, отказавшись платить мастерхосту 56 рублей за эту услугу (год назад было бесплатно).
Метод: использование SSH для создания файла .ftpaccess в корне виртуальной площадки.
Заключение: на FTP можно заходить теперь только с одного IP-адреса.

Расписываю методику:
- заходите в панель управления вашего хостера и включаете услугу доступа по SSH;
- скачиваете и запускаете программу Putty;
- вводите сервер для подключения к SSH, порт оставляете без изменений (если ваш провайдер не считает иначе);
- авторизуетесь посредством ввода отображаемого на черном экране логина и неотображаемого пароля;
- команда "touch .ftpaccess" создаст в корне виртуальной площадки файл .ftpaccess;
- команда "cat > .ftpaccess" откроет созданный файл для записи данных;
- вводите построчно:
<Limit ALL>
Allow from (нужный IP)
Deny from all
</Limit>
;
- закрываете окно Putty;
- заходите на FTP, проверяете корректность содержимого файла .ftpaccess и стираете в корне виртуальной площадки файлы ".bash_history" и ".msgsrc", если имеются;
- выключаете в панели управления вашего хостера услугу доступа по SSH.

Список основных команд при работе с SSH:
ls — список файлов и каталогов;
ls -al — форматированный список со скрытыми каталогами и файлами;
cd dir — сменить директорию на dir;
cd — сменить на домашний каталог;
pwd — показать текущий каталог;
mkdir dir — создать каталог dir;
rm file — удалить file;
rm -r dir — удалить каталог dir;
rm -f file — удалить форсированно file;
rm -rf dir — удалить форсированно каталог dir *;
cp file1 file2 — скопировать file1 в file2;
cp -r dir1 dir2 — скопировать dir1 в dir2; создаст каталог dir2, если он не существует;
mv file1 file2 — переименовать или переместить file1 в file2. если file2 существующий каталог — переместить file1 в каталог file2;
ln -s file link — создать символическую ссылку link к файлу file;
touch file — создать file;
cat > file — направить стандартный ввод в file;
more file — вывести содержимое file;
head file — вывести первые 10 строк file;
tail file — вывести последние 10 строк file;
tail -f file — вывести содержимое file по мере роста, начинает с последних 10 строк;
view file — вывести файл на экран.

(добавлено 28.03.2012): некоторые неудобства с WordPress получились при использовании защиты данного типа. Так как у сервера IP отличается от нашего - при попытке обновить плагин столкнулся с разного рода ошибками (CMS не могла определить директорию wp-content, писать файлы в папки с доступом 777 и т.д.). При удалении файла .ftpaccess ошибки самоустранились. Предполагаю, что не хватает строчки в .ftpaccess вроде "Allow from IP_адрес_сервера".
Через 10 минут после подачи заявки получил ответ от хостера. Оказывается, в .ftpaccess можно писать не только IP, но и DNS-имена. Т.к. IP сервера может быть непостоянен - для устранения проблем удобнее и правильнее вводить "Allow DNS_имя_сервера_FTP" и "Allow DNS_имя_сервера_MySQL". Также в ответе хостера было упомянуто добавление "Allow 127.0.0.1". Смысла не понял; но я думаю, стоит сделать.

(добавлено 24.02.2014): вместо внешнего IP можно спросить у провайдера диапазон IP серверов, которые обеспечивают лично вам доступ в интернет. В итоге в файл .ftpaccess будет записан диапазон IP вида 192.168.0.0/28. 

Обновлено ( 05.09.2019 20:16 )
 
 

Последние новости


©2008-2019. All Rights Reserved. Разработчик - " title="Сергей Белов">Сергей Белов. Материалы сайта предоставляются по принципу "как есть". Автор не несет никакой ответственности и не гарантирует отсутствие неправильных сведений и ошибок. Вся ответственность за использование материалов лежит полностью на читателях. Размещение материалов данного сайта на иных сайтах запрещено без указания активной ссылки на данный сайт-первоисточник (ГК РФ: ст.1259 п.1 + ст.1274 п.1-3).