DEBIAN PRO

DEBIAN PRO
DEBIAN

lunes, 22 de mayo de 2017

WannaCry Ransomware Telefonica ataque.


Datos generales.

Intentaré explicar de una manera simple lo que pasó ( y volverá a pasar ) con WannaCry/Ransomware/incidentes de las últimas semanas.


Mapa del Ataque de WannaCry.




Todo equipo electrónico (teléfonos, tables, portatiles, PCs, Cámaras web) tienen un "Programa" dentro que controla los componentes físicos.
El teĺéfono es un aparato electrónico físico pero al arrancarlo inicia un "Sistema Operativo" / "Firmware" que es el que nos permite interactuar con él, interpretando los toques en la pantalla, botones y realizando acciones.


Los que usan Windows, Windows es "el sistema operativo", los que usan productos Apple (OSX) es el sistema operativo, los que usan teléfonos con Android "Android" es el sistema operativo (Linux) y los que usan Linux igual.

Todo equipo físico requiere de una parte "programa"/"programable"/"cambiante" para manejarlo que pueda ser actualizable para poder mejorar sus funciones o arreglar fallos. Si esto no existiera la vida útil de un equipo se reduciría y ante un problema detectado, deberíamos cambiar el equipo físico por uno nuevo.

Como ejemplo, cuando alguien dice se me actualizó su teléfono, quiere decir que, el fabricante el teléfono envió otro S.Operativo para que pise/reemplace el que teníamos.

Además del S.Operativo, hay "programas" que corren sobre el S.O., por ejemplo el programa para leer correos, navegador en internet, facebook, whatsapp, google maps, etc.

Las empresas que desarrollan los programas también los actualizan y nos mandan nuevas versiones a nuestros equipos.



Dicho esto, ahora llegamos a una parte oscura y fea pero que es importante entender.

Todos los sistemas operativos y todos los programas fueron hechos por hombres que tuvieron descuidos o no contemplaron ciertas situaciones de uso, todos hemos vivido el que un programa se cierre solo, de un error o directamente se cuelga y tenemos que reiniciarlo. A veces solo un programa a veces el sistema operativo. Los que tengan Windows hace años, recordarán la frase de "reinicia el Windows cada dos o tres dias".

Nada es perfecto, y así como explotaban ciertas baterías por defectos de construcción, también ocurre que ciertos programas fallan si ocurre algo en particular (ciertas condiciones o combinaciones de acciones).

Esto no es nuevo y desde hace muchos años, las empresas tienen sitios donde se pueden reportar esos errores para que ellos los arreglen. Y en algunos casos hasta pagan a los informantes de esos errores.

En el caso de las empresas propietarias, Microsoft, Apple y otras tantas, suelen intentar tapar los errores porque cobraron por un producto que tiene fallos, cada uno representa un error/problema para su marca, un aumento de costo de reparación, una caída de su imágen... etc... Como esas empresas ganan dinero vendiendo sus productos, es "mejor" para ellos que no parezca tener tantos problemas. Y hay un costo asociado al arreglar esos problemas que reducen sus ganancias (millonarias), ademas de que venden el derecho de uso de un programa pero ellos siguen siendo los propietarios.

En el mundo GPL/Abierto de Linux, los errores/bugs son bien recibidos porque ayudan a mejorar el producto que todos estamos usando, de cierta manera es "mejor recibido" porque se busca tener productos de mejor calidad. No hay costo de uso, ni de licencia por lo que cada error es arreglado porque sirve para mantener la calidad de cada programa.



Ahora llegamos a una parte aún mas oscura.

Tal como han reportado Edward Snowden, Chelsea Manning, Richard Stallman, julian assange, Wikileaks, Anonymous y otros tantos profesionales/sitios de la tecnología, el Gobierno de Estados Unidos (seguramente otros también) ha comprado y desarrollado internamente programas para "explotar"/"Usar" los errores de otros programas, en lugar de reportarlo a Microsoft, Apple y otras empresas, se guardan el conocimiento de "si hago esto y esto, puedo entrar a un equipo con Windows remoto". Se lo denomina "explotar la vulnerabilidad" de un componente.

Hay un mercado de "programas que se aprovechan de errores de otros programas" con grandes empresas que facturan millones para encontrar esos fallos, también grupos de hackers oscuros en el mundo y hasta los propios gobiernos metidos, la inseguridad es un gran negocio porque permite tener el control de equipos de otros SIN SU PERMISO, colgarlos o destruirlos.

Hay pruebas de que la NSA y otras oficinas gubernamentales en el mundo han comprado ese tipo de programas a consultoras legalmente, amparados en sus leyes o no. Han logrado construir el denominado "armamento cibernético".

Ejemplo, supongamos que en un pais del medio oriente que usa Windows en sus equipos y quiere fabricar Uranio enriquecido.
A Estados Unidos (USA) no le gusta y les envía un virus/troyano/programa_malo para que infecte sus PCs y que esos equipos con Windows se reseteen cada hora, o la fecha/hora cambie permanentemente o aparezcan las pantallas azules de "colgado". Eso ha ocurrido y se llama "ataque cibernético" o "ciberataque". Ver Stuxnet.

Al mismo tiempo, puede haber grupos de hackers pagados por China, Rusia, Alemania, UK o "autónomos" que pueden hacer algo similar, desarrollan un programa e "infectan" determinados equipos (o todos los que puedan) para intentar ganar algo, sea molestar a otros, ganar dinero, bajar las acciones de la Bolsa... El daño es para unos y el beneficio para otros.

Creo que hay tres motivaciones para este tipo de acciones, motivaciones políticas/gobierno, motivaciones económicas personales/grupo o simplemente buscar "fama"/reconocimiento durante un tiempo.
Para las motivaciones económicas a veces el mal paga mas y mas rápido que el bien, no hay datos de lo recaudado por los cyberdelincuentes de WannaCry, pero seguramente es muchisimo mas de lo que hubieran ganado enviando los errores a Microsoft para su arreglo.

Si esto lo hacen grupos "muy malos" sin estar soportados por gobiernos se lo suele llamar "cyber terrorismo", es como poner una bomba en un centro comercial y generar "miedo".
Si lo hacen los gobiernos y aunque la acción sea la misma, se lo denomina "Seguridad Nacional"...

Las creencias nacionalistas, religiosas, morales hacen que todos estos grupos puedan ser vistos como "buenos o malos", no voy a emitir opinión.



Orígen del incidente del 12 Mayo.

Hace unos cuantos meses, un grupo de hackers pudo obtener una copia de todos los virus/troyanos/programas_malos de la NSA (su cyberarmamento), el paralelo sería entrar en un complejo de investigación de enfermedades contagiosas y robar las muestras de todos los virus que mantenían guardados (en muchos casos sin vacuna). Quien tenían esos virus los guardaba para enviarlos a un pais lejano y hacer ataques bacteriológicos a otros.

Ese grupo hizo público todos los virus que encontraron y pidió un rescate para vender/entregarlos en internet, cobrando Bitcoins a cambio. Comenzó a liberar de a partes lo que habían encontrado.
Y en un punto del tiempo hicieron público la información de todos los virus que le habían robado a la NSA.

Quizas ellos mismos o otros grupos hackers, obtuvieron esos virus, los mezclaron, les agregaron otras enfermedades y los enviaron a muchos emails en el mundo, generalmente como "Adjuntos en Email", o "Links de fotos/pdfs" o Webs infectados. Parece que lograron llegar a Telefónica, Sistemas de salud Ingleses, empresas de todo tipo y como los virus biológicos, estos virus informáticos infectaron cientos de miles de PCs en el mundo, en pequeñas empresas, grandes, equipos de Universidades, etc. El número total de infectados jamas se sabrá porque es casi imposible estimarlo. Muchas gente reinstaló Windows y no hay donde informar de eso.

En este caso le agregaron un componente para pedir dinero a los infectados, el virus infectó un equipo con Windows, encriptó determinados ficheros y pide dinero a su dueño para des-encriptarlo, esto se llama RansomWare (exactamente esto mismo apareció en una serie llamada MrRobot), una profesía autocumplida o un riezgo que todos veíamos y no se puedo parar.



El ataque.
Por determinadas condiciones todos los equipos infectados (quizas hace meses) se "activaron" y comenzaron a infectar a sus vecinos, y se disparó la epidemia, en varias empresas mandaron a sus empleados a la calle "SIN EQUIPOS" para evitar que contagie a otros equipos (en sus casas).

Esto pasó en equipos con Windows como sistema operativo, pero puede pasar con productos Apple, con Linux y lo peor de todo es que "puede volver a pasar nuevamente".

El programa ademas de encriptar los ficheros presenta una pantalla para pedir un "rescate" de unos 300 U$S, y por conocidos que han aceptado y enviado el dinero, les han enviado la clave para des-encriptar todos sus ficheros.

Gracias a empresas de seguridad que entendieron que estaba pasando, probaron soluciones y además informaron a Microsoft, se pudieron fabricar las vacunas para "ESE VIRUS".
El término es "patchear" Windows, colocarle unos parches/arreglos en sus programas para evitar que vuelvan a vulnerar esos mismos puntos.

Investigadores y consultoras de seguridad mundiales han verificado que en este caso, varios componentes del virus estaban en el armamento robado a la NSA, con una mezcla de otros programas y preparado para encriptar archivos y solicitar dinero.





