Предоставление пользователю sftp доступа к директории / var / www

Каждый терминал или SSH-логин добавляет еще одну запись в список пользователей. Поэтому, если вы являетесь пользователем, у вас, вероятно, есть еще четыре терминала и / или сеансы SSH.

12
задан 30 May 2012 в 17:07

18 ответов

Это процесс:

Добавить пользователя в группу: sudo usermod -aG www blub как в разделе Самый простой способ редактирования и добавления файлов в / quot / var / www & quot ;? или просто используйте sudo adduser <username> www-data Установите vsftpd sudo apt-get install vsftpd Настройте vsftpd для удаленного доступа: sudo nano /etc/vsftpd.conf и внутри файла
chroot_local_user=YES
и убедитесь, что это закомментировано:
#chroot_list_enable=YES
согласно документации. Restart nsftp: sudo service vsftpd restart Настройте домашний каталог пользователя в веб-каталог (не в /home):
sudo usermod -d /var/www/mysite/ftpaccessdir <username>
Настройте ssh chroot
sudo nano /etc/ssh/sshd_config
добавьте следующее в конец:
Subsystem  sftp  internal-sftp
Match user <username>
    ChrootDirectory /var/www/site
    ForceCommand internal-sftp
AllowTcpForwarding no
и убедитесь, что дальше в файле что это прокомментировано (т. е. до того, который вы только что добавили)
#Subsystem sftp /usr/lib/openssh/sftp-server
Перезапустить ssh
sudo service ssh restart
Изменить разрешения для apache:
chown root:root /var/www
chown root:root /var/www/site
chmod 755 /var/www
Как и в документах здесь. Убедитесь, что ваш каталог имеет доступ к www-данным
sudo chown -R www-data:www-data /var/www/site
chmod 755 /var/www/site
13
ответ дан 25 May 2018 в 10:50
  • 1
    Я выполнил эту инструкцию, но у меня было отказано в завершении связи, когда я добавляю эти строки. Подсистема sftp internal-sftp Match user & lt; имя_пользователя & gt; ChrootDirectory / var / www / site ForceCommand internal-sftp AllowTcpForwarding no – Ata 12 June 2014 в 13:14
  • 2
    У меня также такая же проблема с Ubuntu 14.04 – torayeff 17 October 2014 в 11:51
  • 3
    У меня такая же проблема! – maxisme 17 March 2015 в 20:13
  • 4
    Как на этапе 9 у вас есть chown root:root /var/www/site, чтобы вернуть его обратно на sudo chown -R www-data:www-data /var/www/site на шаге 10, это преднамеренно? – JohnnyQ 14 July 2016 в 17:41
  • 5
    Это не работает для меня – Linga 28 November 2016 в 15:44

Это процесс:

  1. Добавьте пользователя в группу: sudo usermod -aG www blub, как в . Самый простой способ редактировать и добавлять файлы в & quot; / var / www & quot; ? или просто использовать sudo adduser <username> www-data
  2. Установить vsftpd sudo apt-get install vsftpd
  3. Настроить vsftpd для удаленного доступа: sudo nano /etc/vsftpd.conf и внутри файла
    chroot_local_user=YES
    
    и обеспечить это :
    #chroot_list_enable=YES
    
    согласно документации .
  4. Restart nsftp: sudo service vsftpd restart
  5. Настроить домашний каталог пользователя в веб-каталог (не в /home):
    sudo usermod -d /var/www/mysite/ftpaccessdir <username>
    
  6. Настроить ssh chroot
    sudo nano /etc/ssh/sshd_config
    
    добавить следующее в конец:
    Subsystem  sftp  internal-sftp
    Match user <username>
        ChrootDirectory /var/www/site
        ForceCommand internal-sftp
    AllowTcpForwarding no
    
    и убедиться, что дальше в файле, который это закомментирован (т.е. перед тем, который вы просто добавлено)
    #Subsystem sftp /usr/lib/openssh/sftp-server
    
  7. Перезапустить ssh
    sudo service ssh restart
    
  8. Изменить разрешения для apache:
    chown root:root /var/www
    chown root:root /var/www/site
    chmod 755 /var/www
    
    Как в документах здесь .
  9. Убедитесь, что ваш каталог имеет доступ к www-данным
    sudo chown -R www-data:www-data /var/www/site
    chmod 755 /var/www/site
    
