Свой FTP сервер — легко. [vsftpd]

Для чего нужен свой FTP сервер? На своём FTP сервере можно хранить информацию, к которой можно будет получать доступ из любой точки мира. Или хранить резервные копии своих проектов. Согласитесь, держать свой ресурс на хостинге и надеяться на то, что ничего не случится — довольно глупо. Например, если произойдет взрыв в ЦОДе, вряд ли кто-то сможет восстановить Ваши данные. Как лучше заводить FTP сервер для резервных копий? В первую очередь нужно рассчитать объем Вашего сайта и число копий, которые будут храниться на отдельно FTP сервере. Например Ваш сайт весит 5гб, Вы хотите делать резервные копии каждый день, в месяце 30 дней. Значит [5гб+(запас2гб)]*30=210гб. Значит в месяц Вы будете занимать 210 гб. Запас я взял из расчёта, что наш портал расширяется каждый день. Значит, если нам нужно каждый месяц держать резервные копии и наш сайт весть 5-7гб, то нам нужен сервер 210гб ++. Можно делать копии и реже, раз в неделю, но если Ваш ресурс часто обновляем — это не Вариант. Пример: Вы делаете резервные копии сайта раз в неделю. На Ваш ресурс добавляется ежедневно по 20-60 новостей. Ваш сайт взломали 3 недели назад. Вам нужно откатиться до копии, которая была сделана 4 недели назад. 20Х4/60х4 = 80/240 новостей у Вас пропадет. Критичность для своего проекта оценивайте сами.

База:

Хостинг: Rusonyx, с Root VPS( http://www.rusonyx.ru/hosting/vps/prices/ )

FTP сервер: То же Rusonyx http://www.rusonyx.ru/hosting/vps/ftpbackup/ Но дело не в том, что это просто FTP доступы. Это отдельные сервера хостинга, да, но мне захотелось экстрима и я решил заказать отдельный Linux Server с Centos и настроить vsftpd. Мой выбор пал на [Selectel].

Свой FTP сервер — легко. [vsftpd]

Виртуальный сервер с характеристиками: 512МГц — процессор — более чем, 512ОЗУ — даже много, 51,2Гб диск и всё это за 512 рублей/месяц. Заходим на сервер и первым делом выпиливаем всё, что нам не нужно

`/etc/init.d/httpd stop`

`/etc/init.d/sendmail stop`

`yum remove httpd`

`yum remove xinetd`

`yum remove sendmail`

`yum remove bind`

`rm -rf /etc/httpd/`

`rm -rf /etc/xinetd.d/`

Далее, если у нас пустой сервер, без ПО, обновимся, выполнив команду `yum upgrade`, со всем соглашаемся и идем на минут 15 пить чай.. Если у Вас уже установлено какое-либо ПО upgrade производите на своё усмотрение. После upgrad’a перейдем к установки vsftpd `yum install vsftpd` После установки нам нужно поправить конфиг, на всякий случай делаем его копию

`cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.back`

Далее откроем конфиг

vsftpd `vim /etc/vsftpd/vsftpd.conf`

Нужно найти и заменить параметры на

`anonymous_enable=NO` (по умолчанию yes)

`local_enable=YES`

`write_enable=YES`

`connect_from_port_20=NO` (по умолчанию yes)

Вставить в конец: `chroot_local_user=YES` – закрываем пользователя в chroot.

 

Теперь нужно создать пользователя для подключения и задать ему папку

`useradd -d '/home/users/ftpuser' -s /sbin/nologin ftpuser`

/home/ – директория «Хомяк» /user/ – тут лежат папки всех пользователей /ftpuser/ – папка пользователя ftpuser Если мы ещё не создали саму папку, то создадим её:

`mkdir -p /home/users/ftpuser`

Зададим пароль созданному пользователю:

`passwd ftpuser`

Выставим права на папки:

`chown -R ftpuser /home/users/ftpuser`

`chmod 775 /home/users/ftpuser`

Создадим группу пользователей `groupadd ftpusers` И добавим в него своего пользователя:

`usermod -G ftpusers ftpuser`

Добавим правило для открытие 25 порта

`iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT`

При перезапуске сервера, или сервиса iptables правило будет удалено. Исправим это изменив записи в `/etc/sysconfig/iptables-config`

`vim /etc/sysconfig/iptables-config`

Заменим:

`IPTABLES_SAVE_ON_RESTART="no" ` на ` IPTABLES_SAVE_ON_RESTART="yes"`

`IPTABLES_SAVE_ON_STOP="no"` на ` IPTABLES_SAVE_ON_STOP="yes"`

Добавим vsftpd в автозагрузку

`chkconfig --levels 235 vsftpd on`

Перезапустим vsftpd и проверим результат `service vsftpd start`

АВТОР ПОСТА

Светозар

Основатель блога kolesnikov.pw, Arch'евод, системный администратор. Говорят, хорошей парень )).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *