воскресенье, 16 августа 2015 г.

intellij idea: различные полезности


Плагины для удобства:

Большинство плагинов вы можете установить Idea.
Заходим File > Settings (Ctrl + Alt + S) > Plugins > Browse repositoreis...
Выбираем и стави нужные плагины.

Key Promoter Plugin (Fork) - это форк известного плагина key promoter с немного расширенным функфионалом. Упрощает изучение hotkey в idea. Показывает статистику использования

CheckStyle-IDEA - Проверка стиля вашего кода. Можно выставить правила для стилей (Settings > Other Settings > Checkstyle)

Пагины, позволяющие выявлять ошибки:

Данные плагины были взяты из презентации  Николая Чашникова — Писать код быстрее, ошибаться реже.(Рекомендую к просмотру)


FindBugs-IDEA - плагин, который выполняет статический анализ байткода и позволяет выявлять большое количество ошибок.  Это open sourse проект с кодои на github

PMDPlugin - плагин который выполняет стаческий анализ java кода, также является open source проектом. Позволякт добавлять собственные проверки. Исходники на github

error-prone- Проект от Google.  Суть работы заключается в том, что при компиляции подменяется javac (т.е. это что то вроде обертки для javac) и ряд ошибок будут найдены еще на стадии компиляции. Эти ошибки будут выведены, как обычные ошибки компилятора. Для этого просто добавляется дополнительная зависимость в систему сборки проект (maven, Ant ...)

Поддержка дополнительных типов файлов:

.ignore - плагин поддерживающий разные виды ignore файлов: .gitignore (GIT), .hgignore (Mercurial), .npmignore (NPM), .dockerignore (Docker), .chefignore (Chef), .cvsignore (CVS), .bzrignore (Bazaar), .boringignore (Darcs), .mtn-ignore (Monotone), ignore-glob (Fossil), .jshintignore (JSHint), .tfignore (Team Foundation), .p4ignore (Perforce), .flooignore (Floobits)

MultiMarkdown - добавляют поддержку языка/разметки Markdown, который например используется на github (файлы с расширением .md)

Batch Scripts Support - поддержка BAT/CMD файлов для Windows

вторник, 28 апреля 2015 г.

SSL/TLS Как это работает и как это устроено (ссылки)





В результате потраченных нескольких часов на поиск и понимание различного материала по SSL/TLS набралась пачка наиболее полезных ссылок. Дублировать весь материал не вижу смысла, т.к. он был изложен отлично в разных истоничках, но ссылки оставлю..



Первые несколько миллисекунд HTTPS соединения  
Детально описана установка SSL/TLS соединения. Оригинал на английском

Как легко расшифровать TLS-трафик от браузера в Wireshark Описывается, как получить сессионные ключи из браузеров Firefox и Chrome, а дальше с из помощью расшифровывать tls-трафик.

Decrypting SSL/TLS sessions with Wireshark - ReloadedОписано, как использовать приватный ключ для дешифрования трафика в wireshark.

SSL session flow
Короткая и понятка заметка по установке/разрыву SSL/TLS соединения.


SSL and TLSДетально описаны разные варианты и шаги установки соединения и разрыв соедниения.
Используются скриншоты дампов с детальными пояснениями. Очень полезное руководство.

Дешифрация TLS трафика Java приложений с помощью логов
Полезная стать для Java разработчиков.

SANS Institute InfoSec Reading Room (Eng. PDF)
Отличное руководство на 66 страниц по SSL/TLS.


Вам наверняка придется собирать трафик и анализировать его в Wireshark.
Отличное руководство - Wireshark — приручение акулы 

www.ssllabs.com/ssltest/index.html 
Бесплатный сервис, выводящий информацию о настройках https на узле и о возможных слабостях настройки.

www.isecpartners.com/media/106031/ssl_attacks_survey.pdf - Самое полное, из встретившихся мне описаний современных атак на https, собранных в одном англоязычном документе(BEAST, CRIME, BREACH, LUCKY 13, слабости RC4 и.т.д)
 

суббота, 25 октября 2014 г.

Импортирование словарей из LingvoLeo в Anki (Lingvo.get)

