Март 28

Arduino — Это курто: 433 Датчики и пульты от GSM сигнализации ARDUINO

Сначала я скачал несколько библиотек которые не дали мне ровным счётом ничего, прочитал немного форумов которые рассказали о страшном кодирование таких датчиков через кодер декодер pt2262 \ pt2272 я уже начал подыскивать приемник передатчик с этой микросхемой, но все же залез в внутрь сигнализации я не обнаружил данные чипы хоть инструкция уверяла меня что они есть в ZC-GSM012 и вот мои успехи, все заработало без дополнительного железа.

итак

библиотека rcswitch   прямо внутри есть примеры которые помогут как считать коды так и отправить

для считывания используем ReceiveDemo_Simple

/*
  Simple example for receiving
  
  http://code.google.com/p/rc-switch/
*/

#include 

RCSwitch mySwitch = RCSwitch();

void setup() {
  Serial.begin(9600);
  mySwitch.enableReceive(0);  // Receiver on inerrupt 0 => that is pin #2
}

void loop() {
  if (mySwitch.available()) {
    
    int value = mySwitch.getReceivedValue();
    
    if (value == 0) {
      Serial.print("Unknown encoding");
    } else {
      Serial.print("Received ");
      Serial.print( mySwitch.getReceivedValue() );
      Serial.print(" / ");
      Serial.print( mySwitch.getReceivedBitlength() );
      Serial.print("bit ");
      Serial.print("Protocol: ");
      Serial.println( mySwitch.getReceivedProtocol() );
    }

    mySwitch.resetAvailable();
  }
}

в мониторе мы увидим

Received 1******4 / 24bit Protocol: 1

при нажатии на кнопки пультов и на срабатывание датчиков.

с помощью

SendDemo

#include 

RCSwitch mySwitch = RCSwitch();

void setup() {

  Serial.begin(9600);
  
  // Transmitter is connected to Arduino Pin #10  
  mySwitch.enableTransmit(10);

  // Optional set pulse length.
  // mySwitch.setPulseLength(320);
  
  // Optional set protocol (default is 1, will work for most outlets)
  // mySwitch.setProtocol(2);
  
  // Optional set number of transmission repetitions.
  // mySwitch.setRepeatTransmit(15);
  
}

void loop() {



  mySwitch.send(1******4, 24); // сигналка выключена
  delay(1000);  



  delay(20000);
}

mySwitch.send(1******4, 24);

это строка в которую мы добавили код кнопки.

ЖЕЛЕЗО

сама плата Arduino UNO  (клон) 10$

Радиоудлинитель 433Мгц 2$

пару строк и вы как минимум можете считывать датчики и управлять сигнализацией с ПК

 

 

Март 27

#include

Подключал библиотеку #include <DHT.h>  -подводные камни, лучше библиотеку добавлять в папку программы а не в пользовательскую папку библиотек и даже не через добавить в меню программы,

ну и добавляем через <>  а не «» как написано в самом  примере.

Март 26

Arduino UNO в Ubuntu 14.04 (не активен пункт Последовательный порт)

Arduino UNO подключение к ноутбуку (Украл отсюда)

находим устройство командой

# dmesg

 

[ 444.861592] usb 2-1.2: new full-speed USB device number 6 using ehci-pci
[ 444.957711] usb 2-1.2: New USB device found, idVendor=2341, idProduct=0043
[ 444.957719] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=220
[ 444.957723] usb 2-1.2: Manufacturer: Arduino (www.arduino.cc)
[ 444.957726] usb 2-1.2: SerialNumber: 85***********080
[ 444.958476] cdc_acm 2-1.2:1.0: ttyACM0: USB ACM device

Даем доступ всем желающим

ls -la /dev/ttyACM0
sudo chmod a+rw /dev/ttyACM0
и вперед к первым миганием Диодов \ Маяк готов 🙂
Вот и мне пришлось сделать первые шаги в электронике, после разочарование умным домом Xiaomi,
решил делать все своими руками   arduino, 433Mhz датчики, в конечном итоге старенький комп с UBUNTU и google API распознаванием голоса.
Одним словом будет интересно.

 

