A PHP Error was encountered

Severity: 8192

Message: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead.

Filename: mysql/mysql_driver.php

Line Number: 319

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

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


Рубрика: Администрирование
Метки: |
Просмотров: 12138

Установка 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

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