FTP и USER

Возникла потребность создать выделенного пользователя FTP, ограниченного в правах папкой, где сайты лежат.

 

Манулов находил много, разных,  но подходящего под ситуацию — нет. При действиях по чужим манулам, раз за разом натыкался на одни те же грабли — все работает, но файл загрузить нельзя: 550 permission denied.

Что сделал:

Создал шелл nologin-ftp.

# echo '/sbin/nologin-ftp' >> /etc/shells 
# ln -s /usr/sbin/nologin /sbin/nologin-ftp

Добавим пользователя для FTP командой adduser. Ключевые параметры это login group и shell, выглядеть должно так:

#adduser
Username: ftpuser 
Full name: 
Uid (Leave empty for default): 
Login group [ftpuser]: www
Login group is test. Invite test into other groups? []: 
Login class [default]: 
Shell (sh csh tcsh zsh nologin-ftp nologin) [sh]: nologin-ftp
Home directory [/home/ftpuser]: 
Use password-based authentication? [yes]: 
Use an empty password? (yes/no) [no]: 
Use a random password? (yes/no) [no]: 
Enter password:
Enter password again: 
Lock out the account after creation? [no]: 
Username : test
Password : ****
Full Name : Test User
Uid : 1001
Class :
Groups : www
Home : /home/ftpuser
Shell : /usr/local/bin/nologin-ftp
Locked : no
OK? (yes/no): yes 
adduser: INFO: Successfully added (ftpuser) to the user database.
Add another user? (yes/no): no 
Goodbye! 
#

Создаем файл /etc/ftpchroot и добавляем в него строку типа: name path.

Где name — имя пользователя, path — путь до директории, доступ к которой разрешен, например:

ftpuser /STORAGE/WWW

Далее сносим homedirectory созданного пользователя:

rm -rf /home/ftpuser

И финал — изменение прав доступа на папку с сайтом:

chmod -R 775 /STORAGE/WWW

2 Replies to “FTP и USER”

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