1. устанавливаем /usr/ports/ftp/proftpd
make install clean
ставим с поддержкой nls
2. в /etc/rc.conf добавляем proftpd_enable="YES"
3. перегружать будем командой /usr/local/etc/rc.d/proftpd restart
4. файл конфигурации находится в /usr/local/etc/proftpd.conf
5. добавляем пользователя ftp (без пароля и shell /usr/sbin/nologin) и группу ftp в систему (под этими пользователем и группой будет работать ftp-сервер)
6. создаем каталог для доступа по ftp, пр. mkdir -p /usr/ftp/public
права на каталог: chown -R ftp:ftp /usr/ftp/public
Примеры конфигурационного файла proftpd.conf
Для анонимного доступа
ServerName "BSDServ FTP"
ServerType standalone
DefaultServer on
UseReverseDNS off
IdentLookups off
DefaultAddress localhost
ScoreboardFile /var/run/proftpd/proftpd.scoreboard
SystemLog /var/log/proftpd-error.log
DenyFilter \*.*/
Port 21
Umask 022
MaxInstances 30
CommandBufferSize 512
# Set the user and group under which the server will run.
User ftp
Group ftp
DefaultRoot /usr/ftp/
# Normally, we want files to be overwriteable.
AllowOverwrite on
# Bar use of SITE CHMOD by default
<Limit SITE_CHMOD>
DenyAll
</Limit>
<Anonymous /usr/ftp>
User ftp
Group ftp
UserAlias anonymous ftp
AuthAliasOnly on
RequireValidShell off
AnonRequirePassword off
MaxClients 20 "Try again later"
<Limit LOGIN>
AllowAll
</Limit>
<Limit WRITE>
DenyAll
</Limit>
</Anonymous>
Для доступа по паролю
ServerName "BSDServ FTP"
ServerType standalone
DefaultServer on
UseReverseDNS off
IdentLookups off
DefaultAddress localhost
ScoreboardFile /var/run/proftpd/proftpd.scoreboard
SystemLog /var/log/proftpd-error.log
DenyFilter \*.*/
Port 21
Umask 022
MaxInstances 30
CommandBufferSize 512
# Set the user and group under which the server will run.
User ftp
Group ftp
RequireValidShell on
DefaultRoot /usr/ftp/
# Normally, we want files to be overwriteable.
AllowOverwrite on
# Bar use of SITE CHMOD by default
<Limit SITE_CHMOD>
DenyAll
</Limit>
<Directory /usr/ftp/public>
<Limit LOGIN>
AllowGroup operator
DenyAll
</Limit>
<Limit ALL>
AllowGroup operator
DenyAll
</Limit>
</Directory>
Директива <Limit>
Права
AllowAll
DenyAll
AllowGroup grpname1, [grpnameN]
AllowUser user1,[userN]
DenyUser user1,[userN]
Allow from ip1, [ipN]
make install clean
ставим с поддержкой nls
2. в /etc/rc.conf добавляем proftpd_enable="YES"
3. перегружать будем командой /usr/local/etc/rc.d/proftpd restart
4. файл конфигурации находится в /usr/local/etc/proftpd.conf
5. добавляем пользователя ftp (без пароля и shell /usr/sbin/nologin) и группу ftp в систему (под этими пользователем и группой будет работать ftp-сервер)
6. создаем каталог для доступа по ftp, пр. mkdir -p /usr/ftp/public
права на каталог: chown -R ftp:ftp /usr/ftp/public
Примеры конфигурационного файла proftpd.conf
Для анонимного доступа
ServerName "BSDServ FTP"
ServerType standalone
DefaultServer on
UseReverseDNS off
IdentLookups off
DefaultAddress localhost
ScoreboardFile /var/run/proftpd/proftpd.scoreboard
SystemLog /var/log/proftpd-error.log
DenyFilter \*.*/
Port 21
Umask 022
MaxInstances 30
CommandBufferSize 512
# Set the user and group under which the server will run.
User ftp
Group ftp
DefaultRoot /usr/ftp/
# Normally, we want files to be overwriteable.
AllowOverwrite on
# Bar use of SITE CHMOD by default
<Limit SITE_CHMOD>
DenyAll
</Limit>
<Anonymous /usr/ftp>
User ftp
Group ftp
UserAlias anonymous ftp
AuthAliasOnly on
RequireValidShell off
AnonRequirePassword off
MaxClients 20 "Try again later"
<Limit LOGIN>
AllowAll
</Limit>
<Limit WRITE>
DenyAll
</Limit>
</Anonymous>
Для доступа по паролю
ServerName "BSDServ FTP"
ServerType standalone
DefaultServer on
UseReverseDNS off
IdentLookups off
DefaultAddress localhost
ScoreboardFile /var/run/proftpd/proftpd.scoreboard
SystemLog /var/log/proftpd-error.log
DenyFilter \*.*/
Port 21
Umask 022
MaxInstances 30
CommandBufferSize 512
# Set the user and group under which the server will run.
User ftp
Group ftp
RequireValidShell on
DefaultRoot /usr/ftp/
# Normally, we want files to be overwriteable.
AllowOverwrite on
# Bar use of SITE CHMOD by default
<Limit SITE_CHMOD>
DenyAll
</Limit>
<Directory /usr/ftp/public>
<Limit LOGIN>
AllowGroup operator
DenyAll
</Limit>
<Limit ALL>
AllowGroup operator
DenyAll
</Limit>
</Directory>
Директива <Limit>
ALL (все команды (кроме LOGIN))
DIRS (CDUP, CWD, LIST, MDTM, MLSD, MLST, NLST, PWD, RNFR, STAT, XCUP, XCWD, XPWD)
LOGIN ()
READ (RETR, SIZE)
WRITE (APPE,DELE, MKD, RMD, RNTO, STOR, STOU, XMKD, XRMD)
Права
AllowAll
DenyAll
AllowGroup grpname1, [grpnameN]
AllowUser user1,[userN]
DenyUser user1,[userN]
Allow from ip1, [ipN]
Комментариев нет:
Отправить комментарий