Al usar el archivo .htaccess aparece ell siguiente error:
500 Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator at webmaster@localhost to inform them of the time this error occurred, and the actions you performed just before this error.
More information about this error may be available in the server error log.
El error se puede deber a muchas razones, sin embargo, si estas usando un archivo .htaccess pasa por que el módulo rewrite debe ser explícitamente activado en el servidor Apache2 siempre que lo estes ejecutando dentro de un servidor Debian, ya que por default viene desactivado.
Para activar el módulo rewrite dentro de Debian simplemente debes ejecutar el siguiente comando:
sudo a2enmod rewrite
con esto debes reiniciar el servidor Apache2 con el comando que te dejo a continuación:
sudo systemctl reload apache2
Si deseas desactivar el módulo rewrite debes ejecutar el siguiente comando
sudo a2dismod rewrite
Si el error no desaparece al hacer con la configuración anterior entonces es probable que el archivo .htaccess no este correctamente configurado, revisa que este correctamente configurado, te dejo un ejemplo:
Para controlar nuestros servidores en la nube linus en la nube podemos hacerlo de dos formas, usando contraseña y usuario y por medio de una clave publica, con esta última no nos pedirá clave, ademas de ser práctico es mucho más seguro usar el método de la llave pública, por lo que te explicaré como como configurarlo.
En este archivo se puede configurar si el acceso se hace por medio de contraseña o con llave pública, con esta ultima creamos una llave en nuestro equipo local y luego debemos subirla a nuestro servidor lo que nos permite logearnos sin ingresar contraseña
Paso uno en nuestro equipo local generar una nueva clave, sustituimos la que existe en caso que lo pida y omitimos poner contraseña, si ponemos contraseña cada vez que usemos la llave pública nos pedirá esa contraseña
ssh-keygen
/home/username/.ssh/id_rsa already exists.
Overwrite (y/n)?
generará algo como lo siguiente
Your identification has been saved in /home/username/.ssh/id_rsa.
Your public key has been saved in /home/username/.ssh/id_rsa.pub.
The key fingerprint is:
a9:49:EX:AM:PL:E3:3e:a9:de:4e:77:11:58:b6:90:26 username@203.0.113.0
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. |
| ..S |
| o o. |
| =o.+. |
|. =++.. |
|o=++. |
+-----------------+
El archivo que contiene la llave publica está en la maquina local, debemos copiar esa llave y pegarla en el servidor de la nube al que nos deseamos conectar
cat ~/.ssh/id_rsa.pub
copiamos la llave y la vamos ir entramos al servidor
en el servidor buscamos este archivo
nano ~/.ssh/authorized_keys
si el archivo no existe podemos crearlo, este archivo será el que se consultará cada que ingrese al servidor, por medio del usuario actual
pegamos dentro del archivo la llave que copiamos al portapapeles y vamos a dar permisos a ese archivo
chmod 700 ~/.ssh
chmor 600 ~/.ssh/authorized_keys
listo con esto ya podemos ingresar al servidor con el comando ssh con el usuario e IP correspondiente
ssh user@ippublic
ahora que ya podemos ingresar sin contraseña hay que deshabilitar el acceso por contraseña esto mejora la seguridad
hay que ir al archivo
vi /etc/ssh/sshd_config
en ese archivo debemos buscar la palabra
PasswordAuthentication yes
y lo ponemos en no
PasswordAuthentication no
ahora reiniciamos el servidor para que los cambien operen
reboot