¿ Responsables ?
Aqui nuevamente por razones "políticas, religiosas, humanas o sociales" se puede acusar a la NSA de construir, pagar y almacenar un muestrario de virus para sus propios fines, SIN avisar a Microsoft (en este caso) de lo que encontraron, buscando su propio beneficio en ataques a otros.
Podemos apuntar a Microsoft por sus políticas propietarias y oscurantismo en la manera de gestionar su seguridad, sus productos propietarios y por "permitir" que existan errores SIN arreglarse en sus productos. O que no hayan sido arreglados rápidamente.

Podemos acusar a un grupo de hackers malos que robaron el armamento bacteriológico/informático de la NSA, sería un robo en instalaciones de un ente de gobierno que se dedica a "Seguridad"...

Las personas y empresas que usan Windows y que confían en su seguridad y sistema de parches, también tienen un 2% de culpa, seguramente escucharon cientos de veces los problemas de un Sistema Operativo pero confiaron que no les pasaría nada, no hacían copias de seguridad, no tenían antivirus (algo que no les hubiera servido en este caso), no mantienen sus productos actualizados, etc.etc.... Es algo mínimo pero son responsables también.



¿ Esto puede volver a pasar ?
SI, SIN DUDA. la pregunta es ¿Cuándo?, porque puede volver a pasar hoy mismo.
¿ Puede ocurrir usando productos Apple ? SI, perfectamente.
¿ Y usando Linux ? Si, quizas en menor grado, pero SI, podría pasar.

Las estadísticas dicen que el 70% de los equipos tiene Windows, un 25% Apple y un 5% Linux. Para mi, eso esos números representan los porcentajes de que vuelva a ocurrir.

Grupos que busquen un beneficio económico o gobiernos que busquen un beneficio estratégico/económico pueden volver a provocar algo similar.



¿ Es este el fin de la tecnología tal como la conocemos ?
¿ Hará falta que la humanidad intente ser mas cooperativa, que mucha gente salga de productos propietarios y se pase a soluciones GPL ?
¿ Hace falta que los directivos de Seguridad en el mundo entiendan los problemas y vean como solucionarlos eficientemente en lugar de patear las pelotas fuera de la cancha ?
¿ Un mundo mas justo ?
Total, que no sea por no pedir.



jueves, 4 de mayo de 2017

VoltDB


En estos dias estoy probando VOLTDB, un nuevo producto para gestión de datos.
Requiere Java.... ya empezamos mal... hay que instalar unos cuantos componentes y ademas solo dice que está soportado para Ubuntu 16.04 (y no en nuevas versiones).

En fin, seguiré probando.


Todo esto sumado a que no compila....
buildinfo:
[exec] This is not a git working tree
[exec]
[exec] This not an svn working copy
[exec] Version: 7.2.1 This is not from a known repository

ee_buildmakefile:
[exec] Traceback (most recent call last):
[exec] File "build.py", line 52, in
[exec] if CTX.compilerName() == 'gcc':
[exec] File "/home/dac/voltdb-voltdb-7.2.1/buildtools.py", line 74, in compilerName
[exec] self.getCompilerVersion()
[exec] File "/home/dac/voltdb-voltdb-7.2.1/buildtools.py", line 92, in getCompilerVersion
[exec] vinfo = output = Popen([self.CXX, "-v"], stderr=PIPE).communicate()[1]
[exec] File "/usr/lib/python2.7/subprocess.py", line 711, in __init__
[exec] errread, errwrite)
[exec] File "/usr/lib/python2.7/subprocess.py", line 1343, in _execute_child
[exec] raise child_exception
[exec] OSError: [Errno 2] No such file or directory

BUILD FAILED
/home/dac/voltdb-voltdb-7.2.1/build.xml:1556: exec returned: 1

Total time: 2 minutes 23 seconds



Un buen rato después, varios paquetes instalados, sistema actualizado nuevamente..... otro error.

