<?php
function showTree($folder, $space) {
/* Получаем полный список файлов и каталогов внутри $folder */
$files = scandir($folder);
foreach($files as $file) {
/* Отбрасываем текущий и родительский каталог */
if (($file == '.') || ($file == '..')) continue;
$f0 = $folder.'/'.$file; //Получаем полный путь к файлу
/* Если это директория */
if (is_dir($f0)) {
/* Выводим, делая заданный отступ, название директории */
echo $space.$file."<br />";
/* С помощью рекурсии выводим содержимое полученной директории */
showTree($f0, $space.' ');
}
/* Если это файл, то просто выводим название файла */
else echo $space.$file."<br />";
}
}
/* Запускаем функцию для текущего каталога */
showTree("/var/ftp", "");
?>
"; if(is_dir($dir."/".$file)) {ftp_recursive($dir."/".$file);} } } } } ?> ftp_recursive("/var/ftp/");
[root@localFTP db]# lftp -e 'set ftp:ssl-auth; open user2@localhost'
Password:
lftp user2@localhost:~> ls
ls: Login failed: 530 Login incorrect.
# Example config file /etc/vsftpd/vsftpd.conf
# Запуск сервера в режиме службы
listen=YES
#Работа в фоновом режиме
background=YES
#Имя сервиса для vsftpd
pam_service_name=vsftpd
#Входящие соединения контролируются через tcp_wrapper
#tcp_wrappers=NO
#Запрещает подключение анонимных пользователей
anonymous_enable=YES
#Активация двоичной авторизации user и anonymous
anon_upload_enable=NO
no_anon_password=YES
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
#Коталог куда будут попадать анонимные пользователи,если они разрешены
local_root=/var/ftp
anon_root=/var/ftp
#Разрешает вход для локальных пользователей
local_enable=YES
#Разрешены команды на запись и чтение
write_enable=YES
#Указывает исходящим с сервера соединением использовать 20й порт
connect_from_port_20=YES
#Логиролвание вех действий на сервере
xferlog_enable=YES
#Путь к лог файлу
vsftpd_log_file=/etc/vsftpd/vsftpd.log
log_ftp_protocol=YES
xferlog_std_format=YES
xferlog_file=/var/log/vsftpd.log
#Включение специальных ftp команд, неоторые клиенты могут без этого зависать
async_abor_enable=YES
#Локальные пользователи по умолчанию не могут выходить за пределы своего домашнего каталога
chroot_local_user=YES
#Разрешить список пользователей ,которым разрешен выход из домашнего каталога
chroot_list_file=/etc/vsftpd/chroot_list
#Разрешить запись в корень chroot каталога пользователя
allow_writeable_chroot=YES
#Контроль доступа к серверу через отдельный список пользователей
#userlist_enable=YES
userlist_enable=NO
#Файл со спискком разрешенных к подключению пользователей
userlist_file=/etc/vsftpd/user_list
#Пользователь будет отклонен если его нет в User_list
userlist_deny=NO
#Директория с настройками пользователей
user_config_dir=/etc/vsftpd/users
#Показывать файлы, начинающиеся с точки
#force_dot_files=YES
#Маска прав доступа к создаваемым файлам
local_umask=022
#Порты для пассивного режима работы
pasv_min_port=40000
pasv_max_port=50000
###################
ssl_enable=YES
###################
####Шифрование#####
ssl_tlsv1=NO
ssl_sslv2=YES
ssl_sslv3=YES
#ssl_request_cert=NO
#require_ssl_reuse=NO_
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=YES
allow_anon_ssl=YES
force_local_data_ssl=YES
force_local_logins_ssl=YES
###################
#Уствновка шифров##
require_ssl_reuse=NO
ssl_ciphers=HIGH
debug_ssl=YES
cat > /home/scripts.sh <<EOF
#/bin/sh
inetADD=$1
RED="\e[31m"
GREEN="\e[32m"
ENDCOLOR="\e[0m"
NETMASK=255.255.255.128
ip address | grep -v lo | cut -d ' ' -f2 | tr ':' '\n' | awk NF
echo -e "${GREEN}Enter interface:${ENDCOLOR}"
read nameINT
uuid=$($uuidgen nameINT)
echo -e "NAME=$nameINT\nDEVICE=$nameINT\nBOOTPROTO=static\nUUID=$uuid\nONBOOT=yes\nIPADDR=$1\nNETMASK=$NETMASK" >> /etc/sysconfig/network-scripts/ifcfg-$nameINT
ifdown $nameINT && sleep 3 && ifup $nameINT
if [ "`ping -c 1 -I $nameINT 192.168.1.1`" ] then
echo -e "${GREEN}Ping GOOD. System EXIT${ENDCOLOR}"
exit
else
echo -e "${RED}Reloading the interface${ENDCOLOR}"
ifdown $nameINT && sleep 10 && ifup $nameINT
ping -c 1 -I $nameINT 192.168.1.1
echo -e "${RED}ERROR${ENDCOLOR}"
fi
EOF
#/bin/sh
inetADD=$1
NETMASK=255.255.224.0
ip address | grep -v lo | cut -d ' ' -f2 | tr ':' '\n' | awk NF
echo "Enter interface:"
read nameINT
uuid=$(uuidgen $nameINT)
echo -e "NAME=$nameINT\nDEVICE=$nameINT\nBOOTPROTO=static\nUUID=$uuid\nONBOOT=yes\nIPADDR=$1\nNETMASK=$NETMASK" >> /etc/sysconfig/network-scripts/ifcfg-$nameINT
530 This FTP server is anonymous only