15
ответ дан 31 July 2018 в 10:45

Это процесс:

  1. Добавьте пользователя в группу: sudo usermod -aG www blub, как в . Самый простой способ редактировать и добавлять файлы в & quot; / var / www & quot; ? или просто использовать sudo adduser <username> www-data
  2. Установить vsftpd sudo apt-get install vsftpd
  3. Настроить vsftpd для удаленного доступа: sudo nano /etc/vsftpd.conf и внутри файла
    chroot_local_user=YES
    
    и обеспечить это :
    #chroot_list_enable=YES
    
    согласно документации .
  4. Restart nsftp: sudo service vsftpd restart
  5. Настроить домашний каталог пользователя в веб-каталог (не в /home):
    sudo usermod -d /var/www/mysite/ftpaccessdir <username>
    
  6. Настроить ssh chroot
    sudo nano /etc/ssh/sshd_config
    
    добавить следующее в конец:
    Subsystem  sftp  internal-sftp
    Match user <username>
        ChrootDirectory /var/www/site
        ForceCommand internal-sftp
    AllowTcpForwarding no
    
    и убедиться, что дальше в файле, который это закомментирован (т.е. перед тем, который вы просто добавлено)
    #Subsystem sftp /usr/lib/openssh/sftp-server
    
  7. Перезапустить ssh
    sudo service ssh restart
    
  8. Изменить разрешения для apache:
    chown root:root /var/www
    chown root:root /var/www/site
    chmod 755 /var/www
    
    Как в документах здесь .
  9. Убедитесь, что ваш каталог имеет доступ к www-данным
    sudo chown -R www-data:www-data /var/www/site
    chmod 755 /var/www/site
    
15
ответ дан 31 July 2018 в 11:49

Это процесс:

  1. Добавьте пользователя в группу: sudo usermod -aG www blub, как в . Самый простой способ редактировать и добавлять файлы в & quot; / var / www & quot; ? или просто использовать sudo adduser <username> www-data
  2. Установить vsftpd sudo apt-get install vsftpd
  3. Настроить vsftpd для удаленного доступа: sudo nano /etc/vsftpd.conf и внутри файла
    chroot_local_user=YES
    
    и обеспечить это :
    #chroot_list_enable=YES
    
    согласно документации .
  4. Restart nsftp: sudo service vsftpd restart
  5. Настроить домашний каталог пользователя в веб-каталог (не в /home):
    sudo usermod -d /var/www/mysite/ftpaccessdir <username>
    
  6. Настроить ssh chroot
    sudo nano /etc/ssh/sshd_config
    
    добавить следующее в конец:
    Subsystem  sftp  internal-sftp
    Match user <username>
        ChrootDirectory /var/www/site
        ForceCommand internal-sftp
    AllowTcpForwarding no
    
    и убедиться, что дальше в файле, который это закомментирован (т.е. перед тем, который вы просто добавлено)
    #Subsystem sftp /usr/lib/openssh/sftp-server
    
  7. Перезапустить ssh
    sudo service ssh restart
    
  8. Изменить разрешения для apache:
    chown root:root /var/www
    chown root:root /var/www/site
    chmod 755 /var/www
    
    Как в документах здесь .
  9. Убедитесь, что ваш каталог имеет доступ к www-данным
    sudo chown -R www-data:www-data /var/www/site
    chmod 755 /var/www/site
    
15
ответ дан 2 August 2018 в 00:52

