IntFAQ.ru

Установка ProFTPD на Centos 5

Суббота, 22 мая 2010 г.
Рубрика: Администрирование
Метки: |
Просмотров: 4618
Подписаться на комментарии по RSS

Установка ProFTPD на Centos 5

В источниках Centos 5 нет по умолчанию ProFTPD для его установки, по этому если он нам нужен (а мне нужен был для использования FTP после установки Webmin) придется устанавливать все в ручную.

Первым делом мы установим необходимые пакеты для сборки и установки ProFTPD:

yum install ncurses-devel \
gcc \
gcc-c++ \
make \
rpm-build \
m4 \
redhat-rpm-config \
unifdef

Далее непосредственно собираем и устанавливаем ProFTPD

cd /tmp/
wget --passive-ftp ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.2.tar.gz
tar xvfz proftpd-1.3.2.tar.gz
cd proftpd-1.3.2/
./configure --sysconfdir=/etc
make
make install
cd ..
rm -fr proftpd-1.3.2*

Proftpd устанавливается в /usr/local/sbin, но нам он нужен, в /usr/sbin, поэтому мы создаем символическую ссылку:

ln -s /usr/local/sbin/proftpd /usr/sbin/proftpd

Далее создадим скрипт запуска для proftpd с помощью программы nano (инструкция по работе с nano доступна по этой ссылке), /etc/init.d/proftpd:

nano /etc/init.d/proftpd

И впишем в него:

#!/bin/sh
# $Id: proftpd.init,v 1.1 2004/02/26 17:54:30 thias Exp $
#
# proftpd This shell script takes care of starting and stopping
# proftpd.
#
# chkconfig: - 80 30
# description: ProFTPD is an enhanced FTP server with a focus towards \
# simplicity, security, and ease of configuration. \
# It features a very Apache-like configuration syntax, \
# and a highly customizable server infrastructure, \
# including support for multiple 'virtual' FTP servers, \
# anonymous FTP, and permission-based directory visibility.
# processname: proftpd
# config: /etc/proftp.conf
# pidfile: /var/run/proftpd.pid

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

[ -x /usr/sbin/proftpd ] || exit 0

RETVAL=0

prog="proftpd"

start() {
echo -n $"Starting $prog: "
daemon proftpd
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/proftpd
}

stop() {
echo -n $"Shutting down $prog: "
killproc proftpd
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/proftpd
}

# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status proftpd
RETVAL=$?
;;
restart)
stop
start
;;
condrestart)
if [ -f /var/lock/subsys/proftpd ]; then
stop
start
fi
;;
reload)
echo -n $"Re-reading $prog configuration: "
killproc proftpd -HUP
RETVAL=$?
echo
;;
*)
echo "Usage: $prog {start|stop|restart|reload|condrestart|status}"
exit 1
esac
exit $RETVAL

Выставим права для запуска скрипта:

chmod 755 /etc/init.d/proftpd

Далее откроем /etc/proftpd.conf и изменить Group на nobody:

nano /etc/proftpd.conf

Так:

[...]
Group nobody
[...]

По соображениям безопасности, вы можете также добавить следующие строки в /etc/proftpd.conf:

[...]
DefaultRoot ~
IdentLookups off
ServerIdent on "FTP Server ready."
[...]

Чтобы FTP пользователи могли использовать сhmod команды, закомментируем строки в разделе:

[...]
#
# DenyAll
# [...]

Также можно сделать, чтоб отображались все файлы от и до, т.к. файлы начинающиеся на точку, видно не будет:

ListOptions -a

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

chkconfig --levels 235 proftpd on

Запускаем FTP сервис:

/etc/init.d/proftpd start

Если понравилось, пожалуйста добавьте тему в социальные сети:
twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru rutvit.ru myspace.com Google Buzz technorati.com digg.com friendfeed.com pikabu.ru blogger.com liveinternet.ru livejournal.ru memori.ru google.com bobrdobr.ru mister-wong.ru yahoo.com yandex.ru del.icio.us
Заранее огромное Спасибо !!!

Комментариев: 6

  1. ]]>]]>

    smile Респект за статью, очень помогло в настройке

  2. ]]>]]>

    что за ошибка при запуске

    -bash: /etc/init.d/proftpd: /bin/sh^M: bad interpreter: No such file or directory

    и как исправить

  3. ]]>]]>

    Возможно, вы редактировали файл /etc/init.d/proftpd под Windows, а затем сохранили его на Linux сервере? Пожалуйста, используйте редактор, который позволяет сохранять текстовые файлы с разрывом строки Unix, а затем скопировать файл на Linux сервер снова.

    Если все делали под Linux, значит проверяем весь код и ищем лишние пробелы и нажатия клавиши ЕНТЕР

  4. ]]>]]>

    а это что при запуске

    -bash: /etc/init.d/proftpd: Permission denied

  5. ]]>]]>

    поставил права

    при запуске ошибка

    Starting proftpd: - warning: unable to determine IP address of 'yumhost.ru'

    - error: no valid servers configured

    - Fatal: error processing configuration file '/etc/proftpd.conf'

    [FAILED]

  6. ]]>]]>

    В файле hosts попробуйте прописать айпи и домен, к примеру:

    127.0.0.1 localhost - там уже было

    194.84.124.2 yumhost.ru - 194.84.124.2 это айпи сервера где ваш домен расположен

    И перегрузите сервер

Оставьте комментарий!

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email. При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д., а также подписку на новые комментарии.

Авторизация: Войти через loginza Facebook.

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

(обязательно)