[exec] make[1]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d'
[exec] making all in crypto...
[exec] make[2]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto'
[exec] making all in crypto/objects...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/objects'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/objects'
[exec] making all in crypto/bn...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bn'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bn'
[exec] making all in crypto/buffer...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/buffer'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/buffer'
[exec] making all in crypto/bio...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bio'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bio'
[exec] making all in crypto/stack...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/stack'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/stack'
[exec] making all in crypto/lhash...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/lhash'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/lhash'
[exec] making all in crypto/rand...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/rand'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/rand'
[exec] making all in crypto/err...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/err'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/err'
[exec] making all in crypto/asn1...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/asn1'
[exec] make[3]: Nothing to be done for 'all'.
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/asn1'
[exec] if [ -n "" ]; then \
[exec] (cd ..; make libcrypto); \
[exec] fi
[exec] make[2]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/bin'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/engines'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/include'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/include/openssl'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/misc'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/certs'
[exec] created directory `/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/private'
[exec] making install in crypto...
[exec] make[2]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto'
[exec] making install in crypto/objects...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/objects'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/objects'
[exec] making install in crypto/bn...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bn'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bn'
[exec] making install in crypto/buffer...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/buffer'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/buffer'
[exec] making install in crypto/bio...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bio'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/bio'
[exec] making install in crypto/stack...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/stack'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/stack'
[exec] making install in crypto/lhash...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/lhash'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/lhash'
[exec] making install in crypto/rand...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/rand'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/rand'
[exec] making install in crypto/err...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/err'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/err'
[exec] making install in crypto/asn1...
[exec] make[3]: Entering directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/asn1'
[exec] make[3]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto/asn1'
[exec] make[2]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d/crypto'
[exec] installing libcrypto.a
[exec] cp libcrypto.pc /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig
[exec] chmod 644 /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig/libcrypto.pc
[exec] cp libssl.pc /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig
[exec] /bin/sh: 5: cmake: not found
[exec] make: *** [configure-s2-geometry] Error 127
[exec] chmod 644 /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig/libssl.pc
[exec] cp openssl.pc /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig
[exec] chmod 644 /home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install/lib/pkgconfig/openssl.pc
[exec] make[1]: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/openssl/openssl-1.0.2d'
[exec] Configuring The S2 Library for building.
[exec] if [ ! -f google-s2-geometry/Makefile ] ; then \
[exec] rm -rf google-s2-geometry; \
[exec] mkdir google-s2-geometry; \
[exec] cd google-s2-geometry; \
[exec] cmake -DCXX_VERSION_FLAG="-std=c++11" -DVOLTDB_THIRD_PARTY_CPP_DIR="/home/dac/voltdb-voltdb-7.2.1/third_party/cpp" -DCMAKE_INSTALL_PREFIX="/home/dac/voltdb-voltdb-7.2.1/obj/release/3pty-install" -DCMAKE_BUILD_TYPE="Release" "/home/dac/voltdb-voltdb-7.2.1/third_party/cpp/google-s2-geometry"; \
[exec] fi
[exec] makefile:382: recipe for target 'configure-s2-geometry' failed
[exec] make: Leaving directory '/home/dac/voltdb-voltdb-7.2.1/obj/release'
[exec] Building with c++11
[exec] Compiler: gcc 5.4.0
[exec] OpenSSL: version 1.0.2d, config linux-x86_64:gcc -fpic
[exec]
[exec] Making in directory "obj/release/" with 1 threads

BUILD FAILED
/home/dac/voltdb-voltdb-7.2.1/build.xml:1546: exec returned: 255

Total time: 1 minute 2 seconds

lunes, 24 de abril de 2017

Cámara de Fotos de Carrefour


Hace unos dias recibí un cupón de "DESCUENTO" de Carrefour para comprar una cámarita "PARECIDA" a una GoPro, por un precio mínimo (29€) aunque el precio de lista dicen que era de 70 €uros.


La compré para probarla, sin esperar demasiado y dos horas después la devolví, aquí están las razones.

Ni se imaginarán la calidad del video/audio cuando grabé.



miércoles, 19 de abril de 2017

Bot Trading v2.0


Ya tengo la pantalla de la última versión del BOT para Trading de BTC Bitcoins.

En breve tendré listo la máquina virtual para operar, all-in-one. Eso facilitará la puesta en marcha a personas no-técnicas.
También se mejorará la comunicación con otros mercados (big traders) y mayor inteligencia del BOT.

Me preguntaban que pocentaje de efectividad tiene el BOT, humildemente tiene un 100% de efectividad... aunque parezca una frase de marketing es real, solamente opera cuando se cumplen determinadas situaciones del mercado que nos favoreces, es decir, cuando opera ganará un porcentaje mínimo, puede demorar horas o dias en operar pero nunca pierde dinero.

¿ Quieres verlo en funcionamiento ? te interesa ? te gustaría usarlo ?
Se ofrece en un paquete de
* Equipo funcionando (real o virtual)
* Curso de 1 horas para su configuración
* Curso de 3 horas sobre trading de BTC
* Soporte por email en caso de incidentes del BOT y sus respectivos parches durante un año.

¿ Qué estas esperando para usarlo ?


New York hotspots


Gracias a DECO por enviarme unas fotos de unos equipos que están en la Ciudad de New York, al mejor estilo HotSpot llamado LinkNYC, ofrecen dos conectores para cargar USB, algo realmente tan necesario como el agua... Ideal para personas que se queden sin bateria en la calle, también un sistema mediante una tablet para hacer llamadas sin costo, posibilidad de llamar al 911 directamente, poder conectarle unos auriculares y muestran publicidad en unos monitores muy grandes, que supongo que es el sistema para financiarlo.

Como idea me parece brillante, lo he visto en trenes, autobuses y otros medios de comunicación, pero esto en la calle es "MUY BUENO", ademas de poder hacer llamadas.

Imagino que tienen algunas camaritas que graban todo el dia, y quizas mas gadgets para saber que esta pasando a unos metros de cada uno de estos Links. Ojalá hicieron algo similar en nuestras queridas ciudades. Veo que también dan mensajes en Español.

¿ Qué les parece ?


Bot para Trading Bitcoin


Ya está funcionando la nueva versión de BOT paar Trading Bitcoins, mas funciones, mas datos, interfaz mejorada...
Las primeras versiones fueron del 2014, hoy sigue operando.

viernes, 31 de marzo de 2017

Raspberry PI Server


Raspberry PI 1b como servidor en casa

Hace mas de 8 años que tenemos un portátil como servidor en casa, un Celeron II + 4 gb + 128 gb SSD y Xubuntu.
Lo compramos por unos 300 €uros en época de ofertas y luego le pusimos el disco 128 SSD.


El server hace todo lo que necesito y también sirve como "Cliente" para la familia, los productos/servicios que tiene corriendo son
Servidor Correo para varias cuentas de la familia
Srv OwnCloud
Srv SSH
Srv web + https + servicios + php + cgis + WebMail
Srv de Impresión + Impresora HP Laser
Srv openvpn (VPN)
Srv Squid (proxy)
Srv MySQL
noip2 (gestión de ip dinámico)
ThinkSpeak (monitorización del server remota)
LetsEncrypt
mpg123 (mp3 player como hilo musical)

Estos son aplicaciones Clientes
www.netflix.com
GMusicPlayer (reprod mp3)
PGAdmin
VirtualBox (con 2 equipos virtuales)
Skype + Whatsapp + telegram + slack
Aftershoot (retoques de fotos)
R Studio
Remmina
Keypassx
WPS (clone de office)
Claws (cliente de correo)
RoboMongo
SqlDeveloper (Oracle)
SublimeText3
TeamViewer 12
VeraCrypt
Vivaldi browser
GPG4USB
SNX para redes VPN en empresas

Suele estar encendido las 24 hs todos los dias del año, excepto durante las vacaciones, las teclas están gastados, pensaba en cambiarlo y poner algo mejor/mejor. pensando que ya tenemos 4 portátiles en casa, comprar otro mas para servidor produciría pasar a tener 5 (CINCO) portátiles.... parece demasiado.

¿ Porqué una PI 1b ?
Recordé que tenía tirada en un cajón una Raspberry PI B (512 mb), estaba tirada desde hace unos 3 años luego de hacer pruebas y descubrir que le faltaba potencia para ser un ReproMultimedia, el KODI es muy bueno pero la PI es demasiado poco para moverlo.
https://kodi.tv/kodi-v17-1-krypton/

Luego de probar Raspbian, pendrive, teclados, ratones, wifi USB... fue al cajón.

Hasta hace 1 mes atras, donde pensé en darle otra oportunidad.
https://www.raspberrypi.org/products/model-b/

Pensé en Raspbian, un SD de 8 gb serie 10 que también estaba tirado en el cajón.
https://www.raspberrypi.org/downloads/noobs/

La instalación es bastante simple, bajar Noobs, renombrarlo de ZIP a ISO, usando DD, pasar el ISO al SD, meter el SD en la PI y enchufar un cargador de teléfomo MicroSD.
Durante la instalación indicar un "overclock MEDIO", para que no caliente tanto la PI pero que los Mhz que brinde el micro sean un poco mayores. La verdad que es que el CPU es muy limitada en potencia (ARM) y 512 no es tanto, pero acaba funcionando un Raspbian con interfax gráfica.


Luego estuvo unos dias, quitando cosas, la parte gráfica, paquetes y servicios que no necesitaba, con eso logré llegar a los 800 megas usados en Disco y un consumo inicial de ram de 150 megas.

Al ser Debian (cada año que pasa me gusta mas), fuí copiando configuraciones y archivos del portátil (server viejo) a la PI (Server nuevo). El proceso era instalar el producto (ej: apt install squid) y luego pisar los ficheros de configuración.

Estuve unos 15 horas para preparar todo, algunos procesos son demasiado lentos para la PI, algo que con un disco SSD y un Celeron demoran segundos, en la PI fueron minutos. pero quedó todo funcionando bastante bien.

Luego tuve que cambiar unas reglas en el router para redireccionamiento de puertos y mantener ambos servidores en paralelo durante unos dias.

Hoy llevo un mes funcionando únicamente con la PI, el consumo eléctrico es notoriamente menor, ocupo mucho menos espacio en mi "cuevita" informática privada (cajita plástica), tengo que acomodar las partes, porque ahora tengo un monitor Dell 27" que enciendo durante las horas de trabajo en casa.
https://www.amazon.es/gp/product/B00OOKGECK/ref=oh_aui_detailpage_o02_s00?ie=UTF8&psc=1



El viejo servidor Asus, ahora está cerrado la mayoría del tiempo (hibernando), lo abrimos y usamos para ver NetFlix, navegación en internet y edición de fotos. Unas horas cada dia como mucho.

He logrado pasar todo a una PI 1b y que funcione bastante bien, inclusive OwnCloud y OpenVPN que son productos mas pesados, funcionan "bastante bien". La velocidad no es la misma que con el Portátil y el SSD... pero se pueden usar.


Para OwnCloud instalé un miniusb de 16 gb conectado a la PI, suficiente para los archivos de uso diario, además de tener dos NAS de 1 tb cada una conectadas a la red.


Pensé en colocarle XFCE y usarla como Browser, pero la PI no lo soporta, es lenta y con poca RAM para eso, en mi portátil personal (Asus tp300) veo que uso 6 gb de RAM solo con Firefox... imposible tener funcionando la parte gráfica en la PI, aunque la parte texto si que funciona bien.


Al arrancar con todo funcionando, usa 124 mb ram.




SCRIPT para enviar datos a thingspeak
#!/bin/bash

api_key='xxxxxxxxxx'

stat | awk '/^cpu / {print $5}'`; USED=`echo 2 k 100 $SECOND $FIRST - $NUMCPUS / - p | dc`
used_cpu_percent=`awk -v a="$(awk '/cpu /{print $2+$4,$2+$4+$5}' /proc/stat; sleep 1)" '/cpu /{split(a,b," "); print 100*($2+$4-b[1])/($2+$4+$5-b[2])}' /proc/stat`
echo $used_cpu_percent

# get memory
used_mem=`ps -A | wc -l`
# free -m | tr -s ' ' | grep buffers/cache | cut -f3 -d' '`
# total_mem=`free -m | tr -s ' ' | grep Mem | cut -f2 -d' '`
# used_mem_percent=`echo "scale=2;100*$used_mem/$total_mem" | bc`
echo $used_mem

# get disk use as a percent
used_disk_percent=`df -lh | awk '{if ($6 == "/") { print $5 }}' | head -1 | cut -d'%' -f1`
echo $used_disk_percent

# Post Ext Storage usage
disco=`df -h | grep /opt | cut -c 34-36`
echo $disco

# post the data to thingspeak
curl -k --data "api_key=$api_key&field1=$used_cpu_percent&field2=$used_mem&field3=$used_disk_percent&field4=$disco" https://api.thingspeak.com/update



Finalmente los servicios que quedaron corriendo son

[ - ] alsa-utils
[ + ] apache2
[ + ] avahi-daemon
[ - ] bootlogs
[ - ] bootmisc.sh
[ - ] checkfs.sh
[ - ] checkroot-bootclean.sh
[ - ] checkroot.sh
[ + ] console-setup
[ + ] cron
[ + ] cups
[ + ] cups-browsed
[ + ] dbus
[ + ] dhcpcd
[ + ] dovecot
[ + ] dphys-swapfile
[ + ] fake-hwclock
[ - ] hostname.sh
[ - ] hwclock.sh
[ + ] kbd
[ + ] keyboard-setup
[ - ] killprocs
[ - ] kmod
[ - ] lightdm
[ - ] motd
[ - ] mountall-bootclean.sh
[ - ] mountall.sh
[ - ] mountdevsubfs.sh
[ - ] mountkernfs.sh
[ - ] mountnfs-bootclean.sh
[ - ] mountnfs.sh
[ + ] mysql
[ + ] networking
[ - ] nfs-common
[ + ] ntp
[ + ] openvpn
[ - ] plymouth
[ - ] plymouth-log
[ + ] postfix
[ + ] procps
[ + ] raspi-config
[ + ] rc.local
[ - ] rmnologin
[ - ] rpcbind
[ - ] rsync
[ + ] rsyslog
[ - ] saned
[ - ] sendsigs
[ + ] squid
[ + ] ssh
[ - ] sudo
[ + ] triggerhappy
[ + ] udev
[ + ] udev-finish
[ - ] umountfs
[ - ] umountnfs.sh
[ - ] umountroot
[ + ] urandom
[ - ] x11-common



Los puertos

PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
143/tcp open imap
443/tcp open https
631/tcp open ipp
993/tcp open imaps
3128/tcp open squid-http
3306/tcp open mysql


Almacenamiento

