• Dextroyer

    Dextroyer es una herramienta multifuncional portable (no residente), diseñada para eliminar malware (virus, troyanos, gusanos, ransomware, etc) alojado en los dispositivos de almacenamiento masivo USB (pendrives o memorias usb, SSD, discos duros externos usb, SD card...)

    Leer más
  • BlackUSB

    BlackUSB es un script experimental, que previene el robo de datos personales, malware, herramientas forenses, BadUSB (USB Rubber Ducky), etc. Cuenta con versiones para Windows y Linux,....

    Leer más
  • Powerless

    Las palabras de moda en el ámbito tecnológico actual son censura, anonimato y privacidad. Apartándonos de lo sensacionalista y mediático del tema, es algo muy real (como aclaratoria para aquellos que viven en el paraíso), en países como Cuba, Venezuela, China, Irán, etc (Vea Top Ten de la censura)...

  • Clonación incremental

    ¿Qué sucedería si nos encontramos en un entorno crítico de respuesta inmediata, y lo que queremos es que si un disco duro falla, simplemente abrimos la tapa lateral de la carcasa (Chasis o CPU) del PC o servidor, desconectamos el disco con problemas y arrancamos el disco esclavo....

    Leer más
  • Andromeda

    Un nuevo virus está causando estragos en los PC de Latinoamérica con SO Windows. Clasificado como Backdoor, ya lleva un año haciendo de las suyas, tiene más nombres que Satanás y a la fecha, de acuerdo a Virus Total, solo unos pocos antivirus pueden detectarlo....

    Leer más
  • Firewall

    Aceptar o denegar Https: Un gran dilema al aplicar las políticas restrictivas en un servidor: usamos un proxy cache (3128) o un proxy transparente (80)...

mayo 22, 2017

Veto Files

