Накидайте г на вентилятор
Кто что думает про https://pythoncourse.ru с точки зрения повышения квалификации/подтянуть знания в разных областях?
Программа выглядит довольно интересно. Плевать, что под эгидой mail.ru
Кто что думает про https://pythoncourse.ru с точки зрения повышения квалификации/подтянуть знания в разных областях?
Программа выглядит довольно интересно. Плевать, что под эгидой mail.ru
Сервер zywall 35
Настройки ipsec на нем (да, des древний как г но нужно завести с этим)
Negotiation Mode Main
Encryption Algorithm DES
Authentication Algorithm MD5
SA Life Time (Seconds) 28800
Key Group DH1
Клиент strongswan
conn TESTING
left=my_client_ip
leftauth=psk
right=zywall_35_ip
rightsubnet=10.133.16.0/24
rightauth=psk
ike=3des-md5-modp768!
esp=3des-md5-modp768!
dpddelay=30
dpdtimeout=150
mediation=no
keyexchange=ikev1
При подключении всегда одна и та же ошибка
Aug 3 12:37:40 debian-1 charon: 04[IKE] IKE_SA TESTING[1] established between my_client_ip[my_client_ip]...my_server_ip[my_server_ip]
Aug 3 12:37:40 debian-1 charon: 04[IKE] IKE_SA TESTING[1] state change: CONNECTING => ESTABLISHED
Aug 3 12:37:40 debian-1 charon: 04[IKE] scheduling reauthentication in 3270s
Aug 3 12:37:40 debian-1 charon: 04[IKE] maximum IKE_SA lifetime 3450s
Aug 3 12:37:40 debian-1 charon: 04[IKE] activating new tasks
Aug 3 12:37:40 debian-1 charon: 04[IKE] activating QUICK_MODE task
Aug 3 12:37:40 debian-1 charon: 04[CFG] configured proposals: ESP:3DES_CBC/HMAC_MD5_96/MODP_768/NO_EXT_SEQ
Aug 3 12:37:40 debian-1 charon: 04[CFG] configured proposals: ESP:3DES_CBC/HMAC_MD5_96/MODP_768/NO_EXT_SEQ
Aug 3 12:37:40 debian-1 charon: 04[CFG] proposing traffic selectors for us:
Aug 3 12:37:40 debian-1 charon: 04[CFG] my_client_ip/32
Aug 3 12:37:40 debian-1 charon: 04[CFG] proposing traffic selectors for other:
Aug 3 12:37:40 debian-1 charon: 04[CFG] my_server_ip/32
Aug 3 12:37:40 debian-1 charon: 04[IKE] Hash(1) => 16 bytes @ 0xaed01460
Aug 3 12:37:40 debian-1 charon: 04[IKE] 0: A0 5F 1B 19 97 D5 E6 04 AB 9A 74 4B 6A D1 4A D1 ._........tKj.J.
Aug 3 12:37:40 debian-1 charon: 04[ENC] generating QUICK_MODE request 1862884692 [ HASH SA No KE ID ID ]
Aug 3 12:37:40 debian-1 charon: 04[IKE] next IV for MID 1862884692 => 8 bytes @ 0xaed00878
Aug 3 12:37:40 debian-1 charon: 04[IKE] 0: CE A7 EB 42 29 5D 88 0B ...B)]..
Aug 3 12:37:40 debian-1 charon: 04[IKE] next IV for MID 1862884692 => 8 bytes @ 0xaed02920
Aug 3 12:37:40 debian-1 charon: 04[IKE] 0: 7C 4E 91 E5 24 2A EC 78 |N..$*.x
Aug 3 12:37:40 debian-1 charon: 04[NET] sending packet: from my_client_ip[500] to my_server_ip[500] (268 bytes)
Aug 3 12:37:40 debian-1 charon: 05[NET] received packet: from my_server_ip[500] to my_client_ip[500] (76 bytes)
Aug 3 12:37:40 debian-1 charon: 05[IKE] next IV for MID 1909653617 => 8 bytes @ 0xaef01578
Aug 3 12:37:40 debian-1 charon: 05[IKE] 0: 5E 97 AD A1 3B EE C6 42 ^...;..B
Aug 3 12:37:40 debian-1 charon: 05[ENC] parsed INFORMATIONAL_V1 request 1909653617 [ HASH N(INVAL_ID) ]
Aug 3 12:37:40 debian-1 charon: 05[IKE] Hash => 16 bytes @ 0xaef00a20
Aug 3 12:37:40 debian-1 charon: 05[IKE] 0: F5 D2 24 D0 F9 EC CC FD 87 B3 C5 C8 29 31 43 42 ..$.........)1CB
Aug 3 12:37:40 debian-1 charon: 05[IKE] received INVALID_ID_INFORMATION error notify
Aug 3 12:37:40 debian-1 charon: 05[NET] received packet: from my_server_ip[500] to my_client_ip[500] (76 bytes)
Aug 3 12:37:40 debian-1 charon: 05[IKE] next IV for MID 1882852347 => 8 bytes @ 0xaef01708
Aug 3 12:37:40 debian-1 charon: 05[IKE] 0: 6C 1F 33 B8 AF 48 15 52 l.3..H.R
Aug 3 12:37:40 debian-1 charon: 05[ENC] parsed INFORMATIONAL_V1 request 1882852347 [ HASH D ]
Aug 3 12:37:40 debian-1 charon: 05[IKE] Hash => 16 bytes @ 0xaef009d0
Aug 3 12:37:40 debian-1 charon: 05[IKE] 0: AF 2B 14 D7 0E 64 6E 99 5C 14 75 EC E5 34 97 B0 .+...dn.\.u..4..
Aug 3 12:37:40 debian-1 charon: 05[IKE] received DELETE for IKE_SA TESTING[1]
Aug 3 12:37:40 debian-1 charon: 05[IKE] deleting IKE_SA TESTING[1] between my_client_ip[my_client_ip]...my_server_ip[my_server_ip]
Aug 3 12:37:40 debian-1 charon: 05[IKE] IKE_SA TESTING[1] state change: ESTABLISHED => DELETING
Aug 3 12:37:40 debian-1 charon: 05[IKE] IKE_SA TESTING[1] state change: DELETING => DELETING
Aug 3 12:37:40 debian-1 charon: 05[IKE] IKE_SA TESTING[1] state change: DELETING => DESTROYING
т.е. соединение вроде бы устанавливается и сразу отваливается
Таблица models:
id - primary key title - varchar(256)
Таблица model_instances
id - primary key model_id - foreign key to app_models.id title - varchar(256)
Таблица model_fields
id - pk model_id - foreign key to models.id instance_id - foreign key to model_instances.id title - name of the field type - enum [text, checkbox, radio, select, 'etc']
Таблица model_field_values:
instance_id - forein key model_instance.id field_id - foreign key to model_fields.id value - text
Может быть несколько значений для поля (например, когда поле select multiple)
Проблема: value - поле типа text, чтобы можно было сохранить разные типы (текст, дату, число), но поиск по ним будет медленным и неэффективным (если будем искать по числу, все равно поле текстовое).
Например, для 10 моделей, где у каждой уже есть 1000 экземпляров с 10 полями в каждом таблица model_field_values будет содержать 100000 записей, а если есть множественные поля, то и 120000 записей.
Если бы создавались отдельные таблицы, то было бы 10 таблиц с 1000 записей в каждой + несколько таблиц для хранения множественных значений.
Варианты решения:
Для каждой модели создавать model_field_values_{id модели} таблицу с той же структурой. Плюсы: любое поле можно сделать множественным (например, несколько номеров телефонов, несколько email для текстовых полей), больше таблиц - но меньше записей в каждой, минусы все те же самые - value всегда текстовое поле).
Либо, т.к. мы знаем, что в model_fields, можно создавать model_field_values для каждой модели в виде
model_fields for model.id=1 (by primary key): 1 - text, 2 - integer, 3 - datetime, 4 - smalltext
Fields for model_field_values_1: field_1 text, field_2 integer, field_3 datetime, field_4 varchar(256)
model_fields for model.id=2 (by primary key): 1 - text, 2 - integer, 3 - integer, 4 - integer
Fields for model_field_values_1: field_1 text, field_2 integer, field_3 integer, field_4 integer
Это решение не подходит опять же для множественных значений
P.S. Дизайн базы для CRM-системы, где пользователи сами могут создавать модели (аналог отдельной таблицы в БД) с разными типами полей (аналог колонок в БД).
В интернетах есть подобные системы (где пользователь сам создает модели), так вот, как там дизайнят БД?
Может есть где подсмотреть, какой дизайн применить?
До 25k, с hdmi, usb.
От 32" до 43". Full hd. Желательна поддержка mkv с ac3 кодеком.
Будет использоваться и как монитор, и как телевизор (так что usb обязательно).
sup, lor.
Что полезного можно сделать в квартире при капитальном ремонте?
Окромя как проложить сеть во все комнаты ничего в голову не приходит.
Также хочется поставить датчики газа/воды (чтобы уведомляли, если будет протечка/утечка газа).
Стоит ли ставить защиту питания на входе в квартиру? Дом не сильно старый, проводка не убитая. Если да, то что лучше?
P.S. Чем проще, тем лучше. Пихать повсюду кучу контроллеров не хочется. Крайне приветствуется личный опыт.
Требования: до 30k, матовый экран, памяти от 4 гб (либо с возможностью наращивания), экран от 13", ЖД либо ЖД+ssd от 200 Гб.
Использоваться будет для разработки, админинга и просмотра картинок с котиками. Естественно, под linux.
Есть план написания большого «сайта» с кучей сущностей в БД и сложной логикой для их связи.
Писал на python/django, самопальном php, тьфу-тьфу-тьфу битриксе.
Накалякать это дело самопально на php - не велика проблема, НО в итоге получится неподдерживаемый говнокод.
Пробовал laravel 5 на php и за полдня так и не вдуплил, как сделать большую часть задач (например, \Auth::logout() упорно требовал updated_at у пользователя в БД, а оно мне не нужно).
Что нужно: роутинг, удобное взаимодействие с БД (в частности, с транзакциями), нечто для валидации данных (типа описал поля и правила их проверки и вся валидация готова).
Американский телеведущий Джимми Киммел любит обманывать фанатов Apple. Однажды он выдал дешевые часы Casio за умные Apple Watch, а iPhone первого поколения — за iPhone 6s. На этот раз прохожим вручили два iPhone 5s, но сказали, что один из них — это громкая новинка iPhone SE. Реакция обывателей оказалась предсказуемой.
Первая «жертва» встретила поддельный iPhone SE восторженной улыбкой и отметила, что он тяжелее смартфона, выпущенного в 2013 году: «Возможно, из-за увеличенной батареи».
Следующая девушка сказала, что подставной iPhone SE выглядит меньше, мужчина отметил более «чистый» и четкий экран у «новинки». Еще одна девушка сумела рассмотреть лучшую автономность у одного из iPhone 5s. А кое-кому показалось, что один из аппаратов работает на миллисекунды отзывчивее и быстрее. Самый дотошный прохожий и вовсе указал на переделанную кнопку Home.
При логине во многих (всех?) интернет-банках происходит серия редиректов на разные адреса. Зачем так сделано и что при этом происходит на стороне банка?
Товарищи, подскажите, какие еще есть способы у опсосов по взиманию тугриков у честного населения, кроме «незаметных» подписок при заходе (случайном) на сайт, предлагающий платную подписку, а также способы этого избежать.
С недавнего времени можно оформить контент счет, что позволяет не попасть на деньги в таком случае (особенно когда мобильным интернетом могут пользоваться технически плохо подкованные люди).
ArchLinux
Chromium 35.0.1916.153-1
openbox
Драйвер nvidia 337.25-1
Жмем F11, chromium переходит в fullscreen. Снова жмем, окно исчезает. В списке открытых окон оно остается. По alt-tab очерчиваются границы окна, но окно не появляется. При этом можно нажать alt-f4, когда окно выбрано, но не отображается, и chromium нормально закрывается.
На чистом профиле то же самое.
С google-chrome, поставленным из aur, такой проблемы нет.
Есть такой usb телефон.
Есть около сотни разношерстных рабочих станций (на windows xp).
Условно станции можно поделить на N типов (в зависимости от модели компьютера/материнки).
На одном из этих типов трубка крайне хреново работает. Выражается это следующим образом.
На одном компьютере при подключении трубки звук из нее слышно секунд 5, не дольше. На другом компьютере трубка может заработать после смены usb-порта, но на следующий день звука из нее не добиться, если снова не сменить usb-порт. Точно есть один аналогичный компьютер, на котором трубка нормально работает.
Для трубки используется x-lite. При его запуске на дисплее трубки должно отобразиться текущее время. На проблемных компьютерах даже при наличии звука в трубке оно либо не отображается, либо после over9k перетыканий в разные порты таки появляется. Если время показывается, значит можно не тыкать мышкой в x-lite, чтобы позвонить, а набирать номер на трубке. Аналогично с ответом на звонок.
Трубки при подключении на компьютеры другой модели ведут себя адекватно.
Проверял через live cd ubuntu. Поведение в отношении звука аналогичное. Он не всегда есть.
Есть предположение, что это может быть связано с плохим питанием по usb, но в этом я не уверен.
Что еще можно проверить и в чем может быть причина?
Скажем, есть url http://api.example.com/someoperation?params&apikey=123456, при обращении к которому при правильном apikey можно получить некоторые данные в формате json.
Вложенность этих данных (объект в списке, которые в объекте, который в списке, нутыпонел) может быть разной.
Естественно, структура ответа мы знаем из документации сервиса.
Внимание, вопрос: как лучше всего обрабатывать такие ответы?
Стоит ли делать кучу вложенных if, чтобы проверить, что все требуемые ключи есть в ответе, или забить, и обращаться сразу в виде answer[key1][key2][key3], предполагая, что key1, key2 и key3 всегда есть в ответе и не стоит лишний раз заморачиваться с проверкой ошибок?
В частности, обработка идет на python.
Гипотетически, нехорошие люди могут поломать аккаунт разработчика adblock в chrome store и запилить маленький патч, который будет тырить все явки и пароли. Думаю, то же относится и к лисе.
Миллионы хомячков-гиков пострадают. Начнется мародерство, государство рухнет, вся шваль повылезает из щелей и установится новый мировой порядок.
Так вот, помимо adblock я так же использую ghostery, который подвержен той же проблеме, потому что в permissions значится
Access your data on all websites.
debian 7.
exim4.
postfixadmin + mysql.
Kaspersky Security 8.0 for Linux Mail Server, который использует встроенный в себя postgres.
Места занято жалких 3 Гб, потому что почта на сервере не хранится. Есть скрипт наипростейшего бэкапа при помощи tar.
#!/bin/bash
REMOTE_DIR="/mnt/network_disk/mail/backups/"
aptitude clean
mount -t cifs //192.168.10.1/network_disk /mnt/network_disk -o credentials=/etc/smb_password
DATE="`date '+%Y-%m-%d_%Hh_%Mm'`"
service exim4 stop
service dovecot stop
service klms stop
service klmsdb stop
service apache2 stop
service php5-fpm stop
service mysql stop
service nagios-nrpe-server stop
tar -czvpf "$REMOTE_DIR/backup-$DATE.tar.gz" \
--directory=/ --exclude='proc/*' --exclude='sys/*' --exclude='dev/*' --exclude='mnt/network_disk/*' --exclude='run/*' /
service mysql start
service php5-fpm start
service apache2 start
service klmsdb start
service klms start
service dovecot start
service exim4 start
service nagios-nrpe-server start
umount /mnt/network_disk
Один из разработчиков ядра Linux Сара Шарп из компании Intel посыпает голову пеплом: за восемь лет работы над стеком Linux USB они неоднократно сталкивались с ситуацией, когда USB-устройство внезапно отключалось после выхода из режима ожидания при включенной функции auto-suspend. Все это время проблему списывали на китайских производителей дешевых флэшек, мышек и клавиатур. Обсуждалась даже идея внедрить «черный список» моделей таких устройств прямо в ядро, чтобы для них не активировался режим энергосбережения. От идеи отказались только когда стало ясно, что список будет слишком большим: так много было USB-устройств, которые вели себя некорректно.
Сейчас выяснилось, что сбои не всегда были аппаратными.
В коде хост-контроллера Intel xHCI (drivers/usb/core/hub.c) есть строчка с лаконичным комментарием «TRSMRCY = 10 msec». В соответствии с пунктом 7.1.7.7 спецификаций USB 2.0, система USB System Software должна обеспечить время в 10 миллисекунд для восстановления работы устройства, в течение которых не отправлять на него никаких запросов. В ядро Linux просто вставили таймаут 10 мс. Но специалисты по аппаратному обеспечению сейчас обратили внимание разработчиков ядра Linux, что в таблице 7-14 спецификаций USB 2.0 указано, что таймаут должен быть минимум 10 миллисекунд, а не максимум. Это означает, что устройство может восстанавливаться дольше, чем сейчас установлено в строке TRSMRCY в Linux USB. В таких случаях при попытке обратиться к нему может возникнуть ошибка передачи данных — тогда операционная система считает устройство отключенным.
Тесты показали, что выход устройства из спящего режима никогда не занимает больше 17 мс, но в 8% случаев превышает 10 мс. Для исправления бага достаточно увеличить значение таймаута с 10 до 20 мс, после чего все USB-устройства начнут нормально работать. Сара Шарп уже подготовила патч.
Разработчики говорят, что больше всего от бага страдают пользователи ChromeOS, потому что эта система очень агрессивно использует режим энергосбережения для USB, активируя auto-suspend для всех внутренних USB-устройств, включая WiFi и Bluetooth.
(c) x
UDP: Посоны, расходимся
I guess the xHCI hardware engineers just assumed software would always wait for the interrupt from the port status change event, rather than using a simple 10 ms timer. I bet they didn't even realize that that the transition took longer than 10ms, because Windows waited for the port status change event.
(c) src
Что-то вроде Fleshgod Apocalypse – Kingborn (в особенности с 1:10 до 2:20).
Или Fleshgod Apocalypse - The Violation (с 0:30 до 1:25).
Посоветуйте, на какой журнал подписаться. В бумажном виде.
Ксакеп вообще сейчас чего-нибудь ст`оит? А то по содержанию последних номеров прошелся - не впечатлило.
С другой стороны в сис.адм. попадаются (сужу исключительно по заголовкам) проплаченные^W полезные статьи.
Может великий разум лора подскажет «более лучший» журнальчик.
ЗЫ. Деньги казенные. Подписка почтой Роисси.
Пусть у нас есть схема
[PC] 192.168.0.1 - 192.168.0.2 [SERVER1] 192.168.1.1 - 192.168.1.2 [SERVER2] 192.168.2.1/24
ip route add 192.168.1.2 via 192.168.0.2
ip route add 192.168.2.2 via 192.168.1.2
ip route add $gateway_to_another_network via $gateway_in_the_same_network
ip route add $another_network_ip via $gateway_to_another_network
Даже такие авторитетные компании как Google не защищены от взлома. Причем, беда может придти оттуда, откуда никто не ждет. Например, австралийское подразделение Google четко соблюдало правила информационной безопасности в отношении компьютерных сетей, а взломали их через промышленную систему менеджмента здания, в котором размещается офис.
Речь идет об офисе Google Wharf 7 — здании промышленного дизайна с большими открытыми пространствами, которое даже не очень-то и похоже на офис.
Хакерская компания Cylance осуществила атаку, воспользовавшись уязвимостью в системе менеджмента здания Tridium Niagara. Взломщикам удалось извлечь конфигурационный файл config.bog из устройства Tridium, работающего под операционной системой QNX. В этом файле оказались имена и парольные хэши всех пользователей, в том числе администратора.
Расшифровать парольный хэш администратора не составила большого труда.
После этого хакеры получили полный доступ к зданию, включая логи перемещений сотрудников, сигнализацию, систему учета электроэнергии, планы этажей и т.д.
Естественно, хакеры сразу подали заявку по программе вознаграждений Google Vulnerability Rewards Program (VRP). Они опубликовали информацию в открытом доступе только после того, как система ушла в офлайн.
См. картинки по ссылкам:
перевод, оригинал
UDP: В источнике ничего не написано, но, возможно, как-то связано с этой уязвимостью, а именно
Directory Traversal
By default, the Tridium Niagara AX software is not configured to deny access to restricted parent directories. This vulnerability allows a successful attacker to access the file that stores all system usernames and passwords. An attacker could exploit this vulnerability by sending a specially crafted request to the Web server running on Port 80/TCP.
вперед → |