Buscar aquí

viernes, 31 de octubre de 2014

Agregar tipos de archivo a Bluefish

Uno de los editores por defecto que tiene ubuntu es bluefish. Cuenta con resaltado de sintaxis y reconoce muchos lenguajes, pero no los tiene todos, por ejemplo la extensión ctp, que es la que usa CakePHP[1] para mostrar las vistas. Entonces, éste tipo de archivo se ve en blanco y negro. Horrible.

Otra de las cosas que tiene bluefish es que no se puede añadir otro tipo de archivo desde la interfaz gráfica, por lo que aquí está una solución a ese problema.

Lo hacemos con ctp, que es igual a php, pero para cake.

Se copia el archivo donde se especifica cómo se comportará el editor para un lenguaje (php) con el nombre que queremos que aparezca (ctp)

sudo cp /usr/share/bluefish/bflang/php.bflang2 /usr/share/bluefish/bflang/ctp.bflang2

Luego se edita ese archivo

sudo gedit /usr/share/bluefish/bflang/ctp.bflang2

Y reemplazamos con coincidencias de capitalización las palabras PHP por CTP y php por ctp

Y listo!

Al iniciar bluefish coloreará nuestro ctp

[1]http://cakephp.org/

miércoles, 29 de octubre de 2014

SFTP con otra instancia de SSH

Buen día

Supongamos que se contrata un servicio de VPS al que se puede acceder solo por ssh y con una llave como en amazon ec2, y que este VPS va a ser un servidor web. Los usuarios desarrolladores del VPS necesitan acceder a este servidor, pero el administrador no puede dar la llave por seguridad. ¿Solución? Un servidor ftp, por ejemplo, pero ftp es inseguro [1], pero podemos asegurar mediante ssl o pasarlo por un túnel ssh. Supongamos que no queremos todavía ssl, y accedemos a la segunda opción. ¿Cómo hacerlo en la instancia de amazon?

Bueno, he aquí una solución:

Seleccionamos un puerto que no esté siendo usado y lo abrimos en el firewall de amazon añadiéndolo a las reglas de seguridad del grupo. Para el ejemplo será el 2221.

Se crea un usuario para editar los archivos web. En amazon el usuario por defecto es www-data. Así que podemos cambiarlo. Para nuestro ejemplo, creamos el usuario con nombre http. Hacemos que apache arranque con este usuario.

Detenemos apache

sudo service apache2 stop

Editamos /etc/apache2/envvars

Cambiamos www-data por http

Editamos /etc/passwd

Cambiamos /home/http por /var/www

Cambiamos los permisos del directorio /var/www PERO no del directorio en si. Este debe ser de root

chown http:http -R /var/www
chown root:root /var/www


Reiniciamos apache

sudo service apache2 start

Copiamos /etc/ssh/sshd_config con otro nombre /etc/ssh/sshd_ftp_config y editamos ese archivo

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_ftp_config

sudo nano /etc/ssh/sshd_ftp_config


Cambiamos 22 por 2221

Cambiamos ChallengeResponseAuthentication no por ChallengeResponseAuthentication yes

Cambiamos PasswordAuthentication no por PasswordAuthentication yes

Cambiamos Subsystem sftp /usr/lib/openssh/sftp-server por Subsystem sftp internal-sftp

Y agregamos al final

Match User http
    ChrootDirectory /var/www
    ForceCommand internal-sftp
    AllowTCPForwarding no
    X11Forwarding no

Y arrancamos el nuevo servicio

sudo /usr/sbin/sshd -f /etc/ssh/sshd_ftp_config

Y listo, Ya podemos conectarnos por filezilla por sftp

sftp://[ip] 

[1]http://juan0022.blogspot.com/2012/09/ftp-es-un-protocolo-inseguro.html

martes, 28 de octubre de 2014

Descargar fuentes de Mac y iOS

Esto es para que no se me olvide y, para futuras referencias. Para descargar las fuentes de Mac e iOS, proporcionadas oficialmente por Apple, ir a la página:

http://opensource.apple.com/tarballs/