Kiedy próbuję umieścić moje pliki internetowe /var/www
w apache na mojej instancji ec2 Ubuntu, pojawia się błąd informujący, że nie mam uprawnień.
Permission denied.
Error code: 3
Error message from server: Permission denied
Request code: 3
Jak mogę sobie na to pozwolić lub jaki jest najlepszy sposób kopiowania plików za /var/www
pomocą WinSCP?
apache-http-server
amazon-ec2
winscp
Andrzej
źródło
źródło
Włącz uprawnienia do zapisu dla użytkownika logującego się przez WinSCP. Można to zrobić na dwa sposoby.
Pierwszym sposobem jest zmiana uprawnień do folderu, aby umożliwić każdemu pisanie w nim. To nie jest najlepsze bezpieczeństwo.
Drugim sposobem jest dodanie użytkownika do grupy będącej właścicielem katalogu, a następnie ustawienie uprawnień dla grupy do zapisu w katalogu.
Dowiedz się, kto jest właścicielem katalogu:
Zobaczysz coś takiego: drwxr-x --- 9 www-data www-data 4096 14 lipca 2009 2009 Ważne jest, aby zwrócić uwagę na dwie nazwy root i root. W tym przypadku właścicielem katalogu jest www-data, a grupą katalogu jest www-data. Teraz dodasz użytkownika do grupy danych www.
Teraz wystarczy dodać uprawnienie do zapisu do grupy.
Teraz
powinien zwrócić: drwxrwx --- 9 www-data www-data 4096 14 lipca 2009 www
Dzięki temu będziesz mógł pisać do katalogu, nie otwierając przy tym uprawnień do zapisu dla wszystkich.
źródło
na ec2 to działa dla mnie. zaloguj się do skrzynki za pomocą putta z użytkownikiem „ec2-user” i użyj poleceń:
Uwaga: zapewnia to dostęp do zapisu wszystkim użytkownikom.
Powinien być teraz w stanie pisać za pomocą WinScp.
źródło
Poniższy samouczek działał dla mnie i zawiera pomocne zrzuty ekranu. Logowanie się jako zwykły użytkownik z uprawnieniami sudo wymagało jedynie ulepszenia kilku opcji WinSCP: http://cvlive.blogspot.de/2014/03/how-to-login-in-as-ssh-root-user-from.html
Ustaw Protokół sesji / pliku na: SCP, wprowadź adres IP hosta / instancji, port - zwykle 22 i zwykłą nazwę użytkownika. Wprowadź dane uwierzytelniające hasło, jeśli wymaga tego login. Dodaj odpowiedni plik klucza prywatnego użytkownika w Advanced / SSH / Authentication.
Odznaczenie Zaawansowane / SSH / Uwierzytelnianie / próba „interaktywnej klawiatury” powinna umożliwić Advanced / Environment / SCP Shell / Shell / Shell: sudo su - aby zapewnić uprawnienia sudo do dostępu do katalogów serwera WWW jako użytkownik niebędący właścicielem.
Aktualizacja: 08.03.2017
Rejestrowanie w WinSCP może być pomocne w rozwiązywaniu problemów.
winscp.net/eng/docs/logging:
W zależności od błędów połączenia WinSCP, niektóre instalacje serwerów mogą wymagać dodania dyrektywy do pliku (Ubunto, CentOS, other-Linux-Server) / etc / sudoers, aby nie wymagać TTY dla określonego użytkownika. Tworzenie pliku w /etc/sudoers.d/ (przy użyciu narzędzia takiego jak Amazon Command Line Interface lub PuTTY) może być lepszą opcją niż edytowanie / etc / sudoers. Niektóre wersje / etc / sudoers zalecają:
Podczas edycji pliku sudoers (jako root) za pomocą wiersza polecenia należy użyć polecenia „visudo”, aby otworzyć plik, ponieważ parsuje on plik pod kątem błędów składniowych. Pliki /etc/sudoers.d/ są zazwyczaj własnością roota i chmoded z minimalnymi uprawnieniami. Do domyślnego pliku / etc / sudoers można się odwoływać, ponieważ powinien automatycznie mieć zalecane uprawnienia chmod podczas instalacji. np .: 0440 r - r -----.
superuser.com/a/869145:
Przydatne linki:
Forum WinSCP: - winscp.net/forum/viewtopic.php?t=3046 - winscp.net/forum/viewtopic.php?t=2109
Dokument WinSCP: https://winscp.net/eng/docs/faq_su
Instrukcje w Ubuntu Apache / etc / sudoers zalecają dodawanie dyrektyw do /etc/sudoers.d zamiast bezpośredniej edycji / etc / sudoers. W zależności od instalacji może również działać dodanie dyrektywy do /etc/sudoers.d/cloud-init.
Pomocne może być utworzenie użytkownika testowego SSH z uprawnieniami sudo, wykonując kroki przedstawione w dokumentacji instancji, aby upewnić się, że użytkownik zalecił ustawienia instancji, a wszelkie aktualizacje plików sudoer serwera mogą zostać wprowadzone i usunięte bez wpływu na innych użytkowników.
źródło
Musisz dać użytkownikowi uprawnienia do zapisu, pamiętaj poprzednie uprawnienia za pomocą
stat /var/www
.Następnie możesz je zmienić za pomocą
sudo chmod 666 /var/www
i w razie potrzeby zmienić później.Aby uzyskać więcej informacji, zapoznaj się z innymi instrukcjami obsługi plików w Internecie
man chmod
iman sudo
obok nich.źródło