Skip to content

Ajaxterm + Apache + SSL

Después de buscar y buscar llegue a un tutorial de como configurar Ajaxterm de forma segura utilizando el servidor Apache y el protocolo SSL. Ajaxterm es una aplicación escrita en Python que nos permite tener acceso remoto a una máquina a través de una terminal común a todos los sistemas GNU/Linux pero con la diferencia que es vía web, por eso mismo es necesario la utilización del protocolo SSL el que hace que la información viaje encripatada.

Ahora les voy a dejar los pasos que segui pero con algunos cambios para llegar a tener todo configurado siguiendo el tutorial que les mencione, espero les sirva como a mi.

Instalamos el servidor web Apache:

# apt-get install apache2

Habilitamos los modulos proxy para apache:

# a2enmod proxy_http
# a2enmod proxy

Instalamos SSL y creamos el certificado:

# apt-get install openssl # apt-get install ssl-cert
# mkdir /etc/apache2/ssl
# /usr/sbin/make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem

Al configurarlo nos pedira el nombre de dominio entonces en vez de “localhost” como aparece colocaremos NuestroDominio con el que accederemos a nuestra máquina.

Habilitamos el ssl:

# a2enmod ssl

Instalamos ajaxterm y lo iniciamos:

# apt-get install ajaxterm
# /etc/init.d/ajaxterm start

Si nuestro puerto SSH no es el default (22) debemos cambiarlo para el servicio de ajaxterm haciendo:

# nano /etc/init.d/ajaxterm

SERVERPORT = 22

Creamos un nuevo archivo de host virtual, tener en cuenta que para mi ajaxterm utilice el puerto 8443 asi que dependiendo del que ustedes eligan tendran que cambiarlo en el archivo:

# nano /etc/apache2/sites-available/ajaxterm

************************************************************

Listen 8443

<VirtualHost *:80>
ServerAdmin webmaster@localhost

DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory “/usr/lib/cgi-bin”>
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog /var/log/apache2/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined

Alias /doc/ “/usr/share/doc/”
<Directory “/usr/share/doc/”>
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

</VirtualHost>

NameVirtualHost *:8443

<VirtualHost *:8443>
ServerName NuestroDominio
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/apache.pem

# Suppresses the Via header
ProxyVia Off
# Do not flood the log
#CustomLog /var/log/apache2/access.log combined env=!dontlog
#SetEnvIf Request_URI “^/ajaxterm/u” dontlog

ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:8022/
ProxyPassReverse / http://localhost:8022/
</VirtualHost>

************************************************************

Habilitamos el ajaxterm creado y reiniciamos los servicios:

# a2ensite ajaxterm
# /etc/init.d/apache2 restart
# /etc/init.d/ajaxterm restart

Ahora si hemos terminado y ya tenemos configurado ajaxterm con el protocolo https para poder acceder en forma remota y segura a nuestra máquina, podemos probarlo haciendo:

https://NuestroDominio:8443

o en forma local:

https://localhost:8443

Acá les dejo una captura de como deberían verlo:

 

Nota: Si en el momento en que reiniciamos el servidor apache nos sale el siguiente error:

“apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName”

la solución es editar el archivo httpd.conf:

#nano /etc/apache2/httpd.conf

agregandole la línea:

ServerName localhost

Compartí con tus amigos...Share on FacebookTweet about this on TwitterShare on LinkedInEmail this to someone

4 Comments

  1. Nicolás Nicolás

    Buen post +10 😛

  2. Fernando Rueda Fernando Rueda

    Perrito una pregunta, yo lo encontre ne el dia de Hoy y pues he bscado informacion, si usted ya lo probo me podria indicar de su experiencia, que tan diferente es al Putty ?? ….. y que tal va con las funciones de PHP ?? …….

    Buen Post .

    • La ventaja de este sistema puede utilizarse a través del navegador independientemente del sistema operativo que corra en la pc, en similitudes es lo mismo que el putty o una terminal en linux.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

WordPress SEO fine-tune by Meta SEO Pack from Poradnik Webmastera