Mostrando entradas con la etiqueta joomla. Mostrar todas las entradas
Mostrando entradas con la etiqueta joomla. Mostrar todas las entradas

lunes, 9 de julio de 2012

Cómo editar las CSS para CMS, joomlas, prestashops, wordpress...

En este artículo mostraré cómo se puede proporcionar el contenido de un portal LAMP originario de Linux para su modificación por parte de un diseñador en Offline.

El problema al que nos enfrentamos es muy común, tenemos nuestro servidor linux (en cloud) securizado y con los usuarios adecuados. Montamos las soluciones de content manager (dígase joomlas, prestashop, wordpress,demás..) y resulta que hay que modificar el diseño. Los diseñadores utilizan herramientas como dreamweaver y evidentemente a ellos no les importa los problemas de permisos, accesos, etc.... ¿Cómo podemos hacer para que puedan acceder o modificar los archivos necesarios?

Tenemos varias alternativas:

FTP

-En primer termino podemos pensar en montar un FTP al uso o un secure ftp. Esto que a priori parece una buena idea nos plantea más de un dolor de cabeza al tener que "vigilar" permisos y usuarios, además de abrir otra puerta en un servidor expuesto al mundo. Si seguimos por ese camino (no es el caso pero dejo la idea por si alguien la quiere utilizar) debemos asegurar la conexión mendiante una VPN al entorno, y despues configurar el FTP para que atienda llamadas sólo de la red interna de la VPN, amén de capar el puerto 21 en la red perimetral y crear usuario sin shell al efecto; y confiar en el usuario que no la lie parda, pero para eso tenemos las copias de seguridad.

Se crea el usario y se enjaula en la ruta var/www/dominiodediseno, alli a los ficheros se les otroga un chown del usuario creado para el diseñador, así no tendrá problema de permisos. Una vez allí podra crear o modificar el diseño, exportarlo a una plantilla (según la solución CMS) y nosotros nos encargaremos de cargarla en el entorno de producción.
A parte tenemos que crear dos listas, una para usuarios permitidos y otra para usuarios no permitidos, y habilitar esta función en el archivo de configuración del demonio de ftp.

Esta solucion nos proporciona las siguientes ventajas:

  • Propiedad de los ficheros en modificación
Se asegura la propiedad por nuestra parte de todos los ficheros modificados, ya que no viajan en pens,etc....

  • Copias de seguridad
Cada noche se realiza copia de seguridad del sistema de archivos, con lo que se tiene una versión del portal en desarrollo por si el diseñador lo necesitase.

  • Evita desplazamientos innecesarios

Al no haber intercambio físico de datos no hace falta tanto desplazamiento y la solución de diseño es muy subcontractable.

  • Visualización on-line de las modificaciones
Se puede ver en todo momento el progreso sin necesidad de molestar al diseñador


  • Captación de la velocidad real de carga
Al ser el mismo entorno de producción el diseñador puede evaluar los tiempos de carga del portal, valorando mejor los diseños.

  • Paso a producción inmediato
Es tan fácil como exportar el template modificado y por parte de un administrador realizar el cp desde var/www/diseno/templates a la web destino, entrar a prestashop y cargar la plantilla.

  • Trabajo con herramientas estándares y sin configuraciones difíciles
Las herramientas necesarias son:
  • VPN L2tp
  • Acceso FTP
  • Navegador
  • Compatible acceso dreamweaver por FTP
  • Compatible con MAC y Windows systems.

No ensuciamos máquina cliente, los datos no salen de nuestro server y se agiliza la disponibilidad de la información.



XAMPP-MAMP

Es una aplicación que contiene los servicios de APACHE-Mysql-PHP para poder montar este tipo de soluciones. Xampp compatible con windows y MAMP para Mac.

El proceso es totalmente diferente, ya que deberemos proporcionar una replica del portal en marcha. Esto se puede realizar copiando el contenido de nuestro servidor var/www/eldominioquesea a htdocs/eldominioquesea. Después crear la base de datos desde localhost/myphp e importar la copia de seguridad. Habrá que realizar algún ajuste más, ya que el portal deberá orientarse a la url localhost. A partir de hay se puede proporcionar al diseñador en un USB en el cual podra hacer y deshacer a sus anchas, ya que trabaja en local.

Ventajas:

  • No realizamos tareas extra en el servidor
  • No abrimos la VPN a personal externo







