- How To Tutorials
- PHP, ASP, .Net, Linux, SEO
- Linux: How to create ftp user?
- How add ftp users to folder or Apache server?
- If we need more user to be added to already existing ftp folder then we can do as follows:
- FTP users for web server like Apache:
- Linux Create An FTP User Account
- FTP-учетные записи — создание по SSH
- Создание FTP-пользователя без панели управления ISPmanager
- Установка FTP-сервера proftpd
- Добавление разрешающих правил для брандмауэра
- Ограничение FTP-пользователей пределами домашнего каталога
- Создание нового FTP-пользователя
- Дополнительная информация
How To Tutorials
PHP, ASP, .Net, Linux, SEO
Linux: How to create ftp user?
How add ftp users to folder or Apache server?
In this example we will create ftp group , ftp user and add it to the new or existing folder for ftp.
Step 1: If we already have group then we can skip this or lets start by creating a group, and lets call it ftpgroup
Step 2: Create a user called ftpuser and add it to the group and also assign it with the folder. If folder is not assign default folder will be assigned which is normally /home/username
Normally ftp users dont need shell access so -s /bin/false.
Step 3: Set ownership.
chown ftpuser:ftpgroup /home/ftpuser
And you are done.
If we need more user to be added to already existing ftp folder then we can do as follows:
Add new user to existing ftp group:
Note: we can modify user anytime with the usermod eg:
When we add new user to the group, we need to logout and login to the system, otherwise new user will not able to do ftp. If we dont want to logout/login then we can run following command to the folder.
Extra: Limiting ftp users to their permitted folders:
To limit ftp users not able to go to top level folder we can do..sdfsdfdsf
if ftp server is vsftpd then make you have following un -commented or set.
and don’t forget to restart
FTP users for web server like Apache:
If you are creating ftp for web users then make user user group is also apache else files uploaded by users will not be run by apache. So we can add multiple group to the users as follows:
This step should work, but still you may not able to edit/create files because
When adding a user to a new group, that won’t be applied in any currently-running processes, only new ones. You need to log out and then log back in.
To fix this you can either logout and login or do the following command for your directory.
Источник
Linux Create An FTP User Account
Now your FTP server is up and running. It is time to add additional users to FTP server so that they can login into account to upload / download files. To add a user called tom and set the password, enter:
# adduser -c ‘FTP USER Tom’ -m tom
# passwd tom
Now tom can login using our ftp server. Make sure the following is set in vsftpd.conf
Restart the vftpd:
# service vsftpd restart
- No ads and tracking
- In-depth guides for developers and sysadmins at Opensourceflare✨
- Join my Patreon to support independent content creators and start reading latest guides:
- How to set up Redis sentinel cluster on Ubuntu or Debian Linux
- How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
- How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
- A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
- How to protect Linux against rogue USB devices using USBGuard
Join Patreon ➔
However, I recommend setting virtual FTP user account to increase server security.
Category | List of Unix and Linux commands |
---|---|
Documentation | help • mandb • man • pinfo |
Disk space analyzers | df • duf • ncdu • pydf |
File Management | cat • cp • less • mkdir • more • tree |
Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 |
Linux Desktop Apps | Skype • Spotify • VLC 3 |
Modern utilities | bat • exa |
Network Utilities | NetHogs • dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • glances • gtop • jobs • killall • kill • pidof • pstree • pwdx • time • vtop |
Searching | ag • grep • whereis • which |
Shell builtins | compgen • echo • printf |
Text processing | cut • rev |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |
Comments on this entry are closed.
These instructions seem to get the server running, but I’m unable to connect with any local user. It keeps telling me my password is invalid, even though I can ssh with that username/password just fine.
Status: Connection established, waiting for welcome message…
Response: 220 (vsFTPd 2.0.5)
Command: USER ftpuser
Response: 331 Please specify the password.
Command: PASS ********
Response: 530 Login incorrect.
I had the same issue. I had to add the ftp users to the ‘ftp’ group:
# gpasswd -a ftpuser ftp
and then it worked.
Hi..can we predefine path of the user directory instead of /home/tom ?
thanks
For a new user you would do:
# useradd -m -G ftp -s /sbin/nologin -d /home/ftpuser ftpuser
(This also sets the login shell to /sbin/nologin which effectively disables ssh login for the account.)
For an existing user you would do:
# usermod ftpuser -G ftp -s /sbin/nologin -d /home/ftpuser
You can define directory while creating UNIX/ Linux user account.
Using the pam file and virtual users with SSL/TLS, would i have to use the user_config_dir= option to set specifics for those users so they have seperate login directories, since those users aren’t in the centos users account, but in the separate pam database file?
Q:how to remove the ftp account?
it wont let me upload anything, i am using filezilla, it says error 553 could not create file and 550 could not change directory
this is the usual ‘type it in’ and hope for the best.
surely a gui os like suse should at least have a simple gui to add authenticated ftp users
Guys, note. /etc/shells MUST have /sbin/nologin in it, otherwise, you’ll get Login Failed
Sorry, NOT /sbin/nologin, but valid shell
I get this when I try to log on:
500 OOPS: cannot change directory:/home/pete
hi i want to know on
1. On a network how we can create a ftp server and group
and
2.How we can allocate (provide) specific space for sftp server .
hi i want to know on
1. On a network how we can create a ftp server and group
and
2.How we can allocate (provide) specific space for sftp server .
Источник
FTP-учетные записи — создание по SSH
Руководство по созданию и настройке ftp пользователя с помощью оболочки SSH
По-умолчанию, на сервере доступен только суперпользователь root. Подключение с данными root по протоколу FTP невозможно в целях безопасности (используется незашифрованный пароль). Если есть такая необходимость быстрой ручной настройки нового ftp пользователя при отсутствии на сервере панели управления ISPmanager, для этого нужно:
Установка proftpd (если он установлен, пропускаете):
Debian/Ubuntu
CentOS
Если сервер не запустился автоматически, для его запуска используйте:
Ограничение ftp пользователей пределами домашнего каталога
Данная статья подразумевает работу конфигурацией ProFTPd «по-умолчанию», а в этом случае пользователь может выходить за пределы своего домашнего каталога и, хотя прав на работу с другими папками у него, скорее всего, нет, но при недостаточно строгой конфигурации сервера это может представлять угрозу безопасности. Решить эту проблему можно добавив одну строку в файл proftpd.conf:
Добавить ее можно в конец файла. После сохранения, перезапустите ftp сервер:
Создание нового ftp пользователя
Обычным ftp пользователям нет необходимости иметь доступ к командной оболочке. Перед созданием новых пользователей, выполните команду:
имя_пользователя нужно заменить на не занятое имя и соответствующую группу, назначили и создали ключ -m можно опустить, если каталог уже существует домашний каталог /home/имя_папки и выбрали /bin/false** в качестве командной оболочки пользователя, тем самым ее отключив в целях безопасности.
passwd мы создали пользователю необходимый пароль.
Доступ к командной оболочке (shell)
Если Вы хотите предоставлять пользователю доступ к командной оболочке, то указывайте путь до любой действующей вместо /bin/false, например:
Пользователям обычного протокола ftp не нужен доступ к shell, поэтому, безопаснее его не предоставлять.
Расположение proftpd.conf
Файл настроек proftpd.conf может располагаться в разных местах, в зависимости от вашей версии ОС:
Debian: /etc/proftpd/proftpd.conf
CentOS: /etc/proftpd.conf
Ubuntu: /etc/proftpd.conf
Ограничение прав ftp пользователя
Если требуется вы можете закрыть права на запись для пользователя, например, в домашнюю директорию и оставить их только для какой-нибудь внутренней папки, например upload:
От имени root измените права:
chmod 555 /home/имя_папки
mkdir /home/имя_папки/upload
chown имя_пользователя:имя_пользователя /home/имя_папки/upload
второе имя_пользователя является именем группы, которое по умолчанию совпадает с созданным вами именем пользователя.
Источник
Создание FTP-пользователя без панели управления ISPmanager
По умолчанию при установке ОС Linux из любых шаблонов на сервере доступен только суперпользователь root. Подключение с данными root по протоколу FTP невозможно в целях безопасности (используется незашифрованный пароль). При установке шаблонов ОС типа minimal сервер FTP также не будет включён в установочный пакет. Если у Вас возникла необходимость быстрой ручной настройки нового FTP-пользователя при отсутствии на сервере панели управления ISPmanager, нужно сделать следующее.
Для начала подключитесь к серверу по протоколу SSH с правами root.
Установка FTP-сервера proftpd
CentOS:
Установка EPEL репозитория
Debian/Ubuntu:
Добавляем FTP в автозапуск сервера и запускаем его
Добавление разрешающих правил для брандмауэра
В зависимости от используемой утилиты управления
Iptables:
firewalld:
Ограничение FTP-пользователей пределами домашнего каталога
Данная статья подразумевает работу c конфигурацией ProFTPd «по умолчанию», а в этом случае пользователь может выходить за пределы своего домашнего каталога, и хотя прав на работу с другими папками у него, скорее всего, нет, но при недостаточно строгой конфигурации сервера это может представлять угрозу безопасности. Решить эту проблему можно добавив одну строку в файл proftpd.conf :
Добавить её можно в конец файла. После сохранения перезапустите FTP-сервер:
Создание нового FTP-пользователя
Простым FTP-пользователям нет необходимости иметь доступ к командной оболочке. Перед тем, как приступите к созданию новых пользователей, выполните команду:
Создайте нового пользователя
Командами выше мы создали пользователя (имя_пользователя нужно заменить на незанятое имя) и соответствующую группу, назначили и создали (ключ -m можно опустить, если каталог уже существует) домашний каталог /home/имя_папки и выбрали /bin/false в качестве командной оболочки пользователя, тем самым отключив её в целях безопасности. Командой passwd мы задали пользователю необходимый пароль.
В большинстве случаев на данном этапе вы уже можете подключаться с созданным пользователем к FTP-серверу, который по умолчанию работает на 21 порту. Однако, есть еще несколько шагов, которые вы, возможно, захотите выполнить.
Дополнительная информация
Доступ к командной оболочке (shell)
Если вы всё-таки хотите предоставлять пользователю доступ к командной оболочке, то указывайте путь до любой действующей вместо /bin/false , например:
Пользователям обычного протокола FTP не нужен доступ к shell, поэтому безопаснее его не предоставлять.
Расположение proftpd.conf
Используйте этот файл для более детальной настройки своего FTP-сервера при необходимости.
Ограничение прав FTP-пользователя
При необходимости вы можете ограничить права пользователя на запись в домашнюю директорию, позволив ему работать только с какой-нибудь внутренней папкой, например upload. От имени суперпользователя измените права:
В данном случае второе имя_пользователя является именем группы, которое по умолчанию совпадает с созданным вами именем пользователя.
Источник