Quando tento colocar meus arquivos da web /var/www
no apache na minha instância do ec2 Ubuntu, está me dando um erro informando que não tenho permissão.
Permission denied.
Error code: 3
Error message from server: Permission denied
Request code: 3
Como me permito fazer isso ou qual é a melhor maneira de copiar arquivos no /var/www
WinSCP?
apache-http-server
amazon-ec2
winscp
andrew
fonte
fonte
Habilite permissões de gravação para o usuário efetuar login através do WinSCP. Existem duas maneiras de fazer isso.
A primeira maneira é alterar as permissões na pasta para permitir que alguém escreva nela. Esta não é a melhor segurança.
A segunda maneira é adicionar seu usuário ao grupo que possui o diretório e, em seguida, definir permissões para o grupo gravar no diretório.
Descubra quem é o proprietário do diretório:
Você verá algo como: drwxr-x --- 9 www-data www-data 4096 14 de julho de 2009 www O importante a ser observado são os dois nomes raiz e raiz. Nesse caso, o proprietário do diretório é www-data e o grupo do diretório é www-data. Então agora você adicionará seu usuário ao grupo www-data.
Agora basta adicionar a permissão de gravação ao grupo.
Agora
deve retornar: drwxrwx --- 9 www-data www-data 4096 14 de julho de 2009 www
Com isso, você poderá gravar no diretório, sem abrir privilégios de gravação para todos.
fonte
no ec2 isso funciona para mim. entre na caixa via massa com o usuário "ec2-user" e use os comandos:
Nota: isso concede acesso de gravação para todos os usuários.
Agora deve ser capaz de escrever usando o WinScp.
fonte
O tutorial a seguir funcionou para mim e fornece capturas de tela úteis. Para fazer o login como um usuário comum com permissões sudo, é necessário ajustar algumas opções do WinSCP: http://cvlive.blogspot.de/2014/03/how-to-login-in-as-ssh-root-user-from.html
Defina o protocolo Session / File como: SCP, digite ip do host / instância, porta - geralmente 22 e nome de usuário comum. Digite as credenciais da senha se o login exigir. Adicione o arquivo de chave privada correspondente do usuário em Avançado / SSH / Autenticação.
Desmarcar Avançado / SSH / Autenticação / tentativa de autenticação "teclado interativo" deve permitir Avançado / Ambiente / Shell SCP / Shell / Shell: sudo su - para fornecer permissões de sudo para acessar diretórios de servidor da Web como um usuário não proprietário.
Atualização: 08/03/2017
O log do WinSCP pode ser útil para solucionar problemas.
winscp.net/eng/docs/logging:
Dependendo dos erros de conexão do WinSCP, algumas instalações de servidor podem precisar de uma diretiva adicionada ao arquivo (Ubunto, CentOS, outro servidor Linux) / etc / sudoers para não exigir TTY para um usuário especificado. Criar um arquivo em /etc/sudoers.d/ (usando uma ferramenta como Amazon Command Line Interface ou PuTTY) pode ser uma opção melhor do que editar / etc / sudoers. Algumas versões do / etc / sudoers recomendam:
Ao editar um arquivo sudoers (como root) pela linha de comando, o comando 'visudo' deve ser usado para abrir o arquivo, pois ele analisará o arquivo quanto a erros de sintaxe. Os arquivos /etc/sudoers.d/ geralmente pertencem ao root e são modificados com permissões mínimas. O arquivo / etc / sudoers padrão pode ser referenciado, pois deve ter automaticamente permissões chmod recomendadas na instalação. por exemplo: 0440 r - r -----.
superuser.com/a/869145:
Links úteis:
Fórum WinSCP: - winscp.net/forum/viewtopic.php?t=3046 - winscp.net/forum/viewtopic.php?t=2109
Doc do WinSCP: https://winscp.net/eng/docs/faq_su
As instruções no Ubuntu Apache / etc / sudoers recomendam adicionar diretivas ao /etc/sudoers.d em vez de editar o / etc / sudoers diretamente. Dependendo da instalação, adicionar uma diretiva ao /etc/sudoers.d/cloud-init também pode funcionar.
Pode ser útil criar um usuário de teste SSH com permissões sudo, seguindo as etapas fornecidas na documentação da instância para garantir que o usuário tenha as configurações de instância recomendadas e que quaisquer atualizações nos arquivos do sudoer do servidor possam ser efetuadas e removidas sem afetar outros usuários.
fonte
Você precisa dar ao usuário permissões de gravação, lembre-se das permissões anteriores usando
stat /var/www
.Em seguida, você pode alterá-los
sudo chmod 666 /var/www
e alterá-los mais tarde, quando necessário.Consulte
man chmod
eman sudo
ao lado de outros manuais de permissão de arquivos na internet para obter mais informações ...fonte