Filesystem Size Used Avail Use% Mounted on
/dev/root 5,9G 2,8G 2,8G 50% /
devtmpfs 214M 0 214M 0% /dev
tmpfs 218M 0 218M 0% /dev/shm
tmpfs 218M 8,6M 209M 4% /run
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 218M 0 218M 0% /sys/fs/cgroup
/dev/mmcblk0p6 65M 21M 45M 32% /boot
/dev/sda1 15G 4,0G 9,4G 30% /opt/a
tmpfs 44M 0 44M 0% /run/user/1000
tmpfs 44M 0 44M 0% /run/user/0


Procesos

systemd─┬─agetty
├─apache2───10*[apache2]
├─avahi-daemon───avahi-daemon
├─colord─┬─{gdbus}
│ └─{gmain}
├─cron
├─cups-browsed
├─cupsd
├─dbus-daemon
├─dhcpcd
├─dovecot─┬─anvil
│ └─log
├─login───bash
├─master─┬─anvil
│ ├─pickup
│ ├─proxymap
│ ├─qmgr
│ ├─smtpd
│ └─tlsmgr
├─mysqld_safe───mysqld───23*[{mysqld}]
├─noip2
├─ntpd
├─openvpn
├─packagekitd─┬─{gdbus}
│ └─{gmain}
├─polkitd─┬─{gdbus}
│ └─{gmain}
├─pulseaudio───{null-sink}
├─rsyslogd─┬─{in:imklog}
│ ├─{in:imuxsock}
│ └─{rs:main Q:Reg}
├─rtkit-daemon───2*[{rtkit-daemon}]
├─squid───squid───unlinkd
├─sshd───sshd───sshd───bash───sudo───su───bash───pstree
├─2*[systemd───(sd-pam)]
├─systemd-journal
├─systemd-logind
├─systemd-udevd
└─thd

lunes, 6 de marzo de 2017

Node.js


Necesito hacer un programa bastante sencillo en Node.js, así que luego de 3 años retomo el tema y trataré de hacerlo aprendiendo.
Acepto voluntarios que me ayuden un poco...

Dejo links a ayudas.
http://stackoverflow.com/questions/2353818/how-do-i-get-started-with-node-js

Linux disable IP6


en el archivo /etc/sysctl.conf
agregar estas líneas al final

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1


luego hacer un
sysctl -p

domingo, 19 de febrero de 2017

Linux CPU speed y ahorro de energia



En estas últimas semanas en modo paranoico, estoy tratando de reducir el consumo eléctrico de mi portátil y al mismo tiempo hacer durar la batería todo lo posible.

Primero instalar los "CPU FREQ Utils", luego definir a mano la velocidad o el modo en el que quiero que trabaje el equipo (CPUs).

# apt install cpufrequtils

# Info sobre las velocidades del CPU que están soportadas.
cpufreq-info
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
driver: intel_pstate
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 0.97 ms.
hardware limits: 800 MHz - 1.80 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 800 MHz and 1.80 GHz.
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 1.80 GHz (asserted by call to hardware).


# Cambio a una determinada velocidad.
cpufreq-set -f 1000

# Cambio a un modo de funcionamiento. (powersave, performance)
aunque en otros equipos dice ondemand, powersave, conservative.

cpufreq-set -g powersave

lunes, 13 de febrero de 2017

Debian Tactiles


En estos dias configuré un display táctil y touchpad para un equipo "transformer", donde el display se gira y parece una tablet.
Un excelente equipo y ahora demás bastante bueno para leer y manejarlo de manera táctil.

El script que usé debajo, y programé el botón de "giro" para que lo invoque y gire a la izquierda o vuelva al modo normal.
En XFCE, dentro del APP "Keyboard", luego "Application shorcut" y agregar una entrada que invoque al script.



#!/bin/bash
#
# rotate_desktop.sh
#
# Rotates modern Linux desktop screen and input devices to match. Handy for
# convertible notebooks. Call this script from panel launchers, keyboard
# shortcuts, or touch gesture bindings (xSwipe, touchegg, etc.).
#
# Using transformation matrix bits taken from:
# https://wiki.ubuntu.com/X/InputCoordinateTransformation
#

if [ -f /tmp/pantalla.txt ]
then
xrandr --output eDP-1 --rotate normal
xinput set-prop 'FocalTechPS/2 FocalTech Touchpad' "Coordinate Transformation Matrix" 1 0 0 0 1 0 0 0 1
xinput set-prop 'Atmel' "Coordinate Transformation Matrix" 1 0 0 0 1 0 0 0 1

killall florence

rm /tmp/pantalla.txt

else
xrandr --output eDP-1 --rotate right
xinput set-prop 'FocalTechPS/2 FocalTech Touchpad' "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1
xinput set-prop 'Atmel' "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1

florence &

echo " " > /tmp/pantalla.txt
chmod 777 /tmp/pantalla.txt

fi

exit 0
#
# fin
#



viernes, 27 de enero de 2017

DooGee


Llevamos un año probando un teléfono DooGee X5Pro, bastante bueno salió.
En estos dias encontré el sitio para descargar el firmware y tenerlo al dia.

http://www.doogee.cc/bbs/viewtopic.php?f=10&t=29

El proceso es muy sencillo, bajar el último fichero de tu modelo (en mi caso x5 pro), es un RAR.
Luego copiarlo a la memoria del teléfono via USB desde un PC.
Luego desde el teléfono indicar "Actualizar Firmware" y usar la opción manual,buscando el fichero ZIP.

Todo perfecto. ahora mismo está en "Android 6.1"

jueves, 15 de diciembre de 2016

Debian y Fedora


Un post bastante sencillo de leer, simple con información de Debian y de Fedora.
Hay comparativas mas completas, esta me pareció "muy buena" para leer.
http://www.datamation.com/open-source/debian-vs.-fedora.html

lunes, 28 de noviembre de 2016

Ono Problemas


Por lo que veo (y esto no es nuevo).... Ono/Vodafone mantiene redes privadas entre mi router y el resto de internet.
Veo al menos 3 redes 10.xx.xx.xx que agregan delay además de tener un equipo que parece ser un "Windows...."
En los Pings, hay cerca de 5-10% de pérdida de paquetes.


1 gateway (192.168.10.1) 0.975 ms 1.200 ms 1.415 ms
2 10.219.224.1 (10.219.224.1) 9.812 ms 11.110 ms 11.121 ms
3 10.127.46.241 (10.127.46.241) 11.757 ms 11.943 ms 12.169 ms
4 10.254.13.5 (10.254.13.5) 12.167 ms 15.443 ms *
5 * * *
6 * 62.42.228.62.static.user.ono.com (62.42.228.62) 8.771 ms 9.754 ms
7 72.14.235.20 (72.14.235.20) 13.159 ms 13.352 ms 12.350 ms
8 216.239.43.111 (216.239.43.111) 29.042 ms 29.267 ms 28.294 ms
9 216.239.46.216 (216.239.46.216) 62.484 ms 63.336 ms *


nmap 10.127.46.241