Март 17

Примеров Команды Nmap

Украдено тут

 

1. Сканирование Одного Хоста или IP Адреса

Сканировать Отдельный IP Адрес :
$ nmap 192.168.1.1

Сканировать сервер по Имени Хоста :
$ nmap server.shellhacks.com

Увеличить Уровень Детализации результатов сканирования :
$ nmap -v server.shellhacks.com
$ nmap -vv server.shellhacks.com
2. Сканирование Множества IP Адресов

Сканировать Множество IP Адресов :
$ nmap 192.168.1.1 192.168.1.2 192.168.1.3
$ namp 192.168.1.1,2,3

Сканировать Подсеть :
$ nmap 192.168.1.0/24
$ nmap 192.168.1.*

Сканировать Диапазон IP Адресов (192.168.1.0 — 192.168.1.200) :
$ nmap 192.168.1.0-200
3. Поиск Активных Компьютеров в Сети

Сканировать сеть в поиске Активных Хостов :
$ nmap -sn 192.168.1.0/24

Читайте : Поиск Активных Компьютеров в Локальной Сети
4. Сканирование Списка Хостов из Файла

Сканирование списка хостов/сетей из Файла :
$ nmap -iL input.txt

Формат файла :
# Записи могут быть представлены в любом из форматов, с которыми работает
# Nmap из командной строки (IP адреса, имена хостов, CIDR, IPv6, или октетные
# диапазоны). Записи должны разделятся одним или более пробелами, табуляциями
# или переходами на новую строку.

$ cat input.txt
server.shellhacks.com
192.168.1.0/24
192.168.2.1,2,3
192.168.3.0-200
5. Исключение IP/Хостов/Сетей из Сканирования

Исключить Цели из сканирования Nmap-ом :
$ nmap 192.168.1.0/24 —exclude 192.168.1.1
$ nmap 192.168.1.0/24 —exclude 192.168.1.1 192.168.1.5
$ nmap 192.168.1.0/24 —exclude 192.168.1.1,2,3

Исключить Список хостов, взятых из файла :
$ nmap 192.168.1.0/24 —excludefile exclude.txt

Формат файла с исключенными хостами аналогичен приведенному выше.
6. Сканирование Определенных Портов

Сканировать Один Порт :
$ nmap -p 80 192.168.1.1

Сканировать Несколько Портов :
$ nmap -p 80,443 192.168.1.1

Сканировать Диапазон Портов :
$ nmap -p 80-1000 192.168.1.1

Сканировать Все Порты :
$ nmap -p «*» 192.168.1.1

Сканировать несколько самых Распространенных Портов :
$ nmap —top-ports 5 192.168.1.1
$ nmap —top-ports 10 192.168.1.1
7. Определение Поддерживаемых IP Протоколов

Определить какие IP Протоколы (TCP, UDP, ICMP, и т.д.) поддерживает сканируемый хост :
$ nmap -sO 192.168.1.1
8. Сканирование TCP/UDP Портов

Сканировать все TCP Порты :
$ nmap -sT 192.168.1.1

Сканировать определенные TCP Порты :
$ nmap -p T:80 192.168.1.1

Сканировать все UDP Порты :
$ nmap -sU 192.168.1.1

Сканировать определенные UDP Порты :
$ nmap -p U:53 192.168.1.1

Объединение сканирования разных портов :
$ nmap -p U:53,79,113,T:21-25,80,443,8080 192.168.1.1
9. Быстрое Сканирование

Активировать Быстрый Режим сканирования :
$ nmap -F 192.168.1.1

* Сканирует меньшее кол-во портов, чем при обыкновенном сканировании.
10. Показывать Причину Состояния Порта

Показать Причину, по которой Nmap считает что порт находится в определенном состоянии :
$ nmap —reason 192.168.1.1
11. Показывать Только Открытые Порты

Показать Только Открытые Порты (либо возможно открытые) :
$ nmap —open 192.168.1.1
12. Определение ОС

