This is default featured slide 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

quinta-feira, 26 de janeiro de 2017

Hardware - avaliar para um possivel projeto de Wi-Fi embarcado

Companhia dos EUA oferece customização de placas como a Raspberry Pi

Empresa Via Technology agora oferece serviço de customização fácil e simples para que usuários incrementem as suas placas.
O Raspberry Pi 3 é um ótimo produto, mas não pode ser customizado. As pessoas podem querer mais armazenamento ou um processador mais rápido, mas precisam ficar apenas com os recursos que já vem na placa computacional.
A falta de customização das placas computacionais é impulsionada pelos seus preços baixos. Os consumidores recebem recursos proporcionais aos preços baixos das placas como a Raspberry Pi, de 35 dólares, e a Pine64, de 15 dólares.
Ninguém está reclamando sobre os preços baixos, mas a natureza do tipo “um tamanho para caber tudo” pode não ser para todos. Pegando uma influência das fabricantes PCs, a Via Technology agora possibilita configurar placas de computação para necessidades especiais por meio do seu site.
O serviço de customização da Via inclui até os menores detalhes. Você poderá selecionar o processador, memória, armazenamento, recursos wireless, e até escolher o número de entradas.
Qualquer companhia fabricará placas customizadas se você pedir e especificar o que quer. Mas a Via está oferecendo uma interface de customização direta e simples por meio do seu site. Como uma fabricante de chips com acesso fácil a unidades de produção, a Via possui a infraestrutura para fabricar para produzir placas customizáveis.
A customização pode ser útil para quem quer adotar aparelhos inteligentes ou equipamentos de Internet das Coisas (IoT) em larga escala. Você poderia criar um protótipo de um aparelho com uma placa e se voltar para a Via para conseguir as placas para produção em massa.
Os usuários precisam selecionar o tipo de placa que querem, como uma placa Pico-ITX auto-contida que pode ser um computador completo ou uma placa SOM (sistema no módulo) que pode ser conectado à memória ou em outros slots. Esses sistemas SOMs costumam ser computadores que podem ser plugados em aparelhos eletrônicos como telas de publicidade, aparelhos industriais ou sistemas de pontos de venda.
As opções de CPU incluem processadores ARM de 32-bit, variando de um Cortex-A8 até um A17. A Via fabrica chips ARM, mas também é conhecida pelos seus chips x86, que não são oferecidos no serviço de customização. Os usuários podem escolher até 4GB de RAM e até 16GB de armazenamento. As opções de sistema incluem Android e Linux.
Os usuários podem escolher diversas opções de conectividades, incluindo Ethernet, USB, cartões SD e wireless. Para conectividade wireless, é possível selecionar entre 3G/4G, Wi-Fi, Bluetooth, GPS, ou todas elas. A empresa também permite a escolha entre I2C, GPIO e SPI.
O sistema da Via não fornece o preço de forma instantânea. Os usuários precisam enviar um formulário de configuração, e a companhia então responderá com um valor. Essas placas podem ser caras para os desenvolvedores individuais, ainda mais com opções disponíveis abaixo de 20 dólares. O serviço de customização pode ser mais interessante para compras em grandes volumes.

fonte: http://pcworld.com.br/noticias/2017/01/20/companhia-dos-eua-oferece-customizacao-de-placas-como-a-raspberry-pi/

Mikrotik - 2 wan failover


http://www.helpadmin.pro/how-to/how-to-mikrotik/how-to-mikrotik-failover/64/



Mikrotik 2 wan failover


How to failover 2 wan links with mikrotik


Main WAN link – Prov1
Backup (reserve) WAN link – Prov2
What we would like to:
Two WAN links working at the same time – mikrotik itself and possible services are available for them on the two WAN links independently.
Users access the Internet from the main WAN link, in the case of malfunction – with backup WAN link.

mikrotik 2 wan failover
mikrotik 2 wan failover
The theoretical basis:
Need to adjust the labeling of an incoming connection to track – if the request came fromProv1 then send a response via Prov1.
Two default route with a different “weight” (Distance). Script that switch distance depending on the state of the channel.
Do not mess with the routing tables

What to do (option settings from WinBox / Web interface):

1.

Two default route (Dst. Address 0.0.0.0/0) with Comment “Prov1” and “Prov2” respectively (needed for the script), and Distance set to: for main wan – 1, for backup wan – 2.

2. IP->Firewall->Mangle