Starting Nmap 7.12 ( https://nmap.org ) at 2016-11-27 23:40 CET
Nmap scan report for 10.127.46.241
Host is up (0.0100s latency).
Not shown: 994 closed ports
PORT STATE SERVICE
135/tcp filtered msrpc
139/tcp filtered netbios-ssn
445/tcp filtered microsoft-ds
512/tcp filtered exec
513/tcp filtered login
514/tcp filtered shell




64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=7 ttl=53 time=48.9 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=8 ttl=53 time=50.3 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=9 ttl=53 time=48.9 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=10 ttl=53 time=55.1 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=13 ttl=53 time=49.7 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=14 ttl=53 time=49.2 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=15 ttl=53 time=48.2 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=16 ttl=53 time=51.5 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=17 ttl=53 time=48.4 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=19 ttl=53 time=47.9 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=20 ttl=53 time=49.4 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=21 ttl=53 time=50.2 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=22 ttl=53 time=48.5 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=23 ttl=53 time=49.0 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=25 ttl=53 time=48.8 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=26 ttl=53 time=52.7 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=27 ttl=53 time=48.4 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=28 ttl=53 time=49.2 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=29 ttl=53 time=49.9 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=30 ttl=53 time=49.2 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=32 ttl=53 time=62.4 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=33 ttl=53 time=48.6 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=34 ttl=53 time=49.1 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=35 ttl=53 time=50.1 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=36 ttl=53 time=49.0 ms
64 bytes from bud02s21-in-f3.1e100.net (216.58.209.163): icmp_seq=38 ttl=53 time=49.0 ms






Todo puede empeorar
traceroute www.google.es
traceroute to www.google.es (216.58.210.195), 30 hops max, 60 byte packets
1 routerono.home (192.168.10.1) 1.557 ms 2.192 ms 2.183 ms
2 10.219.224.1 (10.219.224.1) 9.091 ms 13.563 ms 13.714 ms
3 10.127.46.241 (10.127.46.241) 17.088 ms 17.088 ms 17.076 ms
4 10.254.13.9 (10.254.13.9) 17.248 ms 10.254.16.249 (10.254.16.249) 29.038 ms 10.254.13.5 (10.254.13.5) 17.235 ms
5 10.254.14.110 (10.254.14.110) 17.408 ms 17.408 ms 10.254.11.1 (10.254.11.1) 19.130 ms
6 62.42.228.62.static.user.ono.com (62.42.228.62) 53.681 ms 50.940 ms 49.646 ms
7 72.14.235.18 (72.14.235.18) 15.527 ms * 35.807 ms
8 216.239.56.39 (216.239.56.39) 91.722 ms 91.724 ms 91.458 ms
9 64.233.174.55 (64.233.174.55) 50.629 ms 50.592 ms 50.615 ms
10 mrs04s09-in-f3.1e100.net (216.58.210.195) 50.023 ms 49.062 ms *


jueves, 17 de noviembre de 2016

SQL Server for Linux


En 1999 preparé un curso de "mSQL y MySQL" (gracias a Dominio Digital), en ese momento MySQL era el motor preferido para aplicaciones Webs, un motor sencillo, rápido, basado en SQL, pocos consumos de memoria...

Han pasado 17 años y aunque hoy MySQL ya tiene primos (Percona, MariaDB), y por supuesto la versión Oracle MySQL... siendo uno de los mas usados.

Aparece SQL Server para Linux, claramente una Base de datos que hacía tiempo que nos preguntábamos los DBA, cuando harían finalmente la adaptación para tenerla en Linux.

Hasta hace unos años Microsoft continuaba sus negocios de monopolio, aislamiento, utilización de sus standards y productos. Era obvio pero Windows + SQL Server + IIS era lo que buscaban.

Casi Año 2017 - supongo que han entendido que "perdieron esa guerra también", su S.O. cabecera (Windows) ya no es el nro uno, Android + Linux + Unix les comieron el mercado de servidores, en el mundo Desktop, entre Apple y algunos Linux, sigue habiendo un pequeño porcentaje de equipos SIN WINDOWS.

Si miramos Azure, el 30% son servidores Linux y con este nuevo producto (SQL Server for Ubuntu), ese porcentaje será aún mayor. Es bueno reconocer los errores y tratar de rectificarlos, pero a veces es tarde y el mercado tecnológico global no perdona.

En 5 años, mi pronóstico es:
* 80% de servidoresd con Linux (y en Azure lo mismo)
* 30% MySQL
* 20% Oracle
* 50% SQL Server


LINKS AL TEMA SQL SERVER PARA WINDOWS - Para Linux
https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-ubuntu


En mi servidorcito

apt install mssql-server

Reading package lists... Done
Building dependency tree
Reading state information... Done
mssql-server is already the newest version (14.0.1.246-6).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.


I COMENZAMOS nuevamente con los períodos de evaluación....
cd /opt/mssql/bin
./sqlservr
This is an evaluation version. There are [176] days left in the evaluation period.


uname -a
Linux dcialdella 4.8.6-040806-generic #201610310831 SMP Mon Oct 31 12:33:48 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux


Para instalar el cliente, mas problemas. (tengo Xubuntu 16.10)
apt-get install -y mssql-tools msodbcsql unixodbc-utf16 libodbc1-utf16 odbcinst1debian2-utf16



sqlcmd -S 127.0.0.1 -U sa
Password:
1> select @@version
2> go

---------------
Microsoft SQL Server vNext (CTP1) - 14.0.1.246 (X64)
Nov 1 2016 23:24:39
Copyright (c) Microsoft Corporation
on Linux (Ubuntu 16.10)

(1 rows affected)





viernes, 7 de octubre de 2016

Exploit Pack


Link a la página del Exploit Pack, se puede bajar en forma gratuita.
http://exploitpack.com/download.html

DNS traffic is highly relevant for correlation attacks be-
cause it often traverses completely different paths and au-
tonomous systems (ASes) than the subsequent corresponding
TCP connections. An attacker that can observe occasional
DNS requests may still be able to link both ends of the
communication, even if the attacker cannot observe TCP
traffic between the exit of the anonymity network and the
server. Figure 1 illustrates how an adversary may monitor the
connection between a user and the guard relay, and between
the exit relay and its DNS resolvers or servers. This territory—
to-date, completely unexplored—is the focus of this work.

jueves, 29 de septiembre de 2016

Google vs Yahoo


1998: YAHOO refused to acquire Google for 1M
2002: YAHOO realized its mistake and offered 3B, Google requested 5B, YAHOO refused.
2008: Microsoft offered 50B to acquire YAHOO, YAHOO rejected the offer
2016: YAHOO has been acquired for 5B Current, value of Google is around 545B

lunes, 12 de septiembre de 2016

EBITDA


Información sobre EBITDA.
https://es.wikipedia.org/wiki/EBITDA

Como tantos indicadores, pueden dar una idea general de la posición económica de una empresa, pero tener cuidado.

sábado, 10 de septiembre de 2016

Arch Linux


Cada 2/3 meses hay que instalar desde cero un ArchLinux..... son cosas que hay que recordar y darle valor.
Puedes instalar un OBSD 6.0 o un ArchLinux, aunque prefiero Debian, es bueno instalar un Arch también.

Dejo el tutorial de Instalación con XFCE (My Desktop preferido)
https://www.howtoforge.com/tutorial/arch-linux-installation-with-xfce-desktop/

Ante dudas mirar este link también-
https://wiki.archlinux.org/index.php/Installation_guide

lunes, 5 de septiembre de 2016

GPG4USB es tu amigo.


Este post te explicará los conceptos básicos del sistema de Clave Pública/Privada (GPG gnu pretty privacity), anteriormente llamado PGP (Pretty Good Privacy) creado en 1991 por Phil Zimmermann.

Está pensado para que puedas entender los conceptos y aprender a usar la herramienta, algo que vengo usando desde 1999. (ver mis claves mas usadas en https://dcialdella.no-ip.com/dac.asc )

Mi idea al escribir el post es que le sirva a la gente que quiera entender que es GPG, solución gratuita, funcional y para mantener su privacidad.
Intenté hacerlo simple y corto pero no fue tan fácil.


ALGUNOS CONCEPTOS.
¿ Qué es GPG ?
Es un sistema criptográfico compuesto por una clave pública y privada, que permite entercambiar mensajes y ficheros entre personas garantizando la privacidad del mismo, garantizando el ORÍGEN emisor y que SOLO el DESTINO receptor pueda leerlo. También permite "LA FIRMA" de un mensaje para que un destinatario pueda garantizar que lo mandé yo mismo y no fué alterado en el camino.

Una explicación mas detallada, ver aqui https://es.wikipedia.org/wiki/Pretty_Good_Privacy

GPG4USB es un producto gratuito que utiliza GPG pero que permite tener los programas y las llaves en una carpeta. Esa carpeta se puede copiar y tener en un Pendrive (o donde la necesitemos). Sería la versión portátil y fácil de usar, con un GUI muy sencillo y al estar hecho bajo la licencia GPL nos garantiza la calidad y la auditoría de su código.

Los pasos para poder usar GPG son :

* Descargar GPG4USB (que es lo más fácil) de este sitio. https://gpg4usb.org/download.html

* Descomprimir la fichero en una carpeta, personalmente prefiero hacerlo en un PENDRIVE y llevarlo a todos lados. Si quiero usarlo, basta conectar el pendrive y darle doble-click al ejecutable. (mas sencillo imposible !!!!)

* Al ejecutarlo por primera vez, veremos algo como esto.


* A la derecha, veremos que ya tenemos una clave "pública" almacenada en nuestro programa. Es la clave usada por los desarrolladores, con un fingerprint ( F145 3A7A 02E5 4A6F CD41 5C87 80A4 4321 2ECD 733A ), aunque puede que en futuras versiones cambie. Si le damos botón derecho y "SHOW KEYDETAILS", veremos que se creó en el 2008. el email asociado gpg4usb@cpunk.de, la medida de la clave.


* Ahora tenemos que crearnos una clave personal. Será nuestra clave para enviar/recibir información y tiene el mismo valor que las llaves de nuestra casa/coche.
Como comentamos antes, el sistema se basa en un proceso que genera una clave "pública y otra privada". Como analogía, la clave privada es nuestra llave de casa y la llave pública la cerradura de casa. No es exactamente así pero como concepto nos sirve.
Ambas claves trabajarán en conjunto para realizar el proceso de "abrir" algo y también para que quien tenga "una copia de mi cerradura" y yo pueda meter mi llave y abrir, confirmará que esa cerradura es mia.

El proceso de generar la llave y la cerradura utiliza números primos muy grandes y es de los sistemas mas seguros que existen hoy en dia, si alquien quiere copiarnos la lalve o cerradura se dice que demorará cientos/miles de años para hacerlo.
En seguridad, el nivel de "SEGURO" se mide en cuanto tiempo se necesita para romperlo. Hoy en dia GPG es "lo mas seguro".

Para crear nuestra primer llave y candado (clave privada y pública) debemos ir a "KEYS", luego "MANAGE KEYS", luego "KEY" y "GENERATE KEY". En ese punto vamos a crearnos una clave.
Se pueden crear tantas claves como querramos, es gratuito y bueno dar diferentes llaves a diferentes personas.
También usar claves para la familia y otras para fines comerciales.
Y las combinaciones que querramos. Todo esto es gratis, fácil y sirve para tener mas seguridad.

Al crear la clave debemos asociar un nombre (ej: DAC Clave para amigos), un email (para que sea fácil de encontrar luego), un comentario (blabla), la longitud de la clave (hoy en dia la máxima longitud en bits es 4096), es gratis entonces usemos la clave mas grande..... y luego una contraseña que usaremos para validar que somos nosotros para poder usar la clave GPG.
Es decir, para poder encriptar, firmar o desencriptar un mensaje tengo que decirle al programa GPG4USB que "yo soy yo" usando esta clave.
Obviamente esta clave debe ser larga, con letras, números y símbolos especiales para que también sea segura. Lo mismo que cualquiera de nuestras claves de correo, web, etc...

* El proceso demorará unos segundos/minutos hasta que nos aparezca el mensaje de "COMPLETADO", en ese momento ya tendremos nuestra clave PRIVADA/PÚBLICA creada.



* En la ventana de la derecha, aparecerá una línea indicando que ya existe una nueva clave privada/pública (la que acabamos de crear). En mi caso tengo cientos de claves públicas de personas con las que me escribo y mis claves privadas.



* ¿ Qué hago con mi clave pública ahora ?
Botón de la derecha sobre la clave personal que me acabo de crear y selecciono "APPEND SELECT KEY TO TEXT", verán que aparece en la ventana de la izquierda un texto similar a este.
Arriba del mensaje dice "PUBLIC KEY" (Clave pública)

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1

mQINBFcV8WkBEACr1HGdclejqG9X41/I1P1Nl+HOjeb0Gq62uVawr4b4/h76sZL/
rgpBG/Kf7enN6uIREQ7X7DCRACEzFEZ1pOfxe0cUiF6Isn9D7fAE9f7SWJE7PIEv
NUEBjs63MzxJLLa6wOuJuB/wmWYe0B3cWcksRXscFjXycgANJrIRbmNJjH3qS3Ny
.....
T3CdoNOz+3G4tBWC6guZDL+vuxE/7fkP/U28EbmH8RsEr8xIzKSsNDOkkeBBbwCx
ZGxczeuXZSeMgpukFEveHGdarN9xU5xfbICQg/h4qx4xdU9EHwz7XfYquLBcT8ft
ZkiDlET0uBlAMa6BR1ncnA==
=9Bl/
-----END PGP PUBLIC KEY BLOCK-----


Como pueden ver arriba de todo es mi CLAVE PÚBLICA.



* Esa clave se copiará a los servidores de claves en internet (pgp.mit.edu y otros) automáticamente.
No hay problemas en copiar mi clave en esos servidores, como tampoco hay problemas en darle mi clave PUBLICA a todos mis conocidos. Es "COMO SI FUERA MI CERRADURA", puedo dar copias porque la llave la tengo yo.

Ese texto generado (clave pública) se que puede copiar y enviar a todas las personas con las que quiero intercambiar mensajes encriptados o que puedan verificar que soy el generador de un contenido.

Cuando creamos la clave pusimos un email, eso quiere decir que otras personas podrán buscar nuestras claves en los servidores de claves públicas (como el del MIT) poniendo ese email. Si buscan dcialdella@gmail.com verán algunas de mis claves.

También es posible exportar la clave privada, lo veremos al final de todo. Sólo es recomendable tener la clave privada en un fichero texto aislado y sin acceso físico por nadie (caja fuerte). Esa clave nos representa y quien tenga ese fichero será nosotros mismos.


* Ahora el concepto principal de GPG.
Si tenemos la clave PUBLICA de alquien (nuestro amigo) le podemos enviar un mensaje encriptado (usando SU clave pública) y solamente él podrá leerlo (porque tiene SU clave privada).
Si él nos envia un mensaje usará nuestra clave pública, nosotros lo leeremos con nuestra clave privada.

Veamos un ejemplo, queremos enviarle un mensaje privado a los chicos que mantienen GPG4USB.

En la ventana de la izquierda escribo un texto, en la derecha SELECCIONE su clave pública.
Y luego pulso el botón de "ENCRYPT", arriba a la izquierda.


GPG4USB encriptó el texto y nosotros debemos copiarlo/pegarlo en el programa de correos que usemos.


Veremos arriba que dice "PGP MESSAGE", este texto es UN MENSAJE PGP encriptado.

-----BEGIN PGP MESSAGE-----
Version: GnuPG v1

hQIMAxRjiX6x1+xoAQ/9Hkbu/OyETJVB/kdjbXoEXFdqd2yD9KoyjwH5DQ/HJ/MW
zLCJzYHdDhWEdJ9Fy+4awDEywQCyLHCdE/jHfcGhUhQdFn18GVFKv30Wjh/bvZb/
eYl4glKjJcHLUgGeO/Vo33QDq9OlYw989qMH12GNUzT8ya2pxVhcDQCYXwBiMmiz
09E09u0Fm6xFB3HQlyNisi69QOU6v0OckO8OMqc7EVDsRuwrcG4TkGJOQJAoVdz8
5SPyEkTfBxscwFjjph7yGZc2EjOhwnCdzAJENcwiBkFxMao/+vVRvrPYVAMC0lwB
BfSl4eowsK/SE19MGzcqhuXLj8Z3nQ/U8p8LsBHs20WqsLH6igKDPl6SnAdiV7+g
p45Flr52wM80j2FxRmqncP8vzL/NZqBe6B5nisZhjHJs3AWdk5GqfU8Lrw==
=RxYM
-----END PGP MESSAGE-----

* También tiene un botón de FILE, para encriptar y des-encriptar un fichero, seleccionamos el FICHERO INPUT (Entrada), el fichero OUTPUT (Salida encriptada) y que clave queremos usar (usará la clave pública de los destinatarios)


* Supongamos que escribo un texto en la ventana de la izquierda, y SELECCIONO la clave de alguien PERO NO SELECCIONO MI PROPIA CLAVE, el mensaje se encripta y SOLO el destinatario puede verlo. ESO ME EXCLUYE y yo no puedo des-encriptar el mensaje porque no estoy entre los destinatarios del mismo (o mi clave pública no se usó para encriptarlo).

En esta pantalla, encripté un mensaje para alguien y luego quiero desencriptarlo. No podré porque no tengo la clave PRIVADA del destino necesaria para ver el contenido.
Tuve y usé la clave pública de otro para encriptarlo, pero sin la clave privada del otro no puedo desencriptarlo.




* El último concepto es la firma de un mensaje.
En la ventana izquierda escribo un texto y selecciono "SIGN" (firmar), aparecerá un mensaje similar a este.
Se puede ver que dice "SIGNED MESSAGE, dentro está el texto en claro (no está encriptado, está firmado. Y debajo la firma.
Alguien puede pegarlo en su ventana y decir "VERIFY". Para garantizar que fué enviado usando mis llaves.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Esto es un mensaje firmado que garantiza que lo escribí yo.

dac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBAgAGBQJXza6KAAoJEAKSVO1cS35oFuoP/A2xWepKrbvNOwVne8bdR8PT
QKftMDG1IBdEF80dHtr9n+7vm5pOUOdgI0Sw1kXLiQIcBAEBAgAGBQJXza6KAAoJ
EFrfEQONEt0KFuoP/21Ewph/D0zBSkMIjOelZrgoOFVlsUQzx+xXx/9f11bcYTWu
Y+C0XM2KsLcTKLQ+FGxXLmtkq8waP547qBkFKNFpv6z+LcnJHEJBF5kiookP
=YVwT
-----END PGP SIGNATURE-----




viernes, 2 de septiembre de 2016

Debian 8.5 - OpenBsd 6.0 OBSD (Part II)


* After config the Proxy/Repositories for OpenBSD.

pkg_add install xfce (to have the same that Debian)
3 minutes downloading and installing components.

A good link to install XFCE4.
http://www.gabsoftware.com/tips/tutorial-installing-xfce-on-openbsd-4-8/

pkg_add install firefox gimp yelp unzip zip sox ruby python remmina postfix pidgin ntp conky cups gcc git gnupg keepassx libreoffice
(can't install tcpdump perl r-base mysql-server mysql-client alsa gambas3 girl htop )


df -h
Filesystem Size Used Avail Capacity Mounted on
Filesystem Size Used Avail Capacity Mounted on
/dev/wd0a 530M 57.7M 446M 11% /
/dev/wd0k 4.5G 20.0K 4.3G 0% /home
/dev/wd0d 841M 10.0K 799M 0% /tmp
/dev/wd0f 1.3G 372M 900M 29% /usr
/dev/wd0g 776M 212M 525M 29% /usr/X11R6
/dev/wd0h 2.9G 2.5G 217M 92% /usr/local
/dev/wd0j 1.6G 2.0K 1.5G 0% /usr/obj
/dev/wd0i 1.2G 32.6M 1.1G 3% /usr/src
/dev/wd0e 1.2G 17.8M 1.1G 1% /var

Now with all packages installed (90% the same that Debian) the space used is +/- exactly the same.
372 + 212 + 57 + 2500 + 32 + 18 = 3191 mb = 3.2 GB

So, at the end the space needed in Debian and OBSD is very similar.







Debian 8.5.
Disk space used 3gb
Memory near 190 mb used (swap free), less than 0.3% CPU usage.


Filesystem Size Used Avail Use% Mounted on
udev 513M 0 513M 0% /dev
tmpfs 105M 3.5M 102M 4% /run
/dev/sda1 12G 3.0G 8.0G 28% /
tmpfs 523M 70k 523M 1% /dev/shm
tmpfs 5.3M 4.1k 5.3M 1% /run/lock
tmpfs 523M 0 523M 0% /sys/fs/cgroup
tmpfs 105M 4.1k 105M 1% /run/user/115
tmpfs 105M 8.2k 105M 1% /run/user/1000


OpenBsd 6.0, now running XFCE and some GUI tools installed.





Another big point is the "Application Versions", I detected it in the past lots of times....
Debian use a newest version of APP, and BSD/OBSD use older versions.
This is another big point for the security options, why use an old version if we have a new one (with improvements and bug fixes ?), and specifically OBSD being the "Most secured"


DEBIAN 8.5

OBSD 6.5


Debian 8.5 y OpenBSD 6.0 (obsd) Part I


During the past week I was in a chat about the new version of "OBSD 6.0" and I had talk about "Debian 8.5", comparatives are next step.
I don't want to say "who is better, or fast, or nice, or....."

I prepared this post with the instalation process in both O.S. and post instalation process, smart people have to identify which is better.
(my personal opinion is Debian off course...)

The second part, post installation is here.

I Choose VirtualBox, last version and my ASUS TP300La notebook as the hardware. &4 bits in both VM Servers and ISOs. Trying to do the standard process in both.
The complete process is this:



1. Environments with both servers, same virtual configuration
1 cpu, 1 gb ram, disco near 12 gb, network bridged, sound/usb connected. (both standard options)




2. Installation.

The option to choose Graphic and Text install is a "+1",
with the graphic install you could check your video card/monitor too.

Debian could choose Graphic or Text install, (Text selected)
OBsd 6.0, just text install




3. Debian Select Keyboard and Location, timezone.
OBSD Select Keyboard





4. Install Part 2.
OBsd hostname, ethernet card, dhcp, ipv6.
Select services to startup, ssh, X server, Timezone.
Debian, name, password, user. (not network config yet).



5. Disk partition.
Simple way Whole disk / Entire Disk.

Debian all in one partition, EXT4 98%, Swap 2%

OBSD. 10 partitions (may be too much) or net, depending of the usage of the server.
for Real service bringing service to lots of users, this is great. For 1 user not too much.



6. Packages / APP.

OBSD, select HTTP to install them.
Debian, installing "base packages", kernel, some basic tools, and config them into disk, and later ask for Mirrors (repositories)



7. Select all packages from Standard Install, define PROXY and go.
OBSD, select all packages (default), near 1 minute to install all of them (7) using cd0 (local cd)

Debian, select Mirror, define proxy. Less than 1 min. to download packages info.
Select GUI, services and "blends", I choose XFCE (a bit larger/heavy than others), ssh. (d7c)
More than 5 minutes to download and install 1047 packages (basic, + xfce + services), timing related to speed of access to internet.
Install GRUB (1 second)


8. OBSD reboot and start it.

9. Running

OBSD less than 1 minute and running in GUI. Type user/pass and graph terminal (o9b).
2nd reboot, same time... I guess the first boot was really fast and no special differences between 1th and 2nd boot.

Debian, reboot, startup. With XFCE4, login. XFCE4 running (d9b)



10. Updating

************************************
OBSD, useradd -b /home/dac -m dac (create a new user)
not sure what's the error, but the pkg_check failed. (o10)
pkg_add mc (failed too).

export PKG_PATH=http://ftp2.eu.openbsd.org/pub/OpenBSD/$(uname -r)/packages/$(uname -p)/
pkg_add mc (error, I can't install it)

The PKG_ADD is similar to "APT/APT_GET" in debian
the Ports folder is similar to "Rolling release" where an APP is downloaded (source), and compiled in each server.


Installing "screen" utility
# pkg_add screen
quirks-2.241 signed on 2016-07-26T16:56:10Z
Ambiguous: choose package for screen
a 0:
1: screen-4.0.3p6
2: screen-4.0.3p6-shm
Your choice: 1
screen-4.0.3p6: ok


# pkg_add mc
quirks-2.241 signed on 2016-07-26T16:56:10Z
Error from http://ftp2.eu.openbsd.org/pub/OpenBSD/6.0/packages/amd64/mc-4.8.16p0.tgz
ftp: ftp2.eu.openbsd.org: no address associated with name
Can't find CONTENTS from http://ftp2.eu.openbsd.org/pub/OpenBSD/6.0/packages/amd64/mc-4.8.16p0.tgz
--- mc-4.8.16p0 -------------------
Can't install mc-4.8.16p0: bad package



I FOUND THE ERROR
I had to add this lines in /root/.profile file to define REPO online and THE PROXY.


export PKG_PATH=http://ftp2.eu.openbsd.org/pub/OpenBSD/$(uname -r)/packages/$(uname -p)/

export http_proxy="http://192.168.1.2:8080"
export https_proxy=$http_proxy
export HTTP_PROXY=$http_proxy
export HTTPS_PROXY=$http_proxy

export ftp_proxy=$http_proxy
export FTP_PROXY=$http_proxy

After this,
pkg_add install mc


quirks-2.241 signed on 2016-07-26T16:56:10Z
Can't find install
mc-4.8.16p0:libffi-3.2.1p2: ok
mc-4.8.16p0:python-2.7.12: ok
mc-4.8.16p0:glib2-2.48.1: ok
mc-4.8.16p0:png-1.6.23: ok
mc-4.8.16p0:oniguruma-5.9.6: ok
mc-4.8.16p0:libslang-2.2.4p2: ok
mc-4.8.16p0:libssh2-1.7.0: ok
mc-4.8.16p0:gdiff-3.3p0: ok
mc-4.8.16p0:unzip-6.0p9: ok
mc-4.8.16p0: ok
Look in /usr/local/share/doc/pkg-readmes for extra documentation.
--- +python-2.7.12 -------------------
If you want to use this package as your default system python, as root
create symbolic links like so (overwriting any previous default):
ln -sf /usr/local/bin/python2.7 /usr/local/bin/python
ln -sf /usr/local/bin/python2.7-2to3 /usr/local/bin/2to3
ln -sf /usr/local/bin/python2.7-config /usr/local/bin/python-config
ln -sf /usr/local/bin/pydoc2.7 /usr/local/bin/pydoc





I installed "PORTS" too.
wget http://ftp2.eu.openbsd.org/pub/OpenBSD/6.0/ports.tar.gz
Untar it into /usr/ports (141 mb used)



# pkg_add install xfce
quirks-2.241 signed on 2016-07-26T16:56:10Z
Can't find install
Error from http://ftp2.eu.openbsd.org/pub/OpenBSD/6.0/packages/amd64/xfce-4.12p3.tgz
ftp: ftp2.eu.openbsd.org: no address associated with name
Can't find CONTENTS from http://ftp2.eu.openbsd.org/pub/OpenBSD/6.0/packages/amd64/xfce-4.12p3.tgz
--- xfce-4.12p3 -------------------
Can't install xfce-4.12p3: bad package



************************************
Debian, apt update, apt upgrade, apt dist-upgrade (the standard way to update server) (d10).
apt install screen

apt-get install screen
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
byobu | screenie | iselect
The following NEW packages will be installed:
screen
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 586 kB of archives.
After this operation, 1004 kB of additional disk space will be used.
Get:1 http://ftp.us.debian.org/debian stretch/main amd64 screen amd64 4.4.0-4 [586 kB]
Fetched 586 kB in 9s (64.3 kB/s)
Selecting previously unselected package screen.
(Reading database ... 84818 files and directories currently installed.)
Preparing to unpack .../screen_4.4.0-4_amd64.deb ...
Unpacking screen (4.4.0-4) ...
Processing triggers for systemd (231-4) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up screen (4.4.0-4) ...
Processing triggers for systemd (231-4) ...



apt-get install mc
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
mc-data
Suggested packages:
arj catdvi | texlive-binaries dbview djvulibre-bin genisoimage gv imagemagick
links | w3m | lynx odt2txt poppler-utils python-boto python-tz zip
The following NEW packages will be installed:
mc mc-data
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 1776 kB of archives.
After this operation, 7112 kB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://ftp.us.debian.org/debian stretch/main amd64 mc-data all 3:4.8.17-1 [1265 kB]
Get:2 http://ftp.us.debian.org/debian stretch/main amd64 mc amd64 3:4.8.17-1 [511 kB]
Fetched 1776 kB in 6s (259 kB/s)
Selecting previously unselected package mc-data.
(Reading database ... 84878 files and directories currently installed.)
Preparing to unpack .../0-mc-data_3%3a4.8.17-1_all.deb ...
Unpacking mc-data (3:4.8.17-1) ...
Selecting previously unselected package mc.
Preparing to unpack .../1-mc_3%3a4.8.17-1_amd64.deb ...
Unpacking mc (3:4.8.17-1) ...
Processing triggers for mime-support (3.60) ...
Processing triggers for desktop-file-utils (0.23-1) ...
Setting up mc-data (3:4.8.17-1) ...
Processing triggers for man-db (2.7.5-1) ...
Processing triggers for hicolor-icon-theme (0.15-1) ...
Setting up mc (3:4.8.17-1) ...
update-alternatives: using /usr/bin/mcview to provide /usr/bin/view (view) in auto mode



In Debian to compare instalation process to OBSD, I think in download linux-sources
and "compile" tools and install from Source. (gcc, make, others)

apt-get install linux-sources



11. Resources Used.
Make sense to invest hours to use 50 mb less in something ?
Our notebooks/servers have 4/8/64gb ram..... and Teras in disks.

Debian. (d11)
Running with basic/network/standards tools
Firefox, Libreoffice, Gimp, Ristretto & VLC.
Disk space used 3gb
Memory near 190 mb used (swap free), less than 0.3% CPU usage.
Service running (ssh 22)

Filesystem Size Used Avail Use% Mounted on
udev 513M 0 513M 0% /dev
tmpfs 105M 3.5M 102M 4% /run
/dev/sda1 12G 3.0G 8.0G 28% /
tmpfs 523M 70k 523M 1% /dev/shm
tmpfs 5.3M 4.1k 5.3M 1% /run/lock
tmpfs 523M 0 523M 0% /sys/fs/cgroup
tmpfs 105M 4.1k 105M 1% /run/user/115
tmpfs 105M 8.2k 105M 1% /run/user/1000

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 192.168.10.168:22 192.168.10.156:34968 ESTABLISHED
tcp6 0 0 :::22 :::* LISTEN
udp 0 0 0.0.0.0:5353 0.0.0.0:*
udp 0 0 0.0.0.0:57911 0.0.0.0:*
udp 0 0 0.0.0.0:68 0.0.0.0:*
udp6 0 0 :::5353 :::*
udp6 0 0 :::60036 :::*
raw6 0 0 :::58 :::* 7


OpenBsd 6, running, only basic tools installed and no GUI tools (o11)
600 mb on disk, 54 mb used (with FVWM GUI)

Filesystem Size Used Avail Capacity Mounted on
/dev/wd0a 530M 42.1M 461M 8% /
/dev/wd0k 4.5G 20.0K 4.3G 0% /home
/dev/wd0d 841M 20.0K 799M 0% /tmp
/dev/wd0f 1.3G 372M 900M 29% /usr
/dev/wd0g 776M 212M 525M 29% /usr/X11R6
/dev/wd0h 2.9G 5.2M 2.7G 0% /usr/local
/dev/wd0j 1.6G 2.0K 1.5G 0% /usr/obj
/dev/wd0i 1.2G 2.0K 1.1G 0% /usr/src
/dev/wd0e 1.2G 5.3M 1.2G 0% /var

Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
ip 0 0 *.* *.* 17
Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp 0 0 192.168.10.167.22 192.168.10.156.58616 ESTABLISHED
tcp 0 0 127.0.0.1.25 *.* LISTEN
tcp 0 0 *.22 *.* LISTEN
Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
udp 0 0 192.168.10.167.25592 81.19.96.148.123
udp 0 0 192.168.10.167.14580 194.140.131.21.123
udp 0 0 192.168.10.167.34583 193.145.15.15.123
udp 0 0 *.514 *.*
Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp6 0 0 *.22 *.* LISTEN
tcp6 0 0 fe80::1%lo0.25 *.* LISTEN
tcp6 0 0 ::1.25 *.* LISTEN
Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
udp6 0 0 *.514 *.*





12. Service running on
DEBIAN.
PID TTY TIME CMD
1 ? 00:00:00 systemd
2 ? 00:00:00 kthreadd
3 ? 00:00:00 ksoftirqd/0
5 ? 00:00:00 kworker/0:0H
6 ? 00:00:00 kworker/u2:0
7 ? 00:00:00 rcu_sched
8 ? 00:00:00 rcu_bh
9 ? 00:00:00 migration/0
10 ? 00:00:00 watchdog/0
11 ? 00:00:00 cpuhp/0
12 ? 00:00:00 kdevtmpfs
13 ? 00:00:00 netns
14 ? 00:00:00 khungtaskd
15 ? 00:00:00 oom_reaper
16 ? 00:00:00 writeback
17 ? 00:00:00 kcompactd0
18 ? 00:00:00 ksmd
20 ? 00:00:00 khugepaged
21 ? 00:00:00 crypto
22 ? 00:00:00 kintegrityd
23 ? 00:00:00 bioset
24 ? 00:00:00 kblockd
25 ? 00:00:00 devfreq_wq
26 ? 00:00:00 watchdogd
27 ? 00:00:00 kswapd0
28 ? 00:00:00 vmstat
41 ? 00:00:00 kthrotld
42 ? 00:00:00 ipv6_addrconf
48 ? 00:00:00 deferwq
99 ? 00:00:00 ata_sff
144 ? 00:00:00 kpsmoused
166 ? 00:00:00 kworker/0:2
569 ? 00:00:00 scsi_eh_0
573 ? 00:00:00 scsi_tmf_0
577 ? 00:00:00 scsi_eh_1
578 ? 00:00:00 kworker/u2:3
579 ? 00:00:00 scsi_tmf_1
581 ? 00:00:00 scsi_eh_2
583 ? 00:00:00 scsi_tmf_2
642 ? 00:00:00 bioset
643 ? 00:00:00 bioset
674 ? 00:00:00 kworker/0:3
682 ? 00:00:00 kworker/0:1H
739 ? 00:00:00 jbd2/sda1-8
740 ? 00:00:00 ext4-rsv-conver
769 ? 00:00:00 systemd-journal
772 ? 00:00:00 kauditd
779 ? 00:00:00 systemd-udevd
1398 ? 00:00:00 systemd-timesyn
1403 ? 00:00:00 dbus-daemon
1422 ? 00:00:00 NetworkManager
1423 ? 00:00:00 rsyslogd
1425 ? 00:00:00 avahi-daemon
1427 ? 00:00:00 systemd-logind
1428 ? 00:00:00 ModemManager
1429 ? 00:00:00 cron
1430 ? 00:00:00 anacron
1438 ? 00:00:00 avahi-daemon
1478 ? 00:00:00 polkitd
1503 ? 00:00:00 sshd
1507 tty1 00:00:00 agetty
1514 ? 00:00:00 lightdm
1523 tty7 00:00:06 Xorg
1526 ? 00:00:00 dhclient
1575 ? 00:00:00 systemd
1576 ? 00:00:00 (sd-pam)
1633 ? 00:00:00 dbus-launch
1634 ? 00:00:00 dbus-daemon
1678 ? 00:00:00 lightdm
1683 ? 00:00:00 systemd
1684 ? 00:00:00 (sd-pam)
1690 ? 00:00:00 sh
1715 ? 00:00:00 dbus-launch
1716 ? 00:00:00 dbus-daemon
1732 ? 00:00:00 ssh-agent
1743 ? 00:00:00 xfce4-session
1745 ? 00:00:00 at-spi-bus-laun
1750 ? 00:00:00 dbus-daemon
1754 ? 00:00:00 at-spi2-registr
1756 ? 00:00:00 xfconfd
1762 ? 00:00:00 xfwm4
1766 ? 00:00:00 xfce4-panel
1768 ? 00:00:00 Thunar
1770 ? 00:00:00 xfdesktop
1771 ? 00:00:00 nm-applet
1777 ? 00:00:00 xfsettingsd
1778 ? 00:00:00 applet.py
1780 ? 00:00:00 gvfsd
1790 ? 00:00:00 light-locker
1794 ? 00:00:00 pulseaudio
1795 ? 00:00:00 rtkit-daemon
1801 ? 00:00:00 dconf-service
1805 ? 00:00:00 xfce4-power-man
1808 ? 00:00:00 polkit-gnome-au
1817 ? 00:00:00 xfce4-notifyd
1818 ? 00:00:00 upowerd
1845 ? 00:00:00 panel-6-systray
1846 ? 00:00:00 panel-2-actions
1850 ? 00:00:00 gvfs-udisks2-vo
1853 ? 00:00:00 udisksd
1864 ? 00:00:00 gvfsd-trash
1871 ? 00:00:00 gvfsd-metadata
1977 ? 00:00:00 packagekitd
2083 ? 00:00:00 xfce4-terminal
2087 ? 00:00:00 gnome-pty-helpe
2088 pts/0 00:00:00 bash
2093 pts/0 00:00:00 su
2094 pts/0 00:00:00 bash
2097 ? 00:00:00 kworker/0:0
2179 ? 00:00:00 sshd
2181 ? 00:00:00 sshd
2182 pts/1 00:00:00 bash
2191 pts/1 00:00:00 su
2192 pts/1 00:00:00 bash
2194 pts/1 00:00:00 ps




OBSD

PID TT STAT TIME COMMAND
1 ?? Is 0:01.00 /sbin/init
84152 ?? Is 0:00.00 dhclient: em0 [priv] (dhclient)
74648 ?? Isp 0:00.00 dhclient: em0 (dhclient)
42357 ?? Isp 0:00.00 syslogd: [priv] (syslogd)
2432 ?? Sp 0:00.01 /usr/sbin/syslogd
36845 ?? Is 0:00.00 pflogd: [priv] (pflogd)
83868 ?? Sp 0:00.01 pflogd: [running] -s 160 -i pflog0 -f /var/log/pflog
25347 ?? Ip 0:00.01 ntpd: dns engine (ntpd)
549 ?? S



13. Remote access SSH, not too different.

Debian
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Fri Sep 2 11:39:49 2016 from 192.168.10.156
dac@d85:~$

OBSD
Last login: Fri Sep 2 11:43:13 2016
OpenBSD 6.0 (GENERIC) #2148: Tue Jul 26 12:55:20 MDT 2016

Welcome to OpenBSD: The pro-actively secure Unix-like operating system.

Please use the sendbug(1) utility to report bugs in the system.
Before reporting a bug, please try to reproduce it with the latest
version of the code. With bug reports, please try to ensure that
enough information to reproduce the problem is enclosed, and if a
known fix for it exists, include that as well.
#






NEXT POST the final tunning with
OBSD and XFCE4, Firefox, space usage.
Debian tunning.

The second part, post installation is here.