Netcat trukis

In the server

while true; do nc -l 8888 < hola.txt; done

IN the client

netcat  8888
Posted in Uncategorized

Linux Containers

Linux container no es virtualización de sistemas es aislamiento(isolation) de procesos y recursos.
Para ello utiliza dos propiedades del Kernerl del linux namespaces para aislamiento de los procesos y cgroups para aislamiento de los recursos (por ejem. red).
Instalar linux containers

#sudo apt install lxc

Descargar un container

#sudo lxc-create -t download -n <nombre_contaner> -- --dist ubuntu --release xenial --arch amd64

Entrar sin autentificarse en un container

lxc-attach -n <nombre_container>

Utilidades

Listar containers

#lxc-ls --fancy

Iniciar container como daemon

#lxc-start --name <nombre_container> -d

Entrar al container

#lxc-console -n <container name>

Para salir del conainer

press Ctrl-a, release, then press q

Congelar/Descongelar un container

#lxc-freeze -n
lxc-unfreeze -n <container name>

Utilidades vàrias

#lxc-info --name <nombre_container>
#lxc-stop --name <nombre_container>
#lxc-destroy --name <nombre_container>
#lxc-destroy --name <nombre_container>
#lxc-attahc --name <nombre_container>

Configuración del container
/val/lib/lxc

/val/lib/lxc/<name_conainer>

lxc.network.type      #typo de red esto tiene que ver con los namespaces

lxc.network.link

Crear el bridge (vlan) donde más tarde se conectaran los containers

sudo brctl addbr lxc-bridge-nat
sudo brctl setfd lxc-bridge-nat 0
sudo ifconfig lxc-bridge-nat 10.0.0.1 netmask 255.255.255.0 promisc up
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo echo 1 > /proc/sys/net/ipv4/ip_forward

Establecer el bridge en el init del sistem

# vimn /etc/rc.local

O configurar a gusto el bridge que crea por defecto

/etc/default/lxc-net

Configurar el autostar

lxc.start.auto = 1
lxc.start.delay = 0 (in seconds)
lxc.start.order = 0 (higher means earlier)

Crear un snapshot

#lxc-snapshot -n container_name

Restaurar un snapchot

sudo lxc-snapshot -n container_name -r snap0

Listar snapshots disponibles

lxc-snapshot -n container_name -L

Clonar un container

lxc-copy -n container_name  -N new_container_name

Crear un container de una distribucion fdora

sudo lxc-create -n fedora -t fedora
Tagged with: ,
Posted in Sistemas

Search all that not start by HOLA

In SublimeText

^(?!(?:HOLA)).*

Posted in Uncategorized

Activar batería de moto

Posted in Uncategorized

My Sublime conf

Preferences -> Setting-user

[javascript]

// Settings in here override those in "Default/Preferences.sublime-settings",
// and are overridden in turn by file type specific settings.
// to enable selection php variables using two clicks
{
"font_face": "Courier New",
"font_size": 12,
"word_wrap": "false",
"word_separators": "./\\()\"’-:,.;<>~!@#%^&*|+=[]{}`~?"
}

[/javascript]

Key Binding -> User

[javascript]