Это процесс:

  1. Добавьте пользователя в группу: sudo usermod -aG www blub, как в . Самый простой способ редактировать и добавлять файлы в & quot; / var / www & quot; ? или просто использовать sudo adduser <username> www-data
  2. Установить vsftpd sudo apt-get install vsftpd
  3. Настроить vsftpd для удаленного доступа: sudo nano /etc/vsftpd.conf и внутри файла
    chroot_local_user=YES
    
    и обеспечить это :
    #chroot_list_enable=YES
    
    согласно документации .
  4. Restart nsftp: sudo service vsftpd restart
  5. Настроить домашний каталог пользователя в веб-каталог (не в /home):
    sudo usermod -d /var/www/mysite/ftpaccessdir <username>
    
  6. Настроить ssh chroot
    sudo nano /etc/ssh/sshd_config
    
    добавить следующее в конец:
    Subsystem  sftp  internal-sftp
    Match user <username>
        ChrootDirectory /var/www/site
        ForceCommand internal-sftp
    AllowTcpForwarding no
    
    и убедиться, что дальше в файле, который это закомментирован (т.е. перед тем, который вы просто добавлено)
    #Subsystem sftp /usr/lib/openssh/sftp-server
    
  7. Перезапустить ssh
    sudo service ssh restart
    
  8. Изменить разрешения для apache:
    chown root:root /var/www
    chown root:root /var/www/site
    chmod 755 /var/www
    
    Как в документах здесь .
  9. Убедитесь, что ваш каталог имеет доступ к www-данным
    sudo chown -R www-data:www-data /var/www/site
    chmod 755 /var/www/site
    
15
ответ дан 4 August 2018 в 16:23

Это процесс:

  1. Добавьте пользователя в группу: sudo usermod -aG www blub, как в . Самый простой способ редактировать и добавлять файлы в & quot; / var / www & quot; ? или просто использовать sudo adduser <username> www-data
  2. Установить vsftpd sudo apt-get install vsftpd
  3. Настроить vsftpd для удаленного доступа: sudo nano /etc/vsftpd.conf и внутри файла
    chroot_local_user=YES
    
    и обеспечить это :
    #chroot_list_enable=YES
    
    согласно документации .
  4. Restart nsftp: sudo service vsftpd restart
  5. Настроить домашний каталог пользователя в веб-каталог (не в /home):
    sudo usermod -d /var/www/mysite/ftpaccessdir <username>
    
  6. Настроить ssh chroot
    sudo nano /etc/ssh/sshd_config
    
    добавить следующее в конец:
    Subsystem  sftp  internal-sftp
    Match user <username>
        ChrootDirectory /var/www/site
        ForceCommand internal-sftp
    AllowTcpForwarding no
    
    и убедиться, что дальше в файле, который это закомментирован (т.е. перед тем, который вы просто добавлено)
    #Subsystem sftp /usr/lib/openssh/sftp-server
    
  7. Перезапустить ssh
    sudo service ssh restart
    
  8. Изменить разрешения для apache:
    chown root:root /var/www
    chown root:root /var/www/site
    chmod 755 /var/www
    
    Как в документах здесь .
  9. Убедитесь, что ваш каталог имеет доступ к www-данным
    sudo chown -R www-data:www-data /var/www/site
    chmod 755 /var/www/site
    
15
ответ дан 6 August 2018 в 01:02

