Когда я пытаюсь поместить свои веб-файлы /var/www
в apache на моем экземпляре ec2 Ubuntu, он выдает ошибку, в которой говорится, что у меня нет разрешения.
Permission denied.
Error code: 3
Error message from server: Permission denied
Request code: 3
Как я могу дать себе разрешение сделать это или как лучше копировать файлы с /var/www
помощью WinSCP?
Включите разрешения на запись для пользователя, входящего в WinSCP. Есть два способа сделать это.
Первый способ - изменить права доступа к папке, чтобы каждый мог писать в нее. Это не лучшая безопасность.
Второй способ - добавить пользователя в группу, владеющую каталогом, а затем установить разрешения для записи группы в каталог.
Узнайте, кому принадлежит каталог:
Вы увидите что-то вроде: drwxr-x --- 9 www-data www-data 4096 14 июля 2009 г. www Важно отметить два имени root и root. В этом случае владельцем каталога является www-data, а группой каталога является www-data. Теперь вы добавите своего пользователя в группу www-data.
Теперь просто добавьте разрешение на запись в группу.
Сейчас
должен вернуть: drwxrwx --- 9 www-data www-data 4096 14 июля 2009 г. www
Благодаря этому вы сможете писать в каталог, не открывая при этом права на запись для всех.
источник
на ec2 это работает для меня. войти в ящик через putty с пользователем "ec2-user" и использовать команды:
Примечание: это предоставляет доступ на запись для всех пользователей.
Теперь должен иметь возможность писать с помощью WinScp.
источник
Следующий урок работал для меня и предоставляет полезные скриншоты. Вход в систему как обычный пользователь с разрешениями sudo просто требует настройки нескольких параметров WinSCP: http://cvlive.blogspot.de/2014/03/how-to-login-in-as-ssh-root-user-from.html
Установите протокол сеанса / файла на: SCP, введите IP-адрес хоста / экземпляра, порт - обычно 22 и обычное имя пользователя. Введите пароль, если этого требует логин. Добавьте соответствующий файл закрытого ключа пользователя в Advanced / SSH / Authentication.
Снятие флажка Advanced / SSH / Аутентификация / попытка «интерактивной клавиатуры» аутентификации должно позволить Advanced / Environment / SCP Shell / Shell / Shell: sudo su - предоставить разрешения sudo для доступа к каталогам веб-сервера от имени пользователя, не являющегося владельцем.
Обновление: 08.03.2017
Ведение журнала WinSCP может быть полезно для устранения проблем.
winscp.net/eng/docs/logging:
В зависимости от ошибок подключения WinSCP для некоторых установок серверов может потребоваться добавление директивы в файл (Ubunto, CentOS, other-Linux-Server) / etc / sudoers, чтобы не требовать TTY для указанного пользователя. Создание файла в /etc/sudoers.d/ (с использованием такого инструмента, как интерфейс командной строки Amazon или PuTTY) может оказаться более подходящим вариантом, чем редактирование / etc / sudoers. Некоторые версии / etc / sudoers рекомендуют это:
При редактировании файла sudoers (с правами root) через командную строку следует использовать команду visudo, чтобы открыть файл, поскольку он будет анализировать файл на наличие синтаксических ошибок. Файлы /etc/sudoers.d/ обычно принадлежат root и chmoded с минимальными правами доступа. На файл / etc / sudoers по умолчанию можно ссылаться, так как он должен автоматически рекомендовать разрешения chmod при установке. например: 0440 r - r -----.
superuser.com/a/869145:
Полезные ссылки:
Форум WinSCP: - winscp.net/forum/viewtopic.php?t=3046 - winscp.net/forum/viewtopic.php?t=2109
Документ WinSCP: https://winscp.net/rus/docs/faq_su
Инструкции в Ubuntu Apache / etc / sudoers рекомендует добавлять директивы в /etc/sudoers.d, а не редактировать / etc / sudoers напрямую. В зависимости от установки добавление директивы в /etc/sudoers.d/cloud-init также может работать.
Может оказаться полезным создать тестового пользователя SSH с разрешениями sudo, выполнив шаги, приведенные в документации к экземпляру, чтобы убедиться, что пользователь рекомендовал настройки экземпляра и любые обновления файлов sudoer на сервере можно выполнять и удалять, не затрагивая других пользователей.
источник
Вы должны дать пользователю права на запись, помните предыдущие разрешения, используя
stat /var/www
.Затем вы можете изменить их с помощью
sudo chmod 666 /var/www
и изменить их позже, когда это необходимо.Проконсультируйтесь
man chmod
иman sudo
вместе с другими руководствами по разрешению файлов в Интернете для получения дополнительной информации ...источник