Archive

Archive for 28 marzo 2014

SSH and Windows

marzo 28, 2014 Deja un comentario

You can configure a SSH server in Windows installing freeSSHd. Once installed you have to create an user and will be used to access to the Windows server. To be accesible to also need to open the 22 port in the Windows firewall.

If you use a Windows virtual machine to access another server because a VPN, you can connect from your Linux console to the destination server using this Windows as a proxy. For example, the final server IP is 192.168.1.25 and the Windows IP is 192.168.0.12. The port forwarding will be from 192.168.0.12:5555 to 192.168.1.25:22. Yo can achieve this in several ways:

Windows provided solution

Creation rule:

netsh interface portproxy add v4tov4 listenport=5555 listenaddress=0.0.0.0 connectport=22 connectaddress=192.168.1.25

Delete rule:

netsh interface portproxy delete v4tov4 listenport=5555 listenaddress=0.0.0.0

Using an application

Install the application PassPort. Yo must run this application as Administration to be able to setup the forward.

Using Putty

Putty can also configure port forwarding (in this case it’s called SSH Tunneling because the forward is secured because it’s encrypted). Go to Connection > SSH > Tunnels and create with this data:

  • Local ports accept connections from other hosts: Checked
  • Source port: 5555
  • Destination: 192.168.1.25:22
  • Local: Checked
  • Auto: Checked

Once completed, click on the Add button.

Categorías:Debian, Ubuntu Etiquetas: , ,

Cambio en caliente de clases en Tomcat con IntelliJ

marzo 18, 2014 Deja un comentario

De acuerdo con su página, la DCEVM (Dynamic Code Evolution Virtual Machine – Máquina Virtual de Evolución de Código Dinámico) es una modificación de máquina virtual de Java HotSpot (TM) que permite cambios de las clases cargadas en tiempo de ejecución. Las máquina virtual que solemos usar permite cambios en el cuerpo de los métodos, pero no añadir nuevos métodos o cambiar la definición de los mismos.

Cuando estás desarrollando es bastante habitual que tengas que cambiar la implementación de una clase, y muchas veces ese cambio hace que debas parar el servidor de aplicaciones y arrancarlo de nuevo para que los cambios surtan efectos. Dependiendo de la complejidad de la aplicación, estos tiempos de parada e inicio pueden ser relativamente largos y aburridos. Gracias a DCEVM el esperar se va a acabar 🙂

Sé que existe otros métodos para conseguir este mismo objetivo, como JRebel que funciona bastante bien. De hecho se publicita argumentando que estos tiempos de reinicio cuestan dinero a la empresa que mediante su solución ahorra dinero. No tengo nada en contra de JRebel, pero DCEVM funciona realmente bien y además es gratis 😛

Desde hace unos meses uso IntelliJ, de modo que explicaré cómo configurarlo para usar esta máquina virtual alternativa. Vamos a File > Settings > Plugins, clickamos en Browse repositories y buscamos “DCEVM integration”. Una vez instalado debemos reiniciar el IDE. Al iniciar IntelliJ nos mostrará un mensaje “DCEVM is avaiblable fro your environment: Would you like to download it?” para decirnos que existe una versión disponible de DCEVM y si la queremos bajar. Obviamente, si que queremos.

Una vez bajada, vamos a la configuración de Tomcat (Edit Configuration…) y en la solapa Startup/Connection seleccionados Debug y añadimos la variable JAVA_HOME con la ubicación local de DCEVM. En la solapa Server seleccionamos Update classes and resources para la opción On frame deactivation.

Ahora cuando arranques Tomcat en modo debug podrás hacer las modificaciones que quieras sin tener que reinciarlo.

Categorías:Java Etiquetas: , ,