lunes, 20 de febrero de 2012

Utilizar SMTP server de gmail para servers en linux

Quien no se ha encontrado que cuando instala un paquete de crm,cms, e-commerce o cualquier herramienta/portal basado en Linux opensource ha querido tener las funcionalidades de envío de correo y no se ha visto capaz por varios motivos. Eso se puede solucionar utilizando el servidor SMTP de Gmail, que no se puede configurar como un postfix /relay normal, ya que pide conexiones seguras y certificado. No nos dejemos asustar, el proceso es fácil y lo detallo a continuación (nota: sobre Ubuntu):

Módulos necesarios:
Postfix y libsasl2-2 (instalables con apt-get install paquete )

Pasos:


      1. Instalación de libsasl2-2
        • sudo apt-get install libsasl2-2
          sudo apt-get install libsasl2-modules
      2.  Creación certificados
En raiz con usuario normal
/usr/lib/ssl/misc/CA.pl –newca
Esto creará el certificado, apuntar los diferentes apartados para después, ejemplo:
Making CA certificate
Generating a 1024 bit RSA private key
writing new private key to ?./demoCA/private/cakey.pem?
Enter PEM pass phrase: password
Verifying ? Enter PEM pass phrase: password
??
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ?.?, the field will be left blank.
??
Country Name (2 letter code) [US]: SP
State or Province Name (full name) []:Castillalamancha
Locality Name (eg, city) []:Albacete
Organization Name (eg, company) []:mycompany


Organizational Unit Name (eg, section) []:GRI
Common Name (eg, YOUR name) []:Miguel
Email Address []:username@gmail.com


Please enter the following “extra” attributes
to be sent with your certificate request
A challenge password []: [blanco a proposito]
An optional company name []:[blanco a proposito]
Using configuration from /usr/lib/ssl/openssl.cnf
Enter pass phrase for ./demoCA/private/cakey.pem: password
Check that the request matches the signature
Signature ok

      1. Creación de servidor de certificación
Introducir en una sola línea y con los datos adecuados :
openssl req -new -nodes –subj '/CN=miguel/O=mycompany/C=SP/ST=Castillalamancha/L=Albacete/emailAddress=username@gmail.com' -keyout YOURSERVER-key.pem -out YOURSERVER-req.pem -days 3650
      1. Firmar el certificado
openssl ca -out YOURSERVER-cert.pem -infiles YOURSERVER-req.pem
Using configuration from
/usr/lib/ssl/openssl.cnf
Enter pass phrase for ./demoCA/private/cakey.pem: [blanco a proposito]
Check that the request matches the signature
Signature ok
      1. Copiar los certificados a la carpeta de Postfix como root o sudo
# cd /home/youruserid/
# cp demoCA/cacert.pem YOURSERVER-key.pem YOURSERVER-cert.pem /etc/postfix
# chmod 644 /etc/postfix/YOURSERVER-cert.pem /etc/postfix/cacert.pem
# chmod 400 /etc/postfix/YOURSERVER-key.pem
      1. Modificación de fichero /etc/postfix/main.cf
## TLS Settings
#
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_tls_cert_file = /etc/postfix/YOURSERVER-cert.pem
smtp_tls_key_file = /etc/postfix/YOURSERVER-key.pem
smtp_tls_session_cache_database = btree:/var/run/smtp_tls_session_cache
smtp_use_tls = yes
smtpd_tls_CAfile = /etc/postfix/cacert.pem
smtpd_tls_cert_file = /etc/postfix/YOURSERVER-cert.pem
smtpd_tls_key_file = /etc/postfix/YOURSERVER-key.pem
smtpd_tls_received_header = yes
smtpd_tls_session_cache_database = btree:/var/run/smtpd_tls_session_cache
smtp_tls_loglevel = 2
smtpd_use_tls = yes
tls_random_source = dev:/dev/urandom
#
## SASL Settings
# This is going in to THIS server
smtpd_sasl_auth_enable = no
# We need this
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl/sasl_passwd
smtpd_sasl_local_domain = $myhostname
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtpd_sasl_application_name = smtpd


#Make sure the following lines are also in main.cf
relayhost = [smtp.gmail.com]:587
transport_maps = hash:/etc/postfix/transport
      1. Creación del fichero transport en /etc/postfix/