Это процесс:

  1. Добавьте пользователя в группу: sudo usermod -aG www blub, как в . Самый простой способ редактировать и добавлять файлы в & quot; / var / www & quot; ? или просто использовать sudo adduser <username> www-data
  2. Установить vsftpd sudo apt-get install vsftpd
  3. Настроить vsftpd для удаленного доступа: sudo nano /etc/vsftpd.conf и внутри файла
    chroot_local_user=YES
    
    и обеспечить это :
    #chroot_list_enable=YES
    
    согласно документации .
  4. Restart nsftp: sudo service vsftpd restart
  5. Настроить домашний каталог пользователя в веб-каталог (не в /home):
    sudo usermod -d /var/www/mysite/ftpaccessdir <username>
    
  6. Настроить ssh chroot
    sudo nano /etc/ssh/sshd_config
    
    добавить следующее в конец:
    Subsystem  sftp  internal-sftp
    Match user <username>
        ChrootDirectory /var/www/site
        ForceCommand internal-sftp
    AllowTcpForwarding no
    
    и убедиться, что дальше в файле, который это закомментирован (т.е. перед тем, который вы просто добавлено)
    #Subsystem sftp /usr/lib/openssh/sftp-server
    
  7. Перезапустить ssh
    sudo service ssh restart
    
  8. Изменить разрешения для apache:
    chown root:root /var/www
    chown root:root /var/www/site
    chmod 755 /var/www
    
    Как в документах здесь .
  9. Убедитесь, что ваш каталог имеет доступ к www-данным
    sudo chown -R www-data:www-data /var/www/site
    chmod 755 /var/www/site
    
15
ответ дан 7 August 2018 в 18:29

Это процесс:

  1. Добавьте пользователя в группу: sudo usermod -aG www blub, как в . Самый простой способ редактировать и добавлять файлы в & quot; / var / www & quot; ? или просто использовать sudo adduser <username> www-data
  2. Установить vsftpd sudo apt-get install vsftpd
  3. Настроить vsftpd для удаленного доступа: sudo nano /etc/vsftpd.conf и внутри файла
    chroot_local_user=YES
    
    и обеспечить это :
    #chroot_list_enable=YES
    
    согласно документации .
  4. Restart nsftp: sudo service vsftpd restart
  5. Настроить домашний каталог пользователя в веб-каталог (не в /home):
    sudo usermod -d /var/www/mysite/ftpaccessdir <username>
    
  6. Настроить ssh chroot
    sudo nano /etc/ssh/sshd_config
    
    добавить следующее в конец:
    Subsystem  sftp  internal-sftp
    Match user <username>
        ChrootDirectory /var/www/site
        ForceCommand internal-sftp
    AllowTcpForwarding no
    
    и убедиться, что дальше в файле, который это закомментирован (т.е. перед тем, который вы просто добавлено)
    #Subsystem sftp /usr/lib/openssh/sftp-server
    
  7. Перезапустить ssh
    sudo service ssh restart
    
  8. Изменить разрешения для apache:
    chown root:root /var/www
    chown root:root /var/www/site
    chmod 755 /var/www
    
    Как в документах здесь .
  9. Убедитесь, что ваш каталог имеет доступ к www-данным
    sudo chown -R www-data:www-data /var/www/site
    chmod 755 /var/www/site
    
15
ответ дан 10 August 2018 в 07:10

Это процесс:

  1. Добавьте пользователя в группу: sudo usermod -aG www blub, как в . Самый простой способ редактировать и добавлять файлы в & quot; / var / www & quot; ? или просто использовать sudo adduser <username> www-data
  2. Установить vsftpd sudo apt-get install vsftpd
  3. Настроить vsftpd для удаленного доступа: sudo nano /etc/vsftpd.conf и внутри файла
    chroot_local_user=YES
    
    и обеспечить это :
    #chroot_list_enable=YES
    
    согласно документации .
  4. Restart nsftp: sudo service vsftpd restart
  5. Настроить домашний каталог пользователя в веб-каталог (не в /home):
    sudo usermod -d /var/www/mysite/ftpaccessdir <username>
    
  6. Настроить ssh chroot
    sudo nano /etc/ssh/sshd_config
    
    добавить следующее в конец:
    Subsystem  sftp  internal-sftp
    Match user <username>
        ChrootDirectory /var/www/site
        ForceCommand internal-sftp
    AllowTcpForwarding no
    
    и убедиться, что дальше в файле, который это закомментирован (т.е. перед тем, который вы просто добавлено)
    #Subsystem sftp /usr/lib/openssh/sftp-server
    
  7. Перезапустить ssh
    sudo service ssh restart
    
  8. Изменить разрешения для apache:
    chown root:root /var/www
    chown root:root /var/www/site
    chmod 755 /var/www
    
    Как в документах здесь .
  9. Убедитесь, что ваш каталог имеет доступ к www-данным
    sudo chown -R www-data:www-data /var/www/site
    chmod 755 /var/www/site
    
