Skip to content

Instantly share code, notes, and snippets.

@sebolio
sebolio / sample_Controller.java
Last active September 1, 2015 06:02
el juego de la verda
package sample;
import javafx.scene.control.Button;
import javafx.scene.web.WebEngine;
import javafx.scene.web.WebView;
import java.util.Random;
public class Controller {
public Button nop;
@sebolio
sebolio / hook.md
Last active September 4, 2015 14:11
Hook para automatizar publicación de repositorio Git en un servidor web

El siguiente archivo recibirá las peticiones desde el proveedor del repositorio git (como github, gitlab o bitbucket)

Para que todo esto funcione, la cuenta de usuario desde la que se ejecuten los scripts debe usar SSH key hacia el repo.

gitHook.php

<?php
/**
 * gitHook.php
@sebolio
sebolio / s3.md
Last active September 4, 2015 15:10
Usando s3 sync

Cómo usar el CLI de AWS para sincronizar una carpeta local con un bucket de S3:

  • Instalar el CLI de AWS (está hecho en Python, se instala facilito con pip, después de instalar pip con easy_install)

  • Configurar el entorno usando aws configure (pedirá datos de IAM q se crean en dos tiempos en la página de AWS)

  • Crear un bucket en S3 en la página de AWS y no darle ningún permiso en particular

  • Al usuario de IAM hay que darle permisos sobre el Bucket para que pueda leer, escribir, borrar (ver mi gist de IAM)

  • Listo para sincronizar usando aws s3 sync . s3//blah

Formas de uso:

@sebolio
sebolio / gist:b06bd53898b3001cce82
Created August 17, 2015 18:47
configuracion nginx server interno global
server {
root /var/www/cloud;
server_name default;
location / {
#con esto funcionan URLs amigables y formato index.php/asdads/dfdsf
try_files $uri $uri/ /index.php?$query_string;
}
@sebolio
sebolio / gist:e489fffe87d5e5620333
Created August 12, 2015 16:09
borrar output de un curl
añadirle esta línea al archivo, esto lo usé en mi script llamable desde bash
esto borrará las últimas 3 líneas impresas en el terminal
printf "\r\e[K\e[1A\e[K\e[1A\e[K">> index.html
@sebolio
sebolio / gist:97e594c651751756ccf6
Created August 3, 2015 23:23
teclado vscode windows
// Place your key bindings in this file to overwrite the defaults
[
{ "key": "ctrl+r", "command": "workbench.action.gotoSymbol",
"when": "editorFocus" },
{ "key": "ctrl+p", "command": "workbench.action.showCommands" },
{ "key": "ctrl+o", "command": "workbench.action.quickOpen" },
{ "key": "shift+alt+c", "command": "editor.action.commentLine",
"when": "editorTextFocus" },
{ "key": "ctrl+shift+c", "command": "editor.action.commentLine",
@sebolio
sebolio / gist:59c7931c585a734bfa71
Last active September 4, 2015 15:13
Cómo compilar node-opencv

Copia exacta, a modo de respaldo, del tutorial de Jason Dalton

So for a week now i've been trying to get node-opencv to work on my Mac. I kept getting the dyld: lazy symbol binding failed error when I tried to run the examples. This is how i solved it on my machine. So i'm on OSX 10.8.5.

The first step was to get the latest xcode and xcode command line tools for me this was version 5.1. Next setp is to download the latest cmake. The version I download was 3.0.1. Now I used brew to install opencv. Here are the steps.

@sebolio
sebolio / gist:f82f5da6115226ab179c
Last active September 4, 2015 15:13
Usar kdiff3 como mergetool en Git
git config --global mergetool.kdiff3.path "/Applications/kdiff3.app/Contents/MacOS/kdiff3"
git config --global merge.tool kdiff3
@sebolio
sebolio / gist:dde4dd712be4d776b3db
Created June 15, 2015 22:41
Para que no haya página web en SailsJS
El problema:
SailsJS es tanto un servidor de APIs como un servidor Web, por lo tanto soporta rutas que son controladores JSON y rutas que son simples archivos HTML, y sólo las primeras se pueden controlar mediante reglas. Esto significa que si un atacante se pone a probar comandos en la API, eventualmente va a recibir códigos 200 o 404, lo que le facilitará pruebas de fuerza bruta. Debería haber una forma de desactivar totalmente el comportamiento de "servidor web" y que solamente retorne respuestas JSON y códigos de error relacionados al uso de la API.
Solución rápida:
Eliminar el contenido del archivo "layout.js" dentro de "views".
Con eso no habrá nunca HTML, pero igual se eviarán códigos 200 y 404 para las rutas que no sean de la API.
Solución larga:
Crear alguna policy o middleware que envíe siempre el mismo código de error (400?) cuando las rutas no sean de la API.
Con eso se podría engañar a un posible atacante dificutándole el abuso de las rutas.
@sebolio
sebolio / wow-compra
Created June 13, 2015 05:12
Macro para comprar y usar items en wow
#Mostrar IDs de items en la ventana de chat
/script for i = 1, GetMerchantNumItems() do print(i, GetMerchantItemInfo(i)) end
#Comprar el item deseado (en este caso será el 27)
/script BuyMerchantItem(27, 1)
#Aplicar "clic derecho" a un item del inventario
/use Saco de oro robado