[
//Cambio de pestañas
{ "keys": ["ctrl+tab"], "command": "next_view" },
{ "keys": ["ctrl+shift+tab"], "command": "prev_view" },

//Eliminar linea
{ "keys": ["ctrl+shift+d"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete Line.sublime-macro"} },

//Comentar bloques
{ "keys": ["ctrl+7"], "command": "toggle_comment", "args": { "block": false } },
{ "keys": ["ctrl+shift+7"], "command": "toggle_comment", "args": { "block": true } }

//Disparar comando buid
{ "keys": ["f5"], "command": "build" },
]

[/javascript]

Psql sublime build

[javascript]
{
"env": { "PGPASSWORD":"xxxxx" },
"cmd": ["psql", "-h", "myserver", "-U", "myuser", "-d", "mydbb", "-p", "5432", "-f", "$file", "-o", "results.sql"],
}
[/javascript]
El ejecutable debe estar en la path del sistema, en Windows

Posted in Uncategorized

Truquis de postgres

Pasar tablas entre bases de datos

[sql]
truncate table tableA;
insert into tableA
select *
from dblink(‘dbname=postgres hostaddr=xxx.xxx.xxx.xxx dbname=mydb user=postgres’,
‘select a,b from tableA’)
as t1(a text,b text);
[/sql]

Tamaño de las bases datos existentes en el cluster

[sql]
SELECT d.datname AS Name, pg_catalog.pg_get_userbyid(d.datdba) AS Owner,
CASE WHEN pg_catalog.has_database_privilege(d.datname, ‘CONNECT’)
THEN pg_catalog.pg_size_pretty(pg_catalog.pg_database_size(d.datname))
ELSE ‘No Access’
END AS SIZE
FROM pg_catalog.pg_database d
ORDER BY
CASE WHEN pg_catalog.has_database_privilege(d.datname, ‘CONNECT’)
THEN pg_catalog.pg_database_size(d.datname)
ELSE NULL
END DESC — nulls first
LIMIT 20
[/sql]

Posted in Uncategorized

Utilizar router Comtrend Ar-5387un para rebotar una señal wifi

IMG_20160312_124150
El problema que se pretende solucionar es el siguiente desde el exterior de un edificio utilizando una tarjeta wifi exterior accedo a una red wifi. La misma red soy incapaz de detectarla utilizando la interficie del router.

El objetivo se resume en: instalar dos tarjetas de red en mismo router, un la que lleva de por si integrada y la otra conectada mediante USB. Posteriormente conectamos la tarjeta exterior a una red wifi y la rebotamos en otra red wifi definida en la tarjeta interna del router.

Material

Router:Comtrend Ar-5387un
Antena exterior wifi: Antena usb Ralink

Instalar Openwrt

Descargar desde:
https://wiki.openwrt.org/toh/comtrend/ar5387un
e instalar siguiendo las instrucciones
[bash]
root@OpenWrt:~# uname -a
Linux OpenWrt 3.18.20 #1 Fri Sep 4 15:12:19 CEST 2015 mips GNU/Linux
[/bash]

Instalación driver tarjeta de red

Nombre de los modulos del kernel:
kmod-rt2800-lib
kmod-rt2800-usb
kmod-rt2x00-lib
kmod-rt2x00-usb
buscandolos por el gestor de pakets via web no los pilla

Para instalar las herramentas para listar los usb:
opkg update
opkg install usbutils

root@OpenWrt:~# lsusb
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 004: ID 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Para instalar el módulo sería:
[bash]
opkg install kmod-rt2800-lib kmod-rt2800-usb kmod-rt2x00-lib kmod-rt2x00-usb
[/bash]
Para una tarjeta modelo Alpha AUS036H
[bash]
opkg install kmod-rtl8187
[/bash]

Y para ver como se a cargado
[bash]
root@OpenWrt:~# lsmod | grep rt2
cfg80211 204304 3 rt2x00lib
compat 1120 4 rt2800usb
crc_ccitt 944 2 rt2800lib
mac80211 366400 4 rt2800lib
rt2800lib 91104 1 rt2800usb
rt2800usb 14608 0
rt2x00lib 30896 3 rt2800usb
rt2x00usb 7136 1 rt2800usb
usbcore 113808 6 rt2800usb
[/bash]
Habilitar la interficie:
[bash]
vim /etc/config/wireless

config wifi-device ‘radio0’
option type ‘mac80211′
option hwmode ’11g’
option path ‘pci0000:00/0000:00:00.0/0000:01:00.0/bcma0:1′
option txpower ’20’
option country ’00’
option disabled ‘0’
option channel ‘3’

config wifi-iface
option network ‘wwan’
option ssid ‘puigverd’
option encryption ‘psk’
option device ‘radio0’
option mode ‘sta’
option bssid ‘4C:8B:EF:73:54:9C’
option key ‘rafacuest’

config wifi-device radio1
option type mac80211
option channel 11
option hwmode 11g
option path ‘platform/ehci-platform/usb1/1-1/1-1:1.0’
option htmode HT20
# REMOVE THIS LINE TO ENABLE WIFI:
option disabled 1

config wifi-iface
option device radio1
option network lan
option mode ap
option ssid OpenWrt
option encryption none
[/bash]

Y para instalar el iwconfig
[bash]
root@OpenWrt:~# opkg install wireless-tools
[/bash]
Editamos la línea y rebotamos tras lo cual ya tenemos la interficie funcionado
[bash]
root@OpenWrt:~# ifconfig
wlan0 Link encap:Ethernet HWaddr 38:72:C0:A1:0D:20
inet addr:10.0.0.10 Bcast:10.0.0.1 Mask:255.255.255.0
inet6 addr: fe80::3a72:c0ff:fea1:d20/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:517 errors:0 dropped:0 overruns:0 frame:0
TX packets:518 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:66345 (64.7 KiB) TX bytes:162147 (158.3 KiB)

wlan1 Link encap:Ethernet HWaddr 00:0D:A3:14:A3:9A
inet6 addr: fe80::20d:a3ff:fe14:a39a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:23 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:2696 (2.6 KiB)

[/bash]
Siendo wlan0 la tarjeta interna y wlan1 la tarjeta exterior de la antena USB.
Escaneando las redes disponibles mediante la interficie web se observa un aumento de número de redes disponibles así como una mejora significativa de la señal de las que ya se detectaban.
Se debe tener en cuenta que las antenas que dispone el router son obmidireccionales y por contra la tarjeta wifi dispone de una antena planar semidireccional.

Configuración de red

Una vez tenemos la tarjeta reconocida la intención es conectar dicha tarjeta exterior a una wifi lejana y utlitizar la wifi del router para extender la señal, es decir hacer trabajar la tarjeta externa como Mode: Client y la interna como Mode: Acces point.
Otra opción sería utilizar la tarjeta exterior como Acces Point WDS (Wireless Distribution System). Pero existen dos problemas: en primer lugar el punto de acceso al que quiero acceder debería soportar también dicho protocolo, en segundo lugar la emisión de la señal rebotada se realizaría desde el exterior del edificio y señal que me llegaría desde casa estaría debilitada.

Primero de todo es recomendable asignar un rango de IP diferentes a cada una de las interfices que dispone el router.
LAN 10.0.1.100/24
WWAN0 10.0.0.10/24
WWAN1 192.168.1.33/24

La configuración se puede realizar mediante al interficie web; conectamos la tarjeta exterior al rango IP del red objetivo mediante una dirección estática por que así podemos volver a conectarnos mediante ssh o web.
La tarjeta interna le asignamos un rango de ips diferentes por ejemplo 10.0.0.0/24 y la configuramos Mode: Acces point Mode: Master y habilitamos el servidor de DCHP.
screencapture-10-0-0-10-cgi-bin-luci-stok-284e6a2a62bdfa871528641a52921302-admin-network-wireless-radio0-network1-1457786638515

wifi_2
El puente entre las dos interficies se realiza automáticamente, no precisa de embarrarse las manos con Iptables 🙂
Aquí las reglas que crea automáticamente, yo e sido incapaz de crearlas manualmente.
[bash]

root@OpenWrt:~# scren horst -i mon0
-ash: scren: not found
root@OpenWrt:~# screen
/var/run/utmp: No such file or directory
Chain zone_lan_output (1 references)
target prot opt source destination
output_lan_rule all — anywhere anywhere /* user chain for output */
zone_lan_dest_ACCEPT all — anywhere anywhere

Chain zone_lan_src_ACCEPT (1 references)
target prot opt source destination
ACCEPT all — anywhere anywhere

Chain zone_wan_dest_ACCEPT (2 references)
target prot opt source destination
ACCEPT all — anywhere anywhere

Chain zone_wan_dest_REJECT (1 references)
target prot opt source destination
reject all — anywhere anywhere

Chain zone_wan_forward (1 references)
target prot opt source destination
forwarding_wan_rule all — anywhere anywhere /* user chain for forwarding */
zone_lan_dest_ACCEPT esp — anywhere anywhere /* @rule[7] */
zone_lan_dest_ACCEPT udp — anywhere anywhere udp dpt:isakmp /* @rule[8] */
ACCEPT all — anywhere anywhere ctstate DNAT /* Accept port forwards */
zone_wan_dest_REJECT all — anywhere anywhere

Chain zone_wan_input (1 references)
target prot opt source destination
input_wan_rule all — anywhere anywhere /* user chain for input */
ACCEPT udp — anywhere anywhere udp dpt:bootpc /* Allow-DHCP-Renew */
ACCEPT icmp — anywhere anywhere icmp echo-request /* Allow-Ping */
ACCEPT igmp — anywhere anywhere /* Allow-IGMP */
ACCEPT all — anywhere anywhere ctstate DNAT /* Accept port redirections */
zone_wan_src_REJECT all — anywhere anywhere

Chain zone_wan_output (1 references)
target prot opt source destination
output_wan_rule all — anywhere anywhere /* user chain for output */
zone_wan_dest_ACCEPT all — anywhere anywhere

Chain zone_wan_src_REJECT (1 references)
target prot opt source destination
reject all — anywhere anywhere
[/bash]

Instalar la suite aircrack-ng

[bash]
opkg update
opkg install aircrack-ng
[/bash]

horst: simple ncurses scanner de red

[bash]
ifconfig wlan1 down
iw wlan0 set type monitor
sudo horst -i wlan1
[/bash]

Posted in Uncategorized

Acer aspire One V5 122p – Reparación Touchpad

Posted in Sistemas

Configurar servidor Samba sin login

[bash]

vim /etc/samba/smb.conf

[/bash]

[global]
server string = Servidor de archivos
workgroup = WORKWROUP
security = user
guest account = nobody
map to guest = bad user
wins support = yes

[Unidad Compartida]
path = /unidad_compartida
comment = Uniad Compartda
browsable = yes
public = yes
writable = yes
write list = nobody
guest ok = yes

[bash]
smbpasswd -an nobody
mkdir /unidad_compartida
chmod 777 /unidad_compartida
chown nobody /unidad_compartida
[/bash]

Posted in Uncategorized

Comandos wifi

Ver la calidad de la señal

[bash]
$cat /proc/net/wireless
$watch -n 1 cat /proc/net/wireless
[/bash]

Listado de AP’s accesibles

[bash]
iwlist wlan0
[/bash]

Información presentada gráficamente mediante n curses

[bash]
wavemon
[/bash]

Aumentar la potencia de nuestra tarjeta

[bash]
ifdown wlan0
iw reg set US
iwconfig wlan0 txpower 30
ifup wlan0
[/bash]

Reducir el límite de velocidad

A menor velocidad mayor señal captada, hei y funciona!!!
[bash]
sudo iwconfig wlan0 rate 2Mo
[/bash]

Monitorizar la conección y reconectar en caso de perdida

[bash]
#!/bin/bash

wlan=`/sbin/ifconfig wlan0 | grep inet\ addr | wc -l`

if [ $wlan -eq 0 ]; then
/sbin/ifdown wlan0 && /sbin/ifup wlan0
else
echo interface is up
fi
[/bash]

Añadir al crontab

[bash]
crontab -e
*/5 * * * * /bin/bash /root/scripts/moni_wifi_status.sh
[/bash]

Servidor dhcp

Posted in Networking, Sistemas