add rules for labeling connections to the top of other rules:
General
Chain: prerouting
Dst. Address: [ip Prov1]
In. Interface: [Prov1 interface]

Action
Action: mark_connection
New Connection Mark: Prov1_c
Passthrough: yes

General
Chain: prerouting
Dst. Address: [ip Prov2]
In. Interface: [Prov2 interface]

Action
Action: mark_connection
New Connection Mark: Prov2_c
Passthrough: yes
For any cases duplicate these rules in chain = input

3. IP->Routes

Add two default route, as well as in claim 1, but without the Comment, and Routing Mark Prov1 write for the primary wan and Prov2 to backup wan. Distance = 1.
These routes will only work if we wrap them in appropriate traffic rule, that we should create (see paragraph 4).

4. IP->Routes->Rules

Create a rule that wraps marked connetctions to the appropriate routing table:
Src. Address: [ip Prov1]
Dst. Addess: 0.0.0.0/0
Routing Mark: Prov1_r
Action: lookup only in table
Table: Prov1

Src. Address: [ip Prov2]
Dst. Addess: 0.0.0.0/0
Routing Mark: Prov2_r
Action: lookup only in table
Table: Prov2
And just in case is not marked:
Src. Address: [ip Prov1]
Dst. Addess: 0.0.0.0/0
Action: lookup
Table: Prov1

Src. Address: [ip Prov2]
Dst. Addess: 0.0.0.0/0
Action: lookup
Table: Prov2

5. IP->Firewall->Mangle

After labeling rules prescribe rules for labeling compounds route:
General
Chain: prerouting
Connection Mark: Prov1_c

Action
Action: mark routing
New Routing Mark: Prov1_r
Passthrough: yes

General
Chain: prerouting
Connection Mark: Prov2_c

Action
Action: mark routing
New Routing Mark: Prov2_r
Passthrough: yes
Duplicate it for chain = output:
General
Chain: output
Connection Mark: Prov1_c
Action.
Action: mark routing
New Routing Mark: Prov1_r
Passthrough: yes

General
Chain: output
Connection Mark: Prov2_c
Action.
Action: mark routing
New Routing Mark: Prov2_r
Passthrough: yes

6. IP->Firewall->NAT

Two rules for masquerading two outgoing interfaces:
General
Chain: srcnat
Out. Interface: [Prov1 interface]
Action.
Action: masquerade

General
Chain: srcnat
Out. Interface: [Prov2 interface]
Action.
Action: masquerade

If you want to – port forwarding rules on services DMZ, in two versions – for each provider
After these settings, we have to work – mikrotik itself and configured port forwarding must earn on two wan links independently.
If something does not work, you probably need to look carefully at the table and routing rules. Terms mangle themselves only put labels
so if something stops working when the on/off rule in mangle, then do not blame the rule itself mangle, and the rule that uses the supplied label (or lack thereof)
Do not forget to check  Connection Tracking: IP-> Firewall-> Connections ->Tracking is Enables = yes



Mikrotik Connection Tracking
Serttings for connection tracking in Mikrotik

Left to do script that will toggle the main route, depending on the channel status.

One embodiment of the switching script based on the following:
  1. There are 3 ip per link, which are monitored by ping
  2. Availability of the link defined by the formula:
    MainIfInetOk (($PingResult1 + $PingResult2 + $PingResult3) >= (2 * $PingCount))
    $PingCount = number of ping requests to the host. In other words – the channel is OK if 2/3 of requests for verification hosts passed
  3. When an event occurs, respectively, switch the default route Distance
  4. Do not forget to flush it from the existing NAT table and IPSec SA (at the moment there is one stable method – off/on the interface)
To ping requests for verification hosts passed through appropriate interfaces (for the main channel (Prov1) through the main, to backup (Prov2) – through the backup), you must add routing rules separately for screening hosts. If you’ve read this far, you already know how to do it.
Now you Mikrotik works on 2 wan links at the same time, behind a NAT services available simultaneously on both wan links, and the script switches user traffic to the backup link if primary link fail. To learn how to make balancing on mikrotik between the two wan links will be another story …

Backup script:

#Main interface name
:global MainIf ether1-Prov1
#Reserve interface name
:global RsrvIf ether2-Prov2