Многие сталкивались с задачей что то запомнить и уже наталкивались на программы Anki а также ее веб версию AnkiWeb. Большим плюсом Anki является бесплатность и поддержка разных платформ, в том числе и мобильных.

Очень многие занимаются изучением языков и пользуются сервисом LingvoLeo

Подход к запоминанию слов в Anki  мне нравится больше, чем в LingvoLeo.
Оказалось, что я далеко не одинок в этом и было написано приложением, которое помогает импортировать словари из LingvoLeo в Anki - Lingvo.get.
Это приложение написал Владислав Тиличенко и даже бесплатно  выложил для всех желающих.

Расписывать, как ее использовать не вижу смысла, т.к. в комплекте идет отличная документация на русском языке, с картинками. Дублировать не вижу смысла.

Единственный минус, который я увидел - нельзя по отдельности импортировать ваши словари, т.е. импорт происходит полностью всего списка слова, которые добавляли вы.

С остальными словарями, вы можете выбрать их и импортировать по отдельности.

пятница, 17 мая 2013 г.

Создание сервиса в Windows (NSSM)

Иногда нужно сделать что то сервисом в Windows
Использовать стандартные утилиты не всегда получается. С ними часто нужно повозиться :(.
Есть алтернативная утилита NSSM - the Non-Sucking Service Manager.
Название о многом говорит... После нескольких попыток использовать стандартные утилиты я понял почему она появилась и имеет такое название :)

Использовать ее гораздо проще, в общем рекомендую..
Есть две версии 32/64 bit в одном архиве.

Распаковываем нужную версию в любое место, например в
C:\environment\nssm.exe

HELP
C:\>C:\environment\nssm.exe
NSSM: The non-sucking service manager
Version 2.16, 2012-12-01
Usage: nssm <option> [args]


To show service installation GUI:
        nssm install [<servicename>]

To install a service without confirmation:
        nssm install <servicename> <app> [<args>]

To show service removal GUI:
        nssm remove [<servicename>]

To remove a service without confirmation:
        nssm remove <servicename> confirm

INSTALL SERVICE FROM COMMAND LINE:
C:\>C:\environment\nssm.exe install NAME_FOR_SERVICE c:\e
nvironment\path\to\script\or\programm programm_args
Service "NAME_FOR_SERVICE" installed successfully!
DELETE SERVICE FROM COMMAND LINE:

C:\Users\Administrator>C:\environment\nssm.exe remove NAME_FOR_SERVICE confirm
Service "NAME_FOR_SERVICE" removed successfully!
Попробовать запустить.остановить его вы можете стандартным способом Manage -> Configuration -> Services  

Ссылки:
NSSM

пятница, 12 апреля 2013 г.

Наиболее популярные команды OpenSSL