# vi /etc/postfix/transport


# Contents of /etc/postfix/transport
#
# This sends mail to Gmail
gmail.com smtp:[smtp.gmail.com]:587
#
      1. Crear el password SALS, poniendo nuestros datos de la cuenta gmail (crear una generica)
# cd /etc/postfix/sasl
# vi /etc/postfix/sasl/sasl_passwd



#contents of sasl_passwd
#
gmail-smtp.l.google.com youruser@gmail.com:password
smtp.gmail.com youruser@gmail.com:password
      1. Hashear los siguiente ficheros (los convertirá a .db)
# postmap /etc/postfix/sasl/sasl_passwd && postmap /etc/postfix/transport
      1. Reiniciar postfix y comprobar
# /etc/init.d/postfix restart


Instalar  mailutils
# which mails
# apt-get install mailutils
# which mailx
# echo "testing" |mailx -s "testing"
youruser@gmail.com


Los errores se pueden ver en:
# tail -f /var/log/mail.log

Tags

100 consejos 2 steps trouble 50gb cloud free acceso remoto acronis active directory activex AD administracion linux alta dyndns.com analytics android ape APN apt-get articulo request tracker 4 auditoria auditoría wireless b2b Backup backup on line backup online Backupify banco de españa Bancos bash bat bitlocker blogger_TID bloqueo usuario boomerang box box.net broute btrieve bugtraking bussines caducado cálculo callrecorder camara ip cambios catastro certificados Chrome cif Citrix Cloud cloud backup cloud computing cloud server cloudring cloudringapp.com cluod storage cmd cms CNMV comandos comercio electroinco Comisiones TPV computing condiciones tienda consola contraseña root cookie cookies Copia de seguridad copia seguridad correo correo electronico correo eléctronico cpu creacion servidor crm CSS desastre diagramly diferido directorio activo directorios disable dmesg Docs DOS drivers dropbox dropittome dropsync du du -sch dyndns e-commerce e-commerce mail shop ecommerce enviar mas tarde envío escritorio compartido esquemas estructura etiquetas inteligentes excel excepciones exclude dropbox exec Execpciones Java fhs ficheros find firewall firma fiscal flujo for formulario formularios free space ftp gdocs gdrive gmail gmail 2 pasos problema godaddy google apps google drive google history google search google+ GOYSCRIPT grabación de llamadas hacienda hang-out hangout hoja host dinamico i.e iass indra intalacion webmin interfaz metro internet explorer ip dinamica ipcam iva e-commerce Java joomla LAMP LDAP ley ley blogger ley cookies libros limpiar ubuntu linux linux password linux root logística LPIC mail mail notification mail server mamp MCSA memoria alta microsoft Ministerio Justicia Mis Documentos copia de seguridad molero monitor rendimiento montar usb mount mrw mta multishop mx Mysql net use NFC notificacion notificaciones novell 5.1 nube nube hibrida nube privada nube publica objetivo web Office on line Oracle organizaciones paas Pasarela de pago password root PAW pearltrees pedidos perfmon portapapeles postfix postfix gmail powershell precio prerequisitos ecommerce prestashop privacidad privacidad datos programación correo electrónico protección de datos proxy psexec puertos purgar pymes rackspace rackspace.com recover root recovery password linux recuperar root password recursos redirección registradores.org registro registry remoto rendimiento. windows 7 request tracker request tracker 4 article RESEVI ring rkhunter root linux root password root ubuntu rootkit router rt saas sals scheduled task script scripting scripts Secure SSH seguimiento seguridad send later server sincronización siret sitios seguros skydrive smalll server smartphone smtp smtp gmail relay smtp notification SSH ssl substitución system systernals tamaño directorio telefónica templates thatwe thunderbird ticketing tienda online tienda virtual tienda web token TPV virtual track translation two steps verification ubuntu ubuntu 12 ubuntu gmail relay unix upload urdangarín usb usbdisk ubuntu usuario validate.tpl variable VDA VDAAGENT verificación dos pasos vi virtual appliance virtualización novell visio vmware vritualdesktop w8 w8 gmail Wannacry webdav webmaster tools webmin websigner websigner.cab wifislax windos azure windows windows 7 windows 8 Windows Azure windows2012 windows8 wordpress workstation WPA xampp xargs XENDESKTOP zimbra on rackspace