:local PingCount 3
#
:local PingTarget1 8.8.8.8
#
:local PingTarget2 91.219.24.37
#
:local PingTarget3 213.59.5.110
#
:local PingTarget1R 194.87.0.50
#
:local PingTarget2R 80.68.243.243
#
:local PingTarget3R 8.8.4.4

#Check main internet connection
:local MainIfInetOk false;
:local PingResult1 [/ping $PingTarget1 count=$PingCount interface=$MainIf]
:local PingResult2 [/ping $PingTarget2 count=$PingCount interface=$MainIf]
:local PingResult3 [/ping $PingTarget3 count=$PingCount interface=$MainIf]
:set MainIfInetOk (($PingResult1 + $PingResult2 + $PingResult3) >= (2 * $PingCount))

#Check reserved internet connection
:local RsrvIfInetOk false;
:local PingResult1 [/ping $PingTarget1R count=$PingCount interface=$RsrvIf]
:local PingResult2 [/ping $PingTarget2R count=$PingCount interface=$RsrvIf]
:local PingResult3 [/ping $PingTarget3R count=$PingCount interface=$RsrvIf]

:set RsrvIfInetOk (($PingResult1 + $PingResult2 + $PingResult3) >= (2 * $PingCount))

:put "MainIfInetOk=$MainIfInetOk"
:put "RsrvIfInetOk=$RsrvIfInetOk"

if (!$MainIfInetOk) do={
/log error "Main internet connection error"
}

if (!$RsrvIfInetOk) do={
/log error "Reserve internet connection error"
}

:local MainGWDistance [/ip route get [find comment="Prov1"] distance]
:local RsrvGWDistance [/ip route get [find comment="Prov2"] distance]
:put "MainGWDistance=$MainGWDistance"
:put "RsrvGWDistance=$RsrvGWDistance"

#SetUp gateways
if ($MainIfInetOk && ($MainGWDistance >= $RsrvGWDistance)) do={
/ip route set [find comment="Prov1"] distance=1
/ip route set [find comment="Prov2"] distance=2
/interface disable $RsrvIf
/ip firewall connection tracking set enabled=no
delay 5
/ip firewall connection tracking set enabled=yes
/ip ipsec installed-sa flush sa-type=all
/log warning "Switch to main internet connection"
/interface enable $RsrvIf
}

if (!$MainIfInetOk && $RsrvIfInetOk && ($MainGWDistance <= $RsrvGWDistance)) do={
/ip route set [find comment="Prov1"] distance=2
/ip route set [find comment="Prov2"] distance=1
/interface disable $MainIf
/ip firewall connection tracking set enabled=no
delay 5
/ip firewall connection tracking set enabled=yes
/ip ipsec installed-sa flush sa-type=all
/log warning "Switch to reserve internet connection"
/interface enable $MainIf
}

---avaliar

http://forum.mikrotik.com/viewtopic.php?t=111558

http://forum.mikrotik.com/viewtopic.php?t=83537

quarta-feira, 25 de janeiro de 2017

Squid3 - com bloqueio HTTPS [que realmente funciona] - Versão 3.5.22




Instalação, compilação e configuração



Olá, este é meu primeiro artigo no VOL e resolvi fazê-lo devido à falta de um tutorial atualizado e que realmente funcione, no que se refere à instalação e configuração do Squid3 para bloqueio real de páginas HTTPS.

O ambiente usado foi o Debian 7.11.0 instalado a partir da mídia debian-7.11.0-i386-netinst (também funciona na x64), e o Squid3 foi compilado a partir do arquivo squid-3.5.22.tar.gz disponível no site:

Instalando/compilando e configurando o Squid3

Obs.: todos comando foram executados com o usuário root.

Com o SO Debian recém instalado e apenas com SSH rodando, para facilitar a inserção de comandos usando a putty, a primeira coisa é baixar os pacotes necessários para compilar o Squid3 (famosos "Build-Depends") com o seguinte comando:

# apt-get build-dep squid3

Além dos pacotes que serão instalado acima, mais dois devem ser instalados segundo a documentação do Squid:

# apt-get install build-essential libssl-dev

Feito isso, você deve baixar o arquivo fonte do Squid3:

# wget http://www.squid-cache.org/Versions/v3/3.5/squid-3.5.22.tar.gz

Descompacte o arquivo:

# tar xvzf squid-3.5.22.tar.gz

Entre no diretório:

# cd squid-3.5.22

Execute o seguinte comando para fazer a configuração o make e o make install do Squid:

# ./configure --prefix=/usr --localstatedir=/var --libexecdir=${prefix}/lib/squid --datadir=${prefix}/share/squid --sysconfdir=/etc/squid --with-default-user=proxy --with-logdir=/var/log/squid --with-pidfile=/var/run/squid.pid --enable-ssl --enable-ssl-crtd --with-openssl && make && make install

Obs.: o comando acima foi retirado da documentação "Compilando o Squid" acrescido dos parâmetros "--enable-ssl --enable-ssl-crtd --with-openssl" solicitados Features/DynamicSslCert - Squid Web Proxy Wiki, que são essenciais ao correto funcionamento do Squid3 para bloqueio de HTTPS.

Dependendo da sua configuração de hardware, esse procedimento pode demorar muito, aqui demorou uns 30 minutos.

Abra esse link no navegador e copie o conteúdo:
Depois disso, crie o arquivo /etc/init.d/squid:

# nano /etc/init.d/squid

Cole o conteúdo copiado acima e salve (se estiver usando o putty e só clicar com o botão direito que ele já cola automaticamente).

De permissão de execução para esse arquivo:

# chmod 755 /etc/init.d/squid

Entre no diretório de configuração:

# cd /etc/squid

Crie a pasta "ssl_cert", onde será criado o certificado:

# mkdir ssl_cert

Altere o dono da pasta:

# chown proxy:proxy ssl_cert

Mude as permissões da pasta:

# chmod 700 ssl_cert

Entre na pasta:

# cd ssl_cert

Crie o arquivo de certificado:

# openssl req -new -newkey rsa:2048 -sha256 -days 365 -nodes -x509 -extensions v3_ca -keyout myCA.pem -out myCA.pem

Cria o arquivo de certificado para ser importado no navegador navegador:

# openssl x509 -in myCA.pem -outform DER -out myCA.der

Esse arquivo deve ser levado para o Windows, pois você vai importa-lo no navegador.

Prepare o diretório para fazer o cache de certificados:

# /lib/squid/ssl_crtd -c -s /etc/squid/ssl_db

Depois de inicializar o diretório, altere o dono para 'nobody':

# chown -R nobody /etc/squid/ssl_db

Altere seu arquivo /etc/squid.conf e deixe como segue:

http_port 3128 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=/etc/squid/ssl_cert/myCA.pem
sslcrtd_program /lib/squid/ssl_crtd -s /etc/squid/ssl_db -M 4MB
sslcrtd_children 5
cache_dir ufs /var/spool/squid 100 16 256
error_directory /share/squid/errors/pt-br

strip_query_terms off

acl bloqueado ssl::server_name .youtube.com

ssl_bump bump all
ssl_bump peek all
ssl_bump splice all

http_access deny bloqueado

http_access allow all

Cheque as configurações com o comando:

# squid -k parse

Pode ocorrer problemas com permissões negadas em alguma pasta, casso ocorra é só alterar o dono da pasta com:

# chown -R proxy:proxy caminho/da/pasta

Crie a pasta onde será salvo o cache e mude o dono:

# mkdir /var/spool/squid
# chown -R proxy:proxy /var/spool/squid

Inicie o cache com o comando:

# squid -z

Reinicie o squid:

# /etc/init.d/squid restart


Até aqui tudo deve funcionar corretamente, menos sites HTTPS, que devem dar a mensagem de erro de certificado.

Para resolver isso, é só importar o certificado para o navegador e após, todos sites HTTPS devem navegar normalmente, menos o youtube.com que nós bloqueamos no arquivo de configuração.


---- outra contribuição:



O script a seguir BLOQUEIA tudo que for HTTPS:

#!/bin/sh
iptables -A FORWARD -p tcp --dport 443 -j DROP
for URL in `grep -v "^#" /home/temp/acl/listabranca`; do
iptables -I FORWARD -d $URL -p tcp --dport 443 -j ACCEPT
done

Caso deseje LIBERAR todo acesso HTTPs e apenas bloquear o que interessa faça o inverso:

#!/bin/sh
iptables -A FORWARD -p tcp --dport 443 -j ACCEPT
for URL in `grep -v "^#" /home/temp/acl/listabranca`; do
iptables -I FORWARD -d $URL -p tcp --dport 443 -j DROP
done



fonte: https://www.vivaolinux.com.br/artigo/Squid3-com-bloqueio-HTTPS-que-realmente-funciona-Versao-3522