Wannacry CCN-CERT alert
Con la reciente ola de ataques del ransomware Wannacry, que aprovecha la vulnerabilidad Microsoft Server Message Block 1.0 (SMBv1), muchos han tomado medidas, parcheando su sistema Windows, según las especificaciones Microsoft Security Bulletin MS17-010 - Critical, sin embargo, con el ataque contenido y una herramienta disponible para descifrar los archivos, los cibercriminales no tardaron en sacar la evolución natural de wannacry: ethernalrocks, mucho más sofisticada, ya que según el portal bleepingcomputer.com y blog.segu-info.com.ar "infecta al usuario mediante el uso de seis herramientas de la NSA centradas en SMB expuestos en línea ETERNALBLUE, ETERNALCHAMPION, ETERNALROMANCE y ETERNALSYNERGY, que son exploits SMB utilizados para comprometer las computadoras vulnerables, mientras que SMBTOUCH y ARCHITOUCH son dos herramientas utilizadas para realizar reconocimiento de SMB expuestos  (Wannacry solo utiliza el exploit EternalBlue)"
EternalRocks exploit. Cortesía de bleepingcomputer.com
Hay muchas maneras de protegernos frente a estas amenazas. He aquí una breve lista de contramedidas (countermeasures), con sus factores condicionantes:
1. Parchear nuestros SO Windows: Es la mejor solución, pero muchas empresas tienen miles de terminales y el proceso de actualización puede tardar mucho tiempo, mientras tanto...
2. Protección contra virus: De acuerdo al último informe de WatchGuard Technologies (y otras firmas de seguridad lo confirman), el 30% del malware es `0-day´, indetectable por antivirus tradicionales, por tanto las soluciones antivirales eventualmente podrían garantizar combatir con relativa efectividad hasta un 70% de las amenazas.
3. Instalar un firewall: Los firewalls privados son costosos y las soluciones libres son difíciles de implementar para el usuario promedio. Podemos bloquear los puertos de difusión de WINS y NetBIOS sobre TCP/IP, cerrando los puertos 137-139 (TCP/UDP), y filtrar el 445 (TCP/UDP) pero tendríamos problemas con los recursos compartidos y algunas aplicaciones que dependen de estos puertos.
4. Copias de seguridad (local o en la nube): El ransomware puede cifrar cualquier cosa que el usuario infectado tenga acceso, usando los permisos de la cuenta que lo ejecuta, por tanto si cifra el contenido local en su equipo, muy probablemente esto ocurra en la nube.
5. Copias de seguridad (en dispositivos externos sin conexión permanente): Es una solución razonable, pero al no estar conectados permanentemente, en el caso de un cifrado masivo, el usuario podrá recuperar la última copia que realizó, por tanto todo depende de la voluntad y el tiempo disponible del usuario para hacer backups.
6. Copias de seguridad en recursos compartidos: Tal vez esta sea una mejor alternativa, pero si no están protegidos, pueden convertirse en un vector de propagación por toda la red local.
Desactivando SMB v1
La alternativa más económica y fácil de implementar en una red local la compartición de recursos es el servidor Samba, y afortunadamente la mayoría de los servidores en el mundo están sobre linux, lo cual reduce mucho las posibilidades de diseminación del ransomware, y otras modalidades de malware. Además, estos recursos no solo sirven para compartir archivos; también puede ser usados para realizar backups, sin embargo hay que tomar algunas medidas para su protección.
La propagación de los ransomwares mencionados se basa en la vulnerabilidad del protocolo SMBv1, el cual puede ser desactivado fácilmente en Windows (o actualizando nuestro sistema operativo, que es lo más recomendable). Y a pesar de que este problema no se presenta en Linux (al menos por el momento) US-Cert nos recomienda deshabilitarlo. Esto se logra modificando smb.conf en la plantilla [Global], y agregando las siguientes reglas, estableciendo como mínimo el uso de SMBv2:
client min protocol = SMB2
server min protocol = SMB2
Sin embargo esta implementación, al no contar con extensiones POSIX/Unix, trae como consecuencia que los clientes Linux y Android eventualmente no puedan acceder a los recursos compartidos. Y si tenemos en cuenta que las redes locales actuales son híbridas y muchos están migrando a Linux para escapar de estos ataques y, además, nadie garantiza que en un futuro no lejano, surjan nuevas vulnerabilidades relacionadas con SMB, que afecten a la v2 o superiores, entonces la regla anterior es inservible.
Pero nos queda un as debajo de la manga. Samba tiene otra solución, un poco más complicada pero bastante efectiva, y es la regla veto files.
Esta regla consiste en poner una prohibición (veto) sobre las extensiones o archivos que no pueden almacenarse en el recurso compartido (por ejemplo un mp3), entonces si un cliente conectado intenta guardar una archivo mp3 en la carpeta compartida, Samba lo bloquea, impidiendo su escritura. Ejemplo:
[share]
 comment = public-share
 browseable = yes
 guest ok = yes
 public = yes
 read only = no
 printable = no
 valid users = nobody
 writeable = yes
 available = yes
 create mask = 0777
 directory mask = 0777
 path = /home/user/share
 veto files = /*.3gp/*.avi/*.mkv/*.mp3/*.mp4/*.mpeg/*.mpg/*.rmvb/*.wma/*.wmv/
 delete veto files = yes
Este comportamiento aplica también para cualquier otro tipo de archivos de la regla "veto", incluyendo las extensiones creadas por los ransomwares y otros malwares. Entonces simplemente le agregamos a nuestra regla "veto files", todas las extensiones de archivos relacionadas con el malware y así impediremos su propagación por los recursos compartidos.
A continuación un ejemplo de su implementación en smb.conf:
[share]
 comment = public-share
 browseable = yes
 guest ok = yes
 public = yes
 read only = no
 printable = no
 valid users = nobody
 writeable = yes
 available = yes
 create mask = 0777
 directory mask = 0777
 path = /home/user/share
 veto files = /*Security*/*.tmp/*root*/._*/.DS_Store/*.bat/*.bin/*.info/*.css/*.dll/*.bin/*.chm/*.cmd/*.com/*.db/*.drv/*.dll/*.dem/*.exe/*.FAT/*.htm*/*.hta/*.ico/*.inf*/*.ini*/*.js*/*.lnk/*.msi/*.pif/*.py*/*.reg/*.shb/*.shs/*.sys/*.tmp/*.vb*/~*.*/__--*/--_*/*-_*/*.0x0*/*.1999*/*.1cbu1/*.1txt/*.2ed2/*.31392E30362E32303136_[ID-KEY]_LSBJ1/*.73i87A*/*.777*/*.7h9r*/*.7zipper/*.8c7f/*.8lock8/*.a19/*.a5zfn/*.aaa*/*.abc*/*ABCXYZ11/*.adk/*.adr/*.AES*/*.AFD*/*.aga*/*._AiraCropEncrypted/*.__AiraCropEncrypted!/*.alcatraz/AllFilesAreLocked*.bmp/*.amba/*.AMC*/*.angelamerkel/*.AngleWare/*.antihacker*/*.ap19/ASSISTANCE_IN_RECOVERY.txt/ATTENTION!!!.txt/*.axx*/*.AZG*/*.B6E1/*.BarRax/*.bart*/*.bytrcypt/*.bcin/*.better_call_saul*/*.bitstak/*.bleep*/*.bloc*/*.braincrypt/*.breaking_bad/*.bript/*.btc*/*.BZE*/*.cancer/*.canihelpyou/*.cbf*/*.ccc*/*.CCCRRRPPP/*.cerber*/*.checkdiskenced/*chifrator@qq_com*/*.CHIP/*.conficker/*.cifgksaffsfyghd/*.clf*/*.code*/*Coin.Locker.txt*/*.comrade/*confirmation.key*/*.coverton*/*cpyt*/*.crashed/*.crime*/*.crinf*/*.crip*/*.crjoker*/*.crptrgr/*.CRRRT/*.*cry*/*.*Cry*/*.*CRY*/*cryptolocker.*/*.CrySiS*/*_cry* /*.ctb*/*.CTB*/*.czvxce*/*.d4nk/*.dale/*.damage/*.*darkness*/*.darkness*/*.da_vinci_code*/*.dCrypt/*.decipher*/*decipher*/Decrypt*/*DECRYPT*.*/DECRYPT_*.*/*.decrypt2017/*DecryptAllFiles.txt*/*decrypt_instruct.*/*.ded/*.deria/*.dharma/*.disappeared/*.DJ/*djqfu.*/*.domino/*.doomed/*.dxxd/*.dyatel@qq_com/*dyatel@qq_com*/*.ecc*/*.edgel/*.EE/*.*enc*/*enc_files.txt*/*.EnCiPhErEd*/*.encmywork/*.encoderpass/*.ENCR/*.encrypt*/*.EnCrYpT*/*encryptor_raas_readme_liesmich.txt*/*.enigma*/*.epic/*.evillock/*.exotic/*.*exx*/*.ezz*/*.F9E8n*/*.fantom/*.fear/*.FenixIloveyou!!/*.file0locked/*.filegofprencrp/*.fileiscryptedhard*/*FILESAREGONE.TXT*/*.filock/*.firecrypt/*.flyper/*.frtrss*/*.fs0ciety/*.fuck*/*.Fuck*/*.fun*/*.gefickt/*.gembok/*.gen/*.globe/*@gmail_com_*/*.goforhelp/*.good*/*.gruzin@qq_com/*gruzin@qq_com*/*.GSupport*/*.gws*/*.GWS/*.h3ll*/*.ha3*/*.HA3/*.hairullah@inbox.lv/*.hakunamatata/*.hannah/*.happyday*/*.hb15*/*HELLOTHERE.TXT*/*.helpdecrypt*/*help_decrypt.*/*helpdecrypt.*/*Help_Decrypt.*/HELP_DECRYPT*/*helpdecrypt@ukr.net*/*.helpmeencedfiles/*help_recover*.*/*_H_e_l_p_RECOVER_INSTRUCTIONS*/*help_restore*.*/HELP_RESTORE_FILES.txt/*HELP_TO_DECRYPT_YOUR_FILES.*/*HELP_TO_SAVE_FILES.*/*help_your_file*.*/*.herbst/*.hnumkhotep/*.howcanihelpusir/*how_decrypt.*/How_Decrypt*/HowDecrypt.*/*how_recover*.*/*howrecover*.*/*how%sto%sdecrypt.*/*how_to_decrypt.*/*howtodecrypt.*/howtodecryptaesfiles.lnk/*HOW_TO_DECRYPT_FILES.*/*how_to_recover*.*/*howto_recover_file.*/*How_To_Recover_Files.*/*howto_restore*.*/*Howto_Restore*.*/*HowtoRESTORE*.*/*.hush/*.hydracrypt*/*IAMREADYTOPAY.*/*.iaufkakfhsaraf/*.ifuckedyou/*IHAVEYOURSECRET.KEY*/*.iloveworld/IndexerVolumeGuid*/*@india.com*/*.infected*/*install_tor.*/*install_tor*.*/*INSTRUCCIONES_DESCIFRADO.*/*instructions_xxxx.*/*.isis/*.iwanthelpuuu/*.JUST/*.justbtcwillhelpyou*/*.karma/*.*kb15*/*keemail.me*/*.kencf/*.kernel*/*keybtc@inbox_com*/*.KEYH0LES*/*.KEYZ*/*.KGT*/*.killedXXX/*.kimcilware*/*.kirked/*.kkk*/*.KKK*/*.KLS*/*.KMF*/*.KMS*/*.KMY*/*.korrektor*/*.kostya/*.kr3/*.*kraken*/*.kratos/*.KV/*.kyra/*.kzlrp/*.L0cked/*.L0CKED/*.lambda_l0cked/*_LAST/*last_chance.*/*.lechiffre*/*.LeChiffre*/*.legion/*.lesli/*.letmetrydecfiles/*.*lock*/*.*Lock*/*_Locky_recover_instructions.txt*/*.lol*/*.LOL*/*.lovewindows/*.madebyadam/*.magic*/*.maktub/*.MDW/*.merry/*message.txt*/*MESSAGE.txt*/*.micro*/*.MKJL*/*.MRCR1/*.msk/*.mxc/*.nalog@qq_com/*.neitrino*/*.nemo-hacks.at.sigaint.org/*.nil/*.*nochance*/*.nolvalid/*.no_more_ransom/*.noproblemwedecfiles/*.notfoundrans/*.nuclear55/*_nullbyte/*.NUS/*.obleep*/*.odcodc*/*.odin/*.omg*/*.OMG*/*.onion/*.only-we_can-help_you*/*.oops/*oor.*/oor*.*/*.openforyou@india.com/*oplata@qq_com*/*.oshit*/*.osiris/*.otherinformation/*.OXI/*.p5tkjw*/*.padcrypt/*.paybtcs*/*.paym*/*.payr*/*.pays*/*.payt*/*.pdcr/*.PEGS1/*.perl/*pizda@qq_com*/*.PLAUGE17*/*.PoAr2w*/*.porno*/*.potato/*.powerfulldecrypt/*.powned/*.pr0tect/*.protected*/*.purge/*.pzdc/*.PzZs*/*.qbl/*qq_com*/*.r16m/*.r16M/*.R16M01D05/*.r4a/*.R4A/*.r5a/*.R5A/*.RAD*/*.raid10/*.RARE1/*.razy/*.RC/*.rdm*/*.RDM/*.rdmk/*ReadDecryptFilesHere.txt*/*readme_decrypt.*/*readme_for_decrypt.*/*._read_thi$_file*/*_READ_THIS_FILE_*/*READTHISNOW*.TXT*/*.realfs0ciety@sigaint.org.fs0ciety/*recoverfile*.txt*/*recover_instruction*.*/*recovery+.*/*recovery_file.txt*/*recoveryfile.txt*/*RECOVERY_FILE*.txt*/*recovery_key.txt*/RECOVERY_KEY.TXT/*.rekt/*relock@qq_com*/*.remind*/*restore_fi*.*/*restore_files_rvrk.html*/*restorefile*.txt*/*.rip/*.R.i.P/*.RMCM1/*.rmd/*.rnsmwr/*.rokku*/*.RP/*.RPD/*.rrk*/*.RSNSlocked /*.RSplited*/_ryp/*_ryp.nalog@qq_com*/*.sage/*.salsa222/*.sanction*/*.scl*/*.scr/*.sct/*_secret_code.txt*/*SECRET*.KEY*/*.SecureCrypted/*.serpent/*.sexy/*.shino/*.shit/*.sifreli/*.Silent*/*.sport*/*.stn/*.supercrypt*/*.surprise*/*.SYN/SystemVolumeInformation/*.szf/*.TheTrumpLockerf/*.TheTrumpLockerfp/*.theworldisyours/*.thor/*.Tok*/*.toxcrypt*/*troyancoder@qq_com*/*.trun*/*.ttt*/*.tzu*/*.uk-dealer@sigaint.org/*ukr.net*/*.unavailable/*.unlockvt@india.com/*.UX/*.vault*/*vault.*/*.vbransom/*.vekanhelpu/*.velikasrbija/*.venusf/*.Venusp/*.versiegelt/*.VforVendetta/*.vhv*/*.vindows/*.vir*/*.vscrypt*/*.vvv*/*.vxLock/*.vxn*/*.wallet/*want%syour%sfiles%sback.*/*wantyourfilesback.*/*.wcry/*.WNCRY/*.wncry/*.wncryt/*.wnry/*.weareyourfriends/*.weencedufiles/*.wflx/*.Whereisyourfiles/*.Where_my_files.txt/*.windows10/*.wnx/*.wowreadfordecryp/*.wowwhereismyfiles/*.WPI*/*.WsF*/*.wuciwug/*.xcri/*.xka/X.mpeg*/*.xort*/*.___xratteamLucked/*.xrnt*/*.xrtn*/*.xspf*/*.xtbl*/*.xxc*/*.xxx*/*.xyz*/*.yaq*/*.ya.ru/*.YE*/*YOUR_FILES.*/*.yourransom/*.Z81928819*/*.zc3791/*.zcrypt*/*.zendr4/*.zepto/*.zorro/*.zXz/*.zyklon*/*.zzz*/
  delete veto files = yes
Para mantener actualizada nuestra lista de extensiones en "veto files", podemos descargarlas en los siguientes enlaces:
Github kinomakino
Nixbone List
Desafortunadamente Samba no maneja ACLs, para que pueda "leer" un archivo que contenga dichas extensiones maliciosas y poder automatizar su actualización, o sea, hay que escribirlas manualmente en el smb.conf, lo cual es algo tedioso, pero podemos simplificarlo creando un bash que descargue las listas, las compile, depure y finalmente escriba las extensiones en el archivo smb.conf con el formato de "veto_files".

Imagen cortesía de Securelist
Maravento, Actualizado en: 16:08
Escrito por: Maravento Studio

mayo 12, 2017

Acelerador Textual de Velocidad (ATV)

Muchos pensarán que Acelerador Textual de Velocidad (ATV) es una nueva tecnología de búsqueda de Google o algo similar, pero en realidad es algo más perturbador.
Los Proveedores de Servicio de Internet ISP, durante años se las han ingeniado para cobrarle más a los usuarios a cambio de menos, y "esquivar" las normas locales del país donde brinden sus servicios. Esto sucede con mayor frecuencia en países donde las normas regulatorias son ambiguas y los entes encargados de la vigilancia de su cumplimiento de estas normas también sufren del mismo mal.
¿Qué es ATV?
Este término se acuñó en Colombia en el 2006 y según su autor, Enrique Carlos Angulo (); famoso catedrático y columnista del diario El Tiempo: "es un ingenioso y simple dispositivo (mágico) que sirve para aumentar (milagrosamente) la velocidad de las conexiones de Internet. Para lograrlo, por ejemplo convertir 1 MB en 10 MB, simplemente basta con agregarle a la oferta comercial (al contrato de servicios, en letra muy pequeña) un texto con la palabra reúso, y listo. Entonces, el resultado es que para aumentar la velocidad de 1 Mbps a 10 Mbps sólo bastaría decir: "con reúso 1:10". 
El verdadero poder de la palabra
Esta artimaña comercial, considerada por muchos expertos como una modalidad de estafa, significa que el "mega" que recibiremos de Internet lo vamos a compartir con 10 usuarios. "Equivaldría a que cuando fuéramos al supermercado a comprar 1 kilo de carne, nos entregaran sólo 100 gramos, con el argumento de que su kilo de carne está siendo compartido con varias personas"; cita Angulo.
En Internet podemos encontrar muchas quejas sobre este tema, pero, ¿qué dicen las autoridades?
Este problema se presenta en muchos países, pero sentimos curiosidad de saber si en Colombia, después de 11 años de la denuncia del Dr. Angulo, se habían tomado medidas para frenar estas prácticas delictivas.
Elevamos una solicitud a la Comisión de Regulación de Comunicaciones CRC, organismo encargado de dirimir sobre estos temas, preguntando si ese término "reúso" estaba regulado en las normas colombianas. También aprovechamos y le consultamos sobre otro término muy usado por los ISP llamado "Canal dedicado de banda Ancha de Internet" y la respuesta fue tan ambigua como los mismos términos:
Respuesta de CRC
Estimado Usuario. En respuesta a su solicitud (...)
De cara al usuario final, las velocidades deben ser efectivas, para lo cual sí se cuenta hoy en día con una definición en la Resolución CRC 5050 de 2016, que cita: "VELOCIDAD EFECTIVA DE TRANSMISIÓN DE DATOS: Es la capacidad de transmisión medida en Kbps garantizada por el ISP en los sentidos del ISP al usuario y del usuario al ISP, incluyendo tanto el segmento de acceso como los canales nacionales e internacionales, y que corresponde al valor mínimo de las mediciones asociadas al parámetro establecido en el numeral 5.2.3 de la recomendación ETSI EG 202 057-4 V1.1.1 (2005-10)".  
Ahora bien, es común encontrar ofertas de acceso a Internet corporativo, en las que se garantiza un reuso de 1:1 (etc), Sin embargo se aclara que la CRC no ha definido alguna condición sobre este aspecto en particular. 
(...) Se aclara entonces que no existe alguna definición para "canales dedicados de acceso a Internet", o para "acceso dedicado". Así mismo se reitera que la connotación que tiene el acceso dedicado no implica que deba contar con unas condiciones o parámetros técnicos mínimos de funcionamiento -diferentes a que no se interrumpa la comunicación cuando se requiera usar otro servicio de telecomunicaciones como la voz en redes de circuitos-; ello sin perjuicio de las ofertas comerciales que a nivel corporativo son realizadas por los Proveedores del servicio de Internet
O sea, SÍ pero NO. El "reúso" no existe (solo la velocidad efectiva de transmisión de datos) y los "canales dedicados" tampoco y mucho menos están regulados; pero es irrelevante, ya que la CRC aclara que la norma es "sin perjuicio de las ofertas comerciales que a nivel corporativo son realizadas por los Proveedores del servicio de Internet", dejando la puerta abierta para que los ISP hagan lo que se les de la gana. Y para agravar la situación, estas normas no cuentan con régimen sancionatorio, o sea que si un ISP las incumple no pasa nada... Sálvese quien pueda
Maravento, Actualizado en: 13:53
Escrito por: Maravento Studio

abril 06, 2017

Programando sincronización en la nube

Para muchos, la sincronización de datos en los diferentes servicios en la nube se ha vuelto casi imprescindible, pero con la aparición del ransomware, puede ocurrir que este malware tome el control de nuestro PC o servidor y cifre nuestra carpeta de datos administrada por el cliente de estos servicios, y como estas aplicaciones sincronizan todo el tiempo cuando estamos conectados, el ransomware también cifrará toda la información en la nube.
Algo similar puede ocurrir con un archivo o backup, que accidentalmente lo eliminemos, modifiquemos o dañemos; también se replicará instantáneamente en nuestra carpeta en la nube; y si es de gran tamaño, es poco probable que estos servicios, al menos en su versión gratuita, guarden copias de seguridad, por obvias razones de espacio limitado.
Son muchos los escenarios que pueden conducir al caos y pérdida de información, si sincronizamos nuestros en tiempo real. Es por eso que programar las sincronizaciones en la nube eventualmente podría ser una alternativa de solución a este problema, ya que, ante un eventual desastre, solo perderemos las horas de trabajo en que nuestro cliente no sincronizó.
La mayoría de los clientes de estos servicios ofrecen pausar la sincronización y reanudarla cuando queramos, pero (al menos por el momento) solo está disponible en su menú gráfico y no puede ser programada para que pause a una determinada hora y reinicie a otra, sin embargo, a pesar de esta limitante, aún podemos echar manos de otras herramientas para lograr la programación de sincronización de nuestros datos en la nube.
Programando sincronización de Dropbox (Windows y Mac)
Para Windows, pueden encontrar el tutorial en el blog de jsquaredz (igual que para Mac)
Programando sincronización de Dropbox (Ubuntu. Tested on Ubuntu 16.04)
Antes de comenzar es recomendable quitar cualquier versión de Dropbox (si utiliza el mismo método de instalación que a continuación se describira, puede omitir este paso):
sudo apt-get purge dropbox
# Para Escritorio Mate
sudo apt-get purge caja-dropbox
Luego ingrese a su carpeta Home, pulse Ctrl+H y elimine las carpetas .dropbox-dist y .dropbox Instalación:
sudo apt-key adv --keyserver pgp.mit.edu --recv-keys 5044912E
sudo sh -c 'echo "deb http://linux.dropbox.com/ubuntu/ $(lsb_release -sc) main" >> /etc/apt/sources.list.d/dropbox.list'
sudo apt-get update && sudo apt-get -y install dropbox && sudo apt-get -f -y install
Al terminar la instalación, iniciará la ventana de descarga y pulsamos Start Dropbox para iniciar la descarga:
Si no inicia la ventana anterior, vamos al menú y pulsamos en el icono de Dropbox y comienza la descarga:
Al concluir la descarga, se abre el navegador y pide autorización para vincular la cuenta:
Finalmente inicia Dropbox y hay que desmarcar la casilla de inicio automático (ya que el comando "dropbox autostart n" en ocasiones no funciona y es mejor asegurarnos).
Copie el siguiente script de arranque y parada de Dropbox en init.d con el nombre de dbox sin extensión.  En la variable MYUSER, reemplace user por su usuario de linux no-root (si no sabe cuál es su usuario, ejecute en el terminal sin sudo el comando echo $USER)
#!/bin/sh
### BEGIN INIT INFO
# Provides:          dbox
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Dropbox sync schedule
# Description:       Enable service provided by daemon
# By:                Maravento.com and Novatoz.com
### END INIT INFO

MYUSER="user"

case "$1" in
  start)
    echo "Start Dropbox..."
    killall dropbox >/dev/null 2>&1
    sudo -H -u $MYUSER bash -c 'DISPLAY=:0 /usr/bin/dbus-launch dropbox start -i &' >/dev/null 2>&1
    echo "OK"
 exit
 ;;
  stop)
    echo "Stop Dropbox..."
    sudo -H -u $MYUSER bash -c 'dropbox stop'
    # optional
    killall dropbox >/dev/null 2>&1 
    echo "OK"
 exit
 ;;
  *)
    echo "Usage: /etc/init.d/dbox {start|stop}"
 exit 1
    ;;
esac
exit 0
Error Notificación Ubuntu Mate
Nota: El comando "killall dropbox" se incluye porque en algunos sistemas los comandos de dropbox (dropbox stop o dropbox stop -i) no funcionan correctamente o demoran. Si no sucede en su equipo puede suprimirlos del script.
En Ubuntu Mate, es probable que salga algún error de notificación, debido a que esta distribución utiliza "caja-dropbox".
También podemos agregar una variable al script apuntando a la carpeta local donde tenemos alojado Dropbox. Esto es muy útil si manejamos varias cuentas de Dropbox en el mismo terminal, para iniciarlas todas.
MY_FOLDER_DBOX=$HOME/Dropbox
MY_FOLDER2_DBOX=$HOME/ANOTHER_PATH/Dropbox
sudo -H -u $MYUSER bash -c 'DISPLAY=:0 $MY_FOLDER_DBOX /usr/bin/dbus-launch dropbox start -i &' >/dev/null 2>&1
sudo -H -u $MYUSER bash -c 'DISPLAY=:0 $MY_FOLDER2_DBOX /usr/bin/dbus-launch dropbox start -i &' >/dev/null 2>&1
Programación:
Ahora le damos permisos:
sudo chmod +x /etc/init.d/dbox
Abrimos el crontab y lo programamos en el horario de encendido y apagado que queramos. En el siguiente ejemplo se inicia a las 11:00 PM y se apaga a las 05:00 AM (para que sincronice lo del día).
sudo crontab -e
# Crontab schedule. Example:
00 23 * * * /etc/init.d/dbox start
00 05 * * * /etc/init.d/dbox stop
Programando sincronización en Mega (Ubuntu)
El mismo procedimiento y script aplicado a Dropbox puede ser usado con el cliente MegaSync, de Mega (y en GDrive, si existiera una versión oficial para linux).
Descargamos el cliente vía web o directamente de los repositorios (según la version del SO); nombramos el script como msync (o el nombre que queramos) y lo guardamos en init.d y le damos permisos de ejecución y finalmente lo programamos en el cron de la misma forma que dbox:
#!/bin/sh
### BEGIN INIT INFO
# Provides:          msync
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: MegaSync schedule
# Description:       Enable service provided by daemon
# By:                Maravento.com and Novatoz.com
### END INIT INFO

MYUSER="user"

case "$1" in
  start)
    echo "Start MegaSync..."
    killall megasync >/dev/null 2>&1
    sudo -H -u $MYUSER bash -c 'DISPLAY=:0 /usr/bin/dbus-launch megasync start -i &' >/dev/null 2>&1
    echo "OK"
 exit
 ;;
  stop)
    echo "Stop MegaSync..."
    killall megasync >/dev/null 2>&1 
    echo "OK"
 exit
 ;;
  *)
    echo "Usage: /etc/init.d/msync {start|stop}"
 exit 1
    ;;
esac
exit 0
Pero, a pesar de que programar las sincronizaciones pueden evitarnos muchos dolores de cabeza, en algunos escenarios específicos, lo más recomendable es "no poner todos los huevos en la misma canasta" y diversificar nuestros datos en diferentes tipos de almacenamiento, para no generar una excesiva dependencia de estos servicios cloud (y así no comprometer nuestra privacidad) y en reemplazo utilizar alternativas libres como syncthing, que no solo permite programar nuestras sincronizaciones, sino que transfiere datos entre terminales (nodos) de forma descentralizada y cifrada, sin servidor intermediario, como Dropbox, Mega, Gdrive y otros.
Programando sincronización con Syncthing (Linux. Tested on Ubuntu 16.04)
Use el siguiente script para instalarlo (no-root):
#!/bin/bash
### BEGIN INIT INFO
# Provides:          syncthing install
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Syncthing schedule
# Description:       Enable service provided by daemon.
# By:                Maravento.com
# Script:            syncthing_install.sh
### END INIT INFO

clear
 while true; do
  read -p "Do you want to install Syncthing? (y/n)" answer
   case $answer in
           [Yy]* )
   # execute command yes
  curl -s https://syncthing.net/release-key.txt | sudo apt-key add -
  echo "deb https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list
  sudo apt update && sudo apt -y install syncthing apt-transport-https
  sudo systemctl enable syncthing@$USER.service && sudo systemctl start syncthing@$USER.service
  echo OK
  echo "Access: https://localhost:8384/"
  sleep 2
    break;;
           [Nn]* )
  # execute command no
    break;;
         * ) echo; echo "Please Answer: YES (y) or NO (n)";;
     esac
 done
Y el script para su ejecución (root). Reemplace user por su usuario:
#!/bin/sh
### BEGIN INIT INFO
# Provides:          syncthing
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Syncthing schedule
# Description:       Enable service provided by daemon.
# By:                Maravento.com
# Script:            syncth
# Path:              /etc/init.d/
### END INIT INFO

### Replace user with your user no-root (echo $USER) ###
MYUSER="user"

case "$1" in
  start)
    echo "Start Syncthing..."
 systemctl start syncthing@$MYUSER.service
 echo "OK"
 exit
 ;;
  stop)
    echo "Stop Syncthing..."
 systemctl stop syncthing@$MYUSER.service
 # or
 # killall syncthing >/dev/null 2>&1
 echo "OK"
 exit
 ;;
  *)
    echo "Usage: /etc/init.d/syncth {start|stop}"
 exit 1
    ;;
esac
exit 0
Programando en el cron (sudo crontab -e):
### Crontab schedule. Example: ###
00 23 * * * /etc/init.d/syncth start
00 05 * * * /etc/init.d/syncth stop
Para Windows, es más cómodo instalar SyncTrayzor (requiere NetFramework 4.5x en adelante) y programar su inicio y parada (en el programador de tareas de windows) con el siguiente bat:
startsync.bat (para iniciar):
@echo off
"C:\Program Files\SyncTrayzor\SyncTrayzor.exe" --start-syncthing
exit
stopsync.bat (para detener):
@echo off
"C:\Program Files\SyncTrayzor\SyncTrayzor.exe" --stop-syncthing
exit
Pero si no queremos trabajar con SyncTrayzor, simplemente descargamos syncthing (x86 o x64), lo descomprimimos en la unidad local (ej: c:\Syncthing), lo configuramos y luego programamos su ejecución en el programador de tareas de windows, con el siguiente script (ej: syncthing.bat reemplace start por stop para detener el aplicativo):
@echo off
start "Syncthing" syncthing.exe -no-console -no-browser
exit

Tutoriales recomendados de syncthing: ConfiguraciónGTKNAS, Windows y AlwaysUp
Maravento, Actualizado en: 16:37
Escrito por: Maravento Studio

febrero 18, 2017

Compartición de archivos II

Linux shares mapped as network drives in Windows. Image by techgage
En el post anterior Compartición de Archivos, publicamos una serie de recomendaciones referentes a Samba (una implementación libre del protocolo de archivos compartidos de Microsoft Windows para sistemas tipo UNIX que permite la interacción entre estas plataformas), pero con la llegada de Samba 4, los problemas en lugar de disminuir, aumentaron, ya que sus diseñadores no se molestaron en corregir las fallas de la versión, cuando ya estaban liberando la siguiente.
Asumiendo que no tenemos problemas con SELinux (restricciones sobre la lectura y escritura de la carpeta compartida), para solucionar muchos males heredados de versiones previas a Samba 4, lo mejor es eliminarlo y reinstalarlo:
sudo apt purge -y samba samba-common smbclient system-config-samba
sudo rm -rf /etc/samba /etc/default/samba /var/cache/samba
sudo apt autoremove && sudo apt -y update && sudo apt -y dist-upgrade
sudo apt -y install libnss-winbind* libpam-winbind* samba* smbclient system-config-samba winbind*
sudo apt -f install
Una vez hecho esto, hay que hacer unos pequeños ajustes al archivo de configuración (/etc/samba/smb.conf) que harán que su Samba funcione mejor. 
Según mit.edu han surgido informes recientes de clientes Microsoft Windows con problemas de compatibilidad con servidores de seguridad a nivel de recurso compartido. Para solucionarlo edite smb.conf y reemplace en la sección [global]:
security = share
por
security = user
Y:
map to guest = bad user
por
map to guest = Bad Password
En el caso de carpetas públicas lo recomendado es asignarlas al grupo "nobody.nogroup" para evitar problemas de conexión con Windows. Ejemplo: (carpeta pública: "compartida").
mkdir -p compartida
sudo chown -R nobody.nogroup compartida
sudo chmod -R 777 compartida
También se recomienda desactivar las reglas obsoletas syslog:
# syslog only = no
# syslog = 0 
Un mensaje frecuente que vemos en los logs es similar a este: Samba name server USER is now a local master browser for workgroup WORKGROUP on subnet 192.168.1.16, que se repite cada vez que el servicio de samba reinicia:
Para prevenir que Samba haga esto como un intento de controlar la red local (Domain Controller Windows NT Server, o similares) se recomienda agregar a la sección [global] lo siguiente:
domain master = no
prefered master = no
local master = no
Establecer el hostname:
sudo hostnamectl set-hostname $HOSTNAME
Y verifique con:
cat /etc/hostname
Una vulnerabilidad reciente detectada en Samba, identificada con CVE-2017-2619 puede permitir a un cliente malicioso acceder a áreas no exportadas del servidor de archivos mediante una ruta de enlace simbólico. Para evitarlo actualice a la última versión y edite el smb.conf y agregue a la sección [global] el siguiente parámetro (y luego reinicie samba):
# Symlink race allows access outside share definition
# https://www.samba.org/samba/security/CVE-2017-2619.html
unix extensions = no
Otra situación que se puede presentar con Samba 4 es la caída constante del servicio nmbd
Esto se debe a la exclusión de localhost (lo) en la línea de interfaces. Para solucionarlo agréguelo de acuerdo a las especificaciones oficiales:
bind interfaces only = yes
interfaces = lo eth0
Aunque si Samba presenta conflictos con systemd (algo muy frecuente), puede desactivar bind interfaces only, pero tenga en cuenta que al hacerlo Samba solo dependerá de los puertos abiertos en el firewall y no de la interfaz de red asociada:
bind interfaces only = no
Otro problema que puede presentarse en la compartición de archivos es con el directorio /var/lib/samba/usershares, y pueden salir mensajes como este:
Esto puede ser generado por muchas causas. Una de ellas es el malware (que se está pasando de los PCs Windows a la carpeta compartida, que está montada como unidad de red en los PCs conectados a Samba, asumiendo que la partición donde se encuentre la carpeta compartida sea NTFS).
Una posible solución es evitar que otros, que no sean el propietario, escriban o renombren archivos en esa carpeta y activando Sticky bit:
sudo chmod 1775 /var/lib/samba/usershares/
sudo chmod +t /var/lib/samba/usershares/
Y agregar en la sección Global de smb.conf la línea:
usershare path =
Un mensaje muy común es sobre el número límite de Windows rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384). Para solucionar este problema, edite el archivo /etc/security/limits.conf y agregue la línea:
*  -  nofile  16384
Finalmente, evitar la vulnerabilidad CVE-2017-7494 actualizando Samba a las versiones 4.4.14 o superior y agregar a la plantilla Global:
nt pipe support = no
Guarde cambios y reinicie el equipo. Finalmente pruebe su smb.conf para verificar que todos los parámetros están correctos, con el comando:
testparm
Y si todo sale bien, reinicie los servicios:
sudo systemctl restart smbd.service nmbd.service winbind.service
Sin embargo hay una falla de Samba 4, que no se puede solucionar con un simple cambio en la configuración. Si revisamos los logs (en algunos equipos) veremos el mensaje systemd[1]: Reloading LSB: start Samba SMB/CIFS daemon (smbd):
Este mensaje es normal que aparezca regularmente al reiniciar los servicios. Lo que no es normal es que se repita cada 5 minutos aproximadamente, y en cuestión de horas congestione los logs de samba. Muchos blogs hablan sobre el tema y al parecer afecta a algunas distribuciones de Linux; incluso es considerado un Bug. Desafortunadamente la solución a esta falla de Samba depende en gran medida de la configuración de las interfaces de red del equipo donde esté instalado.
NetworkManager es una especie de demonio o más bien un frontend (de iproute, dhclient, wpa_supplicant y ppp) que sirve para editar las conexiones de red, de una manera cómoda en el escritorio de Linux (sea cual sea). Es bastante intuitivo y facilita las conexiones, sobre todo las redes inalámbricas. Pero existe otro archivo llamado /etc/network/interfaces que hace exactamente lo mismo, con la diferencia que nos permite poner valores estáticos de configuración de nuestras interfaces de red, lo cual es bueno, ya que impide alteraciones en los parámetros por personas no autorizadas (se modifica con permisos de superusuario (sudo) o root), brindando una mayor seguridad que NetworkManager. Usualmente se utiliza para configurar las interfaces de red en servidores proxy y otros tipos de servidores en redes locales.
Estos dos "mecanismos" de interacción con las interfaces de red no siempre se llevan bien, y por lo general sucede que al ingresar información al archivo "interfaces", NetworkManager no lee adecuadamente la información de este archivo o simplemente queda inutilizado. El resultado de esta "pelea" afecta a Samba en su versión 4x (no podemos confirmar que esto suceda con versiones anteriores).
En resumen, Samba mantiene buenas relaciones con NetworkManager, ya sea con IPs estáticas o DHCP, pero tiene problemas con la información de red DHCP que pongamos manualmente en el archivo "interfaces". En concreto, la falla de Samba radica en que no interpreta bien la regla DHCP. Ejemplo:
auto eth0
iface eth0 inet dhcp
Esto genera el reinicio constante de los servicios de Samba y mensaje reloading lsb start samba smb/cifs daemon (smbd), causando desconexiones de los recursos compartidos. Paradójicamente no sucede lo mismo con la información en "interfaces" que contenga IPs estáticas, la cual Samba lee correctamente. Ejemplo:
auto eth0
iface eth0 inet static
address 192.168.0.10
netmask 255.255.255.0
broadcast 192.168.0.255
network 192.168.0.0
gateway 192.168.0.1
dns-nameservers 8.8.8.8 8.8.4.4
Entonces la solución para evitar el colapso de Samba es, si tenemos un servidor en producción con una o varias interfaces de red (ej: una para internet y otra para la red local), sin importar el tipo de interfaz (wifi, eth, etc.) se recomienda desinstalar NetworkManager y configurar el archivo "/etc/network/interfaces" y asignar a las tarjetas de red, direcciones IPs estáticas (fijas).
Caso contrario; si tenemos un terminal Linux para nuestro trabajo diario en una red local, lo recomendado es que maneje sus conexiones con NetworkManager (si va a usar NetworkManager, asegúrese de tener el archivo /etc/libuser.conf con los permisos adecuados. Si no lo tiene puede crearlo desde root).
Es necesario aclarar que estas fallas no afectan a todas las distribuciones de Linux ni a todas las versiones, por tanto recomendamos que revise sus logs, para cerciorarse, antes de aplicar las correcciones propuestas. Finalmente no olvide abrir en su firewall los puertos Samba (137, 138, 139 y 445 tcp/udp)
Asignatura pendiente
Desafortunadamente Samba aún es muy limitado, por ejemplo sigue sin brindar soporte para establecer límites en cuanto a la capacidad de directorios compartidos (y mucho menos a subdirectorios dentro del directorio compartido), y la única manera de hacerlo es asignando cuotas de disco... o haciendo trampas con imágenes montadas.
Ejemplo:
A continuación, crearemos una imagen llamada share.img, de 1 GB pero puede ser de la cantidad que quieran, con un bloque de 1024 bytes, que es el recomendado para crear la imagen inicial y así no recargar el sistema durante la creación, en el directorio test que será montada en el directorio share (que es el directorio compartido para usuarios (deben crear primero las carpetas y asignarle propietario -chown- y permisos -chmod-).
1. Creando la imagen de 1 GB (1048576). Puede usar esta calculadora para determinar los valores para la imagen en Kb y determinar el tamaño del bloque
dd if=/dev/zero of=/home/user/test/share.img bs=1024 count=1048576
2. Creando el sistema de archivos (ext2/ext3/ext4) con mke2fs.
sudo mke2fs -L share.img -j /home/user/test/share.img
Por defecto crea en ext3. Para especificar ext4 agregue la opción -t
sudo /sbin/mke2fs -t ext4 -L share.img -j /home/user/test/share.img
También puede formatear la partición en ext4 con:
sudo mkfs.ext4 /home/user/test/share.img
Reemplace mkfs.ext4 por mkfs.ext3 o mkfs.ext2 si va a usar ext3 o ext2. O mkfs.vfat (mkfs -t vfat 32 -F /dev/hda1 o mkfs.vfat -n nombre /dev/sdc1). Si no quiere reservar block use el parámetro -m 0
3. Opcional: Incrementando el bloque a 8786 (de 4k) (Solo funciona con particiones simples. La imagen no debe estar montada)
sudo resize2fs -M /home/user/test/share.img
Opcional: Cambiando la etiqueta a la imagen (Donde "prueba" es el nombre que se le asignará a la unidad)
sudo e2label /home/user/test/share.img prueba
4. Verifique la imagen que está correcta antes de montarla
sudo e2fsck -f -y /home/user/test/share.img
5. Montando la imagen en el directorio compartido "share" y permisos sobre lo montado
sudo mount -t ext4 /home/user/test/share.img -o loop /home/user/share
sudo chmod 1777 /home/user/share
Este procedimiento se puede automatizar con el siguiente script. Para redimensionar consulte AQUI.
De esta manera se limita el almacenamiento. También se puede hacer con subdirectorios dentro del directorio compartido, pero tenga en cuenta que debe incluir estas imágenes a montar en el fstab para que arranquen con el sistema.
Esperemos que algún día Samba incluya esta posibilidad nativamente y así evitarnos este engorroso procedimiento de tener cuotas de disco o montar imágenes.

Lista de cambios en Samba 4x

Vea el post "Veto Files"
Maravento, Actualizado en: 11:43
Escrito por: Maravento Studio

febrero 14, 2017

CUPS

CUPS (Common UNIX Printing System) es un sistema de impresión para GNU/Linux y otros sistemas operativos basados sobre el estándar POSIX, distribuido bajo los términos de la licencia GNU/GPLv2. Podemos encontrar mucha información sobre CUPS en su sitio oficial.
Pero lo que nos trae no son las bondades de CUPS, sino los problemas que recientemente está generando después de las últimas actualizaciones, que afectan a casi todas las distribuciones de Linux, el cual verificamos en los logs, con el siguiente mensaje (cada 5 o 6 min y el servicio cae):
Feb  8 11:38:19 ubuntuserver systemd[1]: Started CUPS Scheduler.
Feb  8 11:42:20 ubuntuserver systemd[1]: Started CUPS Scheduler.
Feb  8 11:47:08 ubuntuserver systemd[1]: Started CUPS Scheduler.
Feb  8 11:50:59 ubuntuserver systemd[1]: Started CUPS Scheduler.
Feb  8 11:55:24 ubuntuserver systemd[1]: Started CUPS Scheduler.
Feb  8 11:59:22 ubuntuserver systemd[1]: Started CUPS Scheduler.
Feb  8 12:03:08 ubuntuserver systemd[1]: Started CUPS Scheduler.
Feb  8 12:07:20 ubuntuserver systemd[1]: Started CUPS Scheduler.
Feb  8 12:11:52 ubuntuserver systemd[1]: Started CUPS Scheduler.
Feb  8 12:16:10 ubuntuserver systemd[1]: Started CUPS Scheduler.
Feb  8 12:20:04 ubuntuserver systemd[1]: Started CUPS Scheduler.
Y el /var/log/cups/access_log:
localhost - - [14/Feb/2017:06:25:49 -0500] "POST / HTTP/1.1" 200 349 Create-Printer-Subscriptions successful-ok
localhost - - [14/Feb/2017:06:25:49 -0500] "POST / HTTP/1.1" 200 176 Create-Printer-Subscriptions successful-ok
localhost - - [14/Feb/2017:15:30:36 -0500] "POST / HTTP/1.1" 401 123 Cancel-Subscription successful-ok
localhost - root [14/Feb/2017:15:30:36 -0500] "POST / HTTP/1.1" 200 123 Cancel-Subscription successful-ok
localhost - - [14/Feb/2017:15:30:36 -0500] "POST / HTTP/1.1" 200 152 Cancel-Subscription successful-ok
localhost - - [14/Feb/2017:15:30:36 -0500] "POST / HTTP/1.1" 200 349 Create-Printer-Subscriptions successful-ok
localhost - - [14/Feb/2017:15:30:36 -0500] "POST / HTTP/1.1" 200 176 Create-Printer-Subscriptions successful-ok
localhost - - [14/Feb/2017:15:35:31 -0500] "POST / HTTP/1.1" 401 123 Cancel-Subscription successful-ok
localhost - root [14/Feb/2017:15:35:31 -0500] "POST / HTTP/1.1" 200 123 Cancel-Subscription successful-ok
localhost - - [14/Feb/2017:15:35:31 -0500] "POST / HTTP/1.1" 200 152 Cancel-Subscription successful-ok
localhost - - [14/Feb/2017:15:35:31 -0500] "POST / HTTP/1.1" 200 349 Create-Printer-Subscriptions successful-ok
localhost - - [14/Feb/2017:15:35:31 -0500] "POST / HTTP/1.1" 200 176 Create-Printer-Subscriptions successful-ok
localhost - - [14/Feb/2017:15:51:39 -0500] "POST / HTTP/1.1" 401 123 Cancel-Subscription successful-ok
localhost - root [14/Feb/2017:15:51:39 -0500] "POST / HTTP/1.1" 200 123 Cancel-Subscription successful-ok
localhost - - [14/Feb/2017:15:51:39 -0500] "POST / HTTP/1.1" 200 152 Cancel-Subscription successful-ok
localhost - - [14/Feb/2017:15:51:39 -0500] "POST / HTTP/1.1" 200 349 Create-Printer-Subscriptions successful-ok
localhost - - [14/Feb/2017:15:51:39 -0500] "POST / HTTP/1.1" 200 176 Create-Printer-Subscriptions successful-ok
localhost - - [14/Feb/2017:16:05:18 -0500] "POST / HTTP/1.1" 401 123 Cancel-Subscription successful-ok
localhost - root [14/Feb/2017:16:05:18 -0500] "POST / HTTP/1.1" 200 123 Cancel-Subscription successful-ok
localhost - - [14/Feb/2017:16:05:18 -0500] "POST / HTTP/1.1" 200 152 Cancel-Subscription successful-ok
localhost - - [14/Feb/2017:16:05:18 -0500] "POST / HTTP/1.1" 200 349 Create-Printer-Subscriptions successful-ok
localhost - - [14/Feb/2017:16:05:18 -0500] "POST / HTTP/1.1" 200 176 Create-Printer-Subscriptions successful-ok
Sin extendernos mucho, ya que es un BUG confirmado y hay abundante información sobre el problema, pasaremos directo a una solución provisional, que, al menos, evitará que su servidor se vuelva loco.
sudo cp -f /etc/cups/cupsd.conf{,.bak}
sudo service cups stop
sudo apt-get install -f
sudo cp /usr/share/cups/cupsd.conf.default /etc/cups/cupsd.conf
sudo service cups start
Y poner algún vigilante en /etc/init.d con el siguiente contenido:
# CUPS service
date=`date +%d/%m/%Y" "%H:%M:%S`
if [[ `ps -A | grep cupsd` != "" ]];then
echo -e "\nONLINE"
else
echo -e "\n"
service cups start
# constancia en el log (opcional)
echo "CUPS fue iniciado $date" >> /var/log/syslog.log
fi
#
date=`date +%d/%m/%Y" "%H:%M:%S`
if [[ `ps -A | grep cups-browsed` != "" ]];then
echo -e "\nONLINE"
else
echo -e "\n"
service cups start
# constancia en el log (opcional)
echo "CUPS-browsed fue iniciado $date" >> /var/log/syslog.log
fi
Y programar el script en el cron cada 2 min. Ej:
*/02 * * * * /etc/init.d/fixcups.sh
Otra solución que proponen en launchpad es editar cups.service y reemplazar "l" por "f":
/lib/systemd/system/cups.service
ExecStart=/usr/sbin/cupsd -f
Pero si no lo usa, lo más recomendado en estos momentos es que lo desinstale, hasta que se corrija el Bug de forma definitiva.
sudo apt-get purge --auto-remove cups-daemon
Maravento, Actualizado en: 16:25
Escrito por: Maravento Studio
 
© 2017 Maravento. All Rights Reserved | Powered by Maravento
Design by Novatoz and Maravento | Bloggerized By LawnyDesignz
# https://github.com/google/code-prettify