Cuando intento colocar mis archivos web /var/www
en apache en mi instancia de ec2 Ubuntu, me da un error que indica que no tengo permiso.
Permission denied.
Error code: 3
Error message from server: Permission denied
Request code: 3
¿Cómo me doy permiso para hacer esto o cuál es la mejor manera de copiar archivos /var/www
con WinSCP?
apache-http-server
amazon-ec2
winscp
Andrés
fuente
fuente
Habilite los permisos de escritura para el usuario que inicia sesión a través de WinSCP. Hay dos maneras de hacer esto.
La primera forma es cambiar los permisos en la carpeta para permitir que cualquiera pueda escribir en ella. Esta no es la mejor seguridad.
La segunda forma es agregar su usuario al grupo que posee el directorio y luego establecer permisos para que el grupo escriba en el directorio.
Averigüe quién es el propietario del directorio:
Verá algo como: drwxr-x --- 9 www-data www-data 4096 14 de julio de 2009 www Lo importante a tener en cuenta son los dos nombres raíz y raíz. En este caso, el propietario del directorio es www-data, y el grupo del directorio es www-data. Así que ahora agregará su usuario al grupo www-data.
Ahora solo agregue el permiso de escritura al grupo.
Ahora
debería volver: drwxrwx --- 9 www-data www-data 4096 14 de julio de 2009 www
Con esto, podrá escribir en el directorio, sin abrir privilegios de escritura para todos.
fuente
en ec2 esto funciona para mí. inicie sesión en box a través de masilla con el usuario "ec2-user" y use los comandos:
Nota: esto otorga acceso de escritura para todos los usuarios.
Ahora debería poder escribir usando WinScp.
fuente
El siguiente tutorial funcionó para mí y proporciona capturas de pantalla útiles. Iniciar sesión como usuario normal con permisos de sudo simplemente requería ajustar algunas opciones de WinSCP: http://cvlive.blogspot.de/2014/03/how-to-login-in-as-ssh-root-user-from.html
Establezca el protocolo de sesión / archivo en: SCP, ingrese la dirección IP de host / instancia, el puerto, generalmente 22, y el nombre de usuario normal. Ingrese las credenciales de contraseña si el inicio de sesión lo requiere. Agregue el archivo de clave privada correspondiente del usuario en Avanzado / SSH / Autenticación.
Desmarcar Avanzado / SSH / Autenticación / intento de autenticación "interactiva con el teclado" debería permitir Avanzado / Entorno / SCP Shell / Shell / Shell: sudo su - para proporcionar permisos de sudo para acceder a los directorios del servidor web como usuario no propietario.
Actualizar: 03/08/2017
El registro de WinSCP puede ser útil para solucionar problemas.
winscp.net/eng/docs/logging:
Dependiendo de los errores de conexión de WinSCP, algunas instalaciones de servidores pueden necesitar una directiva agregada al archivo (Ubunto, CentOS, other-Linux-Server) / etc / sudoers para no requerir TTY para un usuario específico. Crear un archivo en /etc/sudoers.d/ (usando una herramienta como Amazon Command Line Interface o PuTTY) puede ser una mejor opción que editar / etc / sudoers. Algunas versiones de / etc / sudoers lo recomiendan:
Al editar un archivo sudoers (como raíz) a través de la línea de comandos, el comando 'visudo' debe usarse para abrir el archivo, ya que analizará el archivo en busca de errores de sintaxis. Los archivos /etc/sudoers.d/ generalmente son propiedad de root y están modelados con permisos mínimos. Se puede hacer referencia al archivo / etc / sudoers predeterminado, ya que debería tener automáticamente los permisos de chmod recomendados en la instalación. por ejemplo: 0440 r - r -----.
superuser.com/a/869145:
Enlaces Útiles:
Foro WinSCP: - winscp.net/forum/viewtopic.php?t=3046 - winscp.net/forum/viewtopic.php?t=2109
WinSCP Doc: https://winscp.net/eng/docs/faq_su
Las instrucciones en Ubuntu Apache / etc / sudoers recomiendan agregar directivas a /etc/sudoers.d en lugar de editar / etc / sudoers directamente. Dependiendo de la instalación, agregar directivas a /etc/sudoers.d/cloud-init puede funcionar también.
Puede ser útil crear un usuario de prueba SSH con permisos de sudo siguiendo los pasos proporcionados en la documentación de la instancia para garantizar que el usuario haya recomendado la configuración de la instancia y que cualquier actualización de los archivos de sudoer del servidor pueda realizarse y eliminarse sin afectar a otros usuarios.
fuente
Debe otorgar al usuario permisos de escritura, recuerde usar los permisos anteriores
stat /var/www
.Luego puede cambiarlos con
sudo chmod 666 /var/www
y volver a cambiarlos más tarde cuando sea necesario.Consulte
man chmod
yman sudo
junto con otros manuales de permisos de archivos en Internet para obtener más información ...fuente