Регулярно забываю команды для openssl :(.
Решил записать основные из них
Ниже перечислены наиболее распространенные команды OpenSSL и варианты их использования:

пятница, 29 марта 2013 г.

Бесплатные книги по IT от realtimepublishers (ENG)

 Читая очередной пост на хабре я наткнулся на очень приятный и полезный ресурс -  Realtimepublishers.
  Задумка данного ресурса мне очень понравилась. С этого ресурса можно скачать весьма интересные книги по различным областям ИТ. В общем рекомендую.

Чтобы дать представление об этом ресурсе, я приведу текст одного из авторов книг на данном ресурсе.

среда, 13 марта 2013 г.

Горячие кнопки в Midnight Commander (mc hot keys)

Midnight Commander (mc, миднайт-командер, «полуночный командир») — один из консольных файловых менеджеров с текстовым интерфейсом типа Norton Commander для UNIX-подобных операционных систем, а также Microsoft Windows и Windows NT, OS/2, Mac OS X (но не Mac OS 9).


Ctrl и Shift обозначают соответствующие клавиши клавиатуры, Meta - условное обозначение для набора мета-клавиш, на современном PC это обычно Alt или Esc.

Горячие клавиши для файловых панелей

    F3 Просмотр файла
    F4 Редактирование файла
    Insert Выделение текущего объекта
    + вызывает окно для выделения группы файлов (можно использовать регулярные выражения)
    \ снимает отметку с группы файлов (действие, обратное тому, которое вызывается по клавише +)
    Meta+Enter Вставить файл или каталог, на котором установлен курсор в командную строку
    Meta+. не показывать или показать скрытые файлы или каталоги (начинаются на точку '.')
    Meta+a или Ctrl+x,p Посылает в командную строку полный путь в текущей активной панели
    Meta+c Вызывается меню быстрой смены текущего каталога на активной панели
    Meta+g отмечает первый файл или каталог в отображаемом списке на панели
    Meta+h Вызов меню последних выполненных команд
    Meta+i Смена текущего каталога на неактивной панели, на каталог в котором вы находитесь в активной панели
    Meta+j отмечает последний файл или каталог в отображаемом списке на панели
    Meta+n Вернуть последующую выполненную командную строку
    Meta+o неактивная панель переходит в каталог на который указывает активная панель
    Meta+p Вернуть предыдущую выполненную командную строку
    Meta+r отмечает средний файл или каталог в отображаемом списке на панели
    Meta+t Смена режима работы панели ('Стандартный','Укороченный','Расширенный')
    Meta+Shift+? Вызывается меню расширенного поиска файлов
    Meta+Shift+A или Ctrl+x,Ctrl+p Посылает в командную строку полный путь в нективной панели
    Meta+Shift+H Отобразить историю каталогов
    Ctrl+\ Вызывается меню часто используемых каталогов
    Ctrl+l Перерисовать экран
    Ctrl+o Скрытие/показ панелей
    Ctrl+r перечитать содержимое каталога
    Ctrl+s Быстрый поиск файла или каталога
    Ctrl+Space Показать размер текущего каталога
    Ctrl+x,a Отображается список активных соединений виртуальных файловых систем
    Ctrl+x,c Просмотр/правка прав доступа текущего объекта
    Ctrl+x,i Быстрый просмотр информации о текущем объекте на второй панели
    Ctrl+x,j Показ фоновых задач
    Ctrl+x,l Создать жесткую ссылку с текущего объекта
    Ctrl+x,o Просмотр/правка владельца/группы для текущего объекта
    Ctrl+x,q Быстрый просмотр содержимого файла на второй панели
    Ctrl+x,s Создает символьную ссылку symlink для текущего объекта
    Ctrl+x,t Вставка всех выделенных объектов в командную строку
    Ctrl+x,Ctrl+s Редактировать символическую ссылку
    Shift+F1 Вызывается меню быстрого перехода между точками монтирования на левой панели
    Shift+F2 Вызывается меню быстрого перехода между точками монтирования на правой панели
    Shift+F3 Просмотр файла raw без учета расширения
    Shift+F4 Создает новый файл

Горячие клавиши для редактора

    F3 Начать выделение текста. Повторное нажатие F3 закончит выделение
    Shift+F3 Начать выделение блока текста. Повторное нажатие F3 закончит выделение
    F5 Скопировать выделенный текст
    F6 Переместить выделенный текст
    F8 Удалить выделенный текст
    Meta+i Переключение режима "Автовыравнивание возвратом каретки", удобно при вставке отформатированного текста из буфера обмена
    Meta+l Переход к строке по её номеру
    Meta+t Сортировка строк выделенного текста
    Meta+u Выполнить внешнюю команду и вставить в позицию под курсором её вывод
    Ctrl+f Занести выделенный фрагмент во внутренний буфер обмена mc (записать во внешний файл)
    Ctrl+k Удалить часть строки до конца строки
    Ctrl+n Создать новый файл
    Ctrl+s Включить или выключить подсветку синтаксиса
    Ctrl+t Выбрать кодировку текста
    Ctrl+u Отменить действия
    Ctrl+x Перейти в конец следующего
    Ctrl+y Удалить строку
    Ctrl+z Перейти на начало предыдущего слова
    Shift+F5 Вставка текста из внутреннего буфера обмена mc (прочитать внешний файл)
    Meta+Enter Диалог перехода к определению функции
    Meta+- Возврат после перехода к определению функции
    Meta++ Переход вперед к определению функции
    Meta+n Включение/отключение отображения номеров строк
    tab Отодвигает вправо выделенный текст, если выключена опция "Постоянные блоки"
    Meta-tab Отодвигает влево выделенный текст, если выключена опция "Постоянные блоки"
    Meta+Shift+- Переключение режима отображения табуляций и пробелов
    Meta+Shift++ Переключение режима "Автовыравнивание возвратом каретки"
     
    Ссылки:
Пост был позаимствован по этой ссылке. Я периодически забываю некоторые полезные сочетания, поэтому решил его положить у себя в блоге, как памятку.

воскресенье, 10 марта 2013 г.

Удобное переключение между звуковыми картами в Windows

Купил себе наушники со встроенной звуковой картой.
Все отлично, только часто приходится переключаться между основными колонками и наушниками.
Действие само по себе не сложное. Зайти и поменять устройство воспроизведения звука по-умолчанию. Но меня это как то напрягает и я решил найти вариант, который позволит мне автоматизировать данное действие.

Итак нашел утилиту DefSound, которая работает под Vista и более новыми ОС семейства Windows. Болльшим + является то, что она доступна и в исходных кодах, что позволит каждому желающему доработать ее или хотя бы проверить, что нет вредоносных закладок.
В общем спасибо автору :)

А теперь опишу как ее использовать...

пятница, 1 марта 2013 г.

Настройка Dell PowerConnect 6024 (pfvtnrb)


Короткая заметка по Dell PowerConnect 6024

среда, 26 сентября 2012 г.

Утилита rcconf (rcconf needs dialog or whiptail)

Понадобился нормальный инструмент по управлению автозапуском демонов.
Нашел интересный инструмент rcconf, которой подходил под мои задачи.
Установил

sudo aptitude install rcconf
Но вот беда после установки я получил ошибку

rcconf needs dialog or whiptail
Оба эти компонента предназначены для использования псевдографики в консоли. Проблема решается очень просто, можно установить dialog

sudo apt-get install dialog
После чего можно запустить rcconf и настроить запуск демонов

sudo rcconf
Примечание: Можно принудительно запустить rcconf с использованием dialog

sudo rcconf --dialog

вторник, 25 сентября 2012 г.

Сброс пароля в zabbix для admin

Столкнулся с тем что не могу залогиниться в zabbix.
Пароля для admin не знаю.
Не велика проблема, есть shell, восстановим справедливость :)
Окружение: Ubuntu, Zabbix 2.02, Apache 2.x

grep в Windows? Легко!


Многим юниксоидам очень не хватает команды grep при работе в cmd Windows.
Команды с таким названием в Windows нет :(

К счастью, в Windows XP (и выше) появились две команды, которые призваны исправить положение — это find и более мощный вариант — findstr.

Первая простая, и имеет явный недостаток — искомый текст надо заключать в кавычки.
Не знаю, как вам — но мне очень не удобно печатать кавычки каждый раз :)
findstr же этого не требует, и к тому же позволяет искать используя мощь регулярных выражений.
Таким образом, теперь надо помнить, что мы не в bash\zsh\etc, а в Win, и набирать findstr вместо grep.

Ну а на своей машине я сделал следующее:

echo findstr %1 %2 %3 %4 %5 > %systemroot%\grep.cmd

теперь можно не задумываясь грепать вывод:

C:\WINDOWS>netstat -an | grep LISTEN

C:\WINDOWS>findstr LISTEN
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
TCP 0.0.0.0:1963 0.0.0.0:0 LISTENING
TCP 10.198.17.58:139 0.0.0.0:0 LISTENING
TCP 127.0.0.1:1025 0.0.0.0:0 LISTENING
TCP 127.0.0.1:9050 0.0.0.0:0 LISTENING
TCP 127.0.0.1:9051 0.0.0.0:0 LISTENING
TCP 192.168.56.1:139 0.0.0.0:0 LISTENING

ifconfig:
echo IF "%1"=="-a" (ipconfig /all) ELSE (ipconfig %1) > %systemroot%\ifconfig.cmd

man:
echo %1 /?> %systemroot%\man.cmd

ls:
echo IF "%1"=="-a" (dir) ELSE (IF "%1"=="-al" (dir) ELSE (dir %1 %2 %3 %4 %5)) > %systemroot%\ls.cmd
Я часто на автомате даю ключ(и) -a(l) команде ls, по этому добавил их «обработку»

P.S. спасибо AddRemover.

Ссылки:
grep в Windows? Легко!

вторник, 24 июля 2012 г.

Обновление программ в Calculete

Решил написать простой скрипт, который обновляет все программы установленные из портежей.
Флаги берутся из /etc/make.conf  и данные из /etc/portage/package.*.
Т.е. если Вы все ставили по умолчанию или не ленились добавлять значения флагов для портежей и другие данные, то все пройдет гладко
собственно сам скрипт

#!/bin/bash
i=0
for name in  `eix -u --only-names` ;do
echo " Updating $name";
$i=expr $i + 1 ;
emerge -u $name;
done
emerge @preserved-rebuild
echo "Updated $i app"
echo "Done!!!"
Процедура займет прилично времени, т.к. по факту будет пересобрана вся система.
Возможно небольшое количество портежей все же ругнется и придется их пересобрать с теми флагами которые там будут отмечены *
Все!


пятница, 20 июля 2012 г.

Установка пакетов в Tomato

Это логичное продолжение серии статей про прошивку Toamto
Забрасываем помидорами Asus RT-N16 (прошивка Tomato)

Хочется иметь немного расширить функционал и удобство использования роутера.

Для начал нам нужно подготовить flash.
Как это сделать описано в прошлой статье Настройка Tomato "под себя".

Итак теперь я опишу как поставить некоторые полезные программы на Ваш роутер:

Настройка Tomato "под себя"

Этот пост продолжение поста Забрасываем помидорами Asus RT-N16 (прошивка Tomato)
Базовая прошивка обладает достаточно большим рядом возможностей.
Я напишу, что я настраивал и оптимизировал.

Забрасываем помидорами Asus RT-N16 (прошивка Tomato)

Я уже пробовал альтернативную прошивку dd-wrt (подробнее Установка DD-WRT на ASUS RT-N16  ),
также настраивал там VPN server(Настройка OpenVPN с использованием сертификатов X.509 (На примере FreeBSD и роутера на DD-WRT) ).

Появилась проблемка, роутер не хотел принимать подключения по wi-fi.
Пересмотрел все настройки и потратив пару часов, я решил поставить новую прошивку и обратил внимание на прошивку Tomato.
Она обладает простым веб интерфейсом и большими возможностями.
Решил ее поставить.

четверг, 5 июля 2012 г.

Оптимизация NFS в Linux

Столкнулся с небольшой производительностью nfs сервера, начал ковырять, и узнавать, что же можно улучшить?
Я уже рассматривал раньше работу NFS на FreeBSD, там же есть и базовая теория, как это работает.
Так что повторяться не буду.

четверг, 14 июня 2012 г.

Работа с Mysql в Perl (модуль Mysql)

Очень часто приходиться писать различные скрипты на perl.
Большинство скриптов берет или пишет какие либо данные в БД.
Самой популярной БД является MySql, поэтому я опишу основные моменты, как это делать в perl.
Примечание: используемая ОС - Gentoo, но справедливо для любой Linux или *BSD системы.

вторник, 6 марта 2012 г.

Установка TrueCrypt в Gentoo и Calculate Linux

 Truecrypt - одна из лучших программ для шифрования информации.
Кроме огромного колличества возможностей у нее есть еще одно преимущество - она Open Sourse! Аналогов с такими же возможностями и при этом бесплатной я не видел.
С установка под Windows все просто, а вот в Linux могут возникнуть проблемы. У меня и возникли...

После установки при попытке монтирования криптоконтейнера я получил следующую ошибку:

device-mapper:reload ioctl failed:

Итак, гугл сказал что не хватает модулей в ядре.
Значит нужно пересобрать ядро со всеми необходимыми модулями.
Итак, опишу процесс установки TrueCrypt на gentoo и Calculate Linux

среда, 29 февраля 2012 г.

Добавляем флеш в роутер с DD-WRT

Иметь роутер с DD-WRT и ограничиваться минимальными возможностями, как-то не интересно.
Возможности DD-WRT достаточно велики. Роутер можно при желании можно превратить в минисервер.
Иногда это даже очень удобно!

Я опишу, как использовать флешку под dd-wrt на примере ASUS RT N-16.