Включить Определение ОС :
$ nmap -O 192.168.1.1

* Определяет удаленную операционную систему с помощью отпечатка стека TCP/IP.
13. Определение Версии Сервисов

Включить Определение Версии Сервисов :
$ nmap -sV 192.168.1.1

* Определяет версии программ, запущенных на удаленном сервере.
14. Обнаружение Фаервола

Узнать, защищен ли компьютер какими-либо Пакетными Фильтрами или Фаерволом :
$ nmap -sA 192.168.1.1
15. Подмена MAC Адреса

Подменить MAC Адреса :
$ nmap —spoof-mac 00:11:22:33:44:55 192.168.1.1

Подменить MAC Адрес Случайным MAC-ом :
$ nmap —spoof-mac 0 192.168.1.1
16. Сканирование Фаервола на Уязвимости

TCP Null сканирование :
$ nmap -sN 192.168.1.1

* Не устанавливаются никакие биты (Флагов в TCP заголовоке 0).

TCP Fin сканирование :
$ nmap -sF 192.168.1.1

* Устанавливается только TCP FIN бит.

TCP Xmas сканирование :
$ nmap -sX 192.168.1.1

* Устанавливаются FIN, PSH и URG флаги (пакет светится как новогодняя елка).
17. Скрытое Сканирование

TCP SYN сканирование :
$ nmap -sS 192.168.0.1

* Известное как сканированием с использованием полуоткрытых соединений, так как не отрывает полных TCP соединений.

Читайте : Анонимное Сканирование Портов : Nmap + Tor + ProxyChains
18. Отключение Обнаружения Хостов (No Ping)

Не пинговать хосты перед сканированием :
$ nmap -Pn 192.168.1.1
19. Отключение Использования DNS

Никогда не производить обратное преобразование DNS имен для каждого обнаруженного активного IP адреса :
$ nmap -n 192.168.1.1
20. Сохранение Результатов Сканирования Nmap в Файл

Сохранить результат сканирования Nmap в Текстовый Файл :
$ nmap 192.168.1.1 > output.txt
$ nmap -oN output.txt 192.168.1.1

Сохранить результат сканирования Nmap в XML Файл :
$ nmap -oX output.xml 192.168.1.1

Март 17

Ручная установка SSL сертификата SSL HTTPS debian

Украдено тут

Веб-сервер Apache

Если ssl запросы обрабатывает Apache, то сертификат устанавливается в файле конфигурации Apache. Проверить какой веб сервис отвечает на 443 (ssl) порту можно командой:
Linux:
# netstat -napt | grep 443
tcp 0 0 188.120.233.16:443 0.0.0.0:* LISTEN 731/apache2
FreeBSD:
# sockstat |grep 443
root httpd 83299 19 tcp4 188.120.225.20:443 *:*

Для установки сертификата откройте конфигурационный файл Apache. На FreeBSD это /usr/local/etc/apache22/httpd.conf. Debian — /etc/apache2/apache2.conf. Centos — /etc/httpd/conf/httpd.conf. Найдите VirtualHost вашего домена.

Иногда вы можете найти блоки <VirtualHost> в отдельных файлах, в директории веб сервера.

Создайте блок <VirtualHost> для подключения SSL соединения. Пример:
<VirtualHost 10.0.0.1:443>
DocumentRoot /home/user/data/www/domain.com
ServerName domain.com
SSLEngine on
SSLCertificateFile /path/to/domain.crt
SSLCertificateKeyFile /path/to/domain.key
SSLCACertificateFile /path/to/ca.crt
</VirtualHost>

Где
domain.com — имя вашего домена.
10.0.0.1 — ip адрес, на котором находится домен.
/home/user/data/www/domain.com — путь до домашней директории вашего домена.
/path/to/domain.crt — файл, в котором находится сертификат.
/path/to/domain.key — файл, в котором находится ключ сертификата.
/path/to/ca.crt — файл корневого сертификата.

Перезапустите Apache командой apachectl restart или apache2ctl restar