15
ответ дан 15 August 2018 в 19:09
  • 1
    Я выполнил эту инструкцию, но у меня было отказано в завершении связи, когда я добавляю эти строки. Подсистема sftp internal-sftp Match user & lt; имя_пользователя & gt; ChrootDirectory / var / www / site ForceCommand internal-sftp AllowTcpForwarding no – Ata 12 June 2014 в 13:14
  • 2
    У меня также такая же проблема с Ubuntu 14.04 – torayeff 17 October 2014 в 11:51
  • 3
    У меня такая же проблема! – maxisme 17 March 2015 в 20:13
  • 4
    Как на этапе 9 у вас есть chown root:root /var/www/site, чтобы вернуть его обратно на sudo chown -R www-data:www-data /var/www/site на шаге 10, это преднамеренно? – JohnnyQ 14 July 2016 в 17:41
  • 5
    Это не работает для меня – Linga 28 November 2016 в 15:44

Если вы получаете сообщение об ошибке отказа в конце, убедитесь, что «Подсистема sftp internal-sftp» находится после «UsePAM yes». Если нет, то обновите и перезапустите ssh, и он сработал.

2
ответ дан 25 May 2018 в 10:50

Если вы получаете сообщение об ошибке отказа в конце, убедитесь, что «Subsystem sftp internal-sftp» находится после «UsePAM yes». Если нет, то обновите и перезапустите ssh и он сработает.

2
ответ дан 25 July 2018 в 18:43

Если вы получаете сообщение об ошибке отказа в конце, убедитесь, что «Subsystem sftp internal-sftp» находится после «UsePAM yes». Если нет, то обновите и перезапустите ssh и он сработает.

2
ответ дан 31 July 2018 в 10:45

Если вы получаете сообщение об ошибке отказа в конце, убедитесь, что «Subsystem sftp internal-sftp» находится после «UsePAM yes». Если нет, то обновите и перезапустите ssh и он сработает.

2
ответ дан 2 August 2018 в 00:52

Если вы получаете сообщение об ошибке отказа в конце, убедитесь, что «Subsystem sftp internal-sftp» находится после «UsePAM yes». Если нет, то обновите и перезапустите ssh и он сработает.

2
ответ дан 4 August 2018 в 16:23

Если вы получаете сообщение об ошибке отказа в конце, убедитесь, что «Subsystem sftp internal-sftp» находится после «UsePAM yes». Если нет, то обновите и перезапустите ssh и он сработает.

2
ответ дан 6 August 2018 в 01:02

Если вы получаете сообщение об ошибке отказа в конце, убедитесь, что «Subsystem sftp internal-sftp» находится после «UsePAM yes». Если нет, то обновите и перезапустите ssh и он сработает.

2
ответ дан 7 August 2018 в 18:29

Если вы получаете сообщение об ошибке отказа в конце, убедитесь, что «Subsystem sftp internal-sftp» находится после «UsePAM yes». Если нет, то обновите и перезапустите ssh и он сработает.

2
ответ дан 10 August 2018 в 07:10

Если вы получаете сообщение об ошибке отказа в конце, убедитесь, что «Subsystem sftp internal-sftp» находится после «UsePAM yes». Если нет, то обновите и перезапустите ssh и он сработает.

2
ответ дан 15 August 2018 в 19:09

Другие вопросы по тегам:

Похожие вопросы: