вторник, мая 4

авторизация в SSH без пароля (по ключу)

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

В качестве метода авторизации по SSH можно использовать пару RSA ключей (публичный и секретный). Сначала пара ключей создается на компьютере, который будет использоваться для входа по SSH, затем публичная часть ключа копируется на сервера, к которым нужен доступ. Ключ может быть без пароля, но это не очень безопасно, зато удобно. Можно же зашифровать секретный ключ паролем, при соединении к серверам будет запрошен пароль, и вы сможете использовать один пароль для доступа ко всем серверам.
Генерация SSH ключей

В первую очередь, нужно создать пару ключей, если их ещё нет. По умолчанию ключи хранятся в домашней директории пользователя, /home/имя пользователя/.ssh/id_rsa и id_rsa.pub. Итак:

ssh-keygen
Enter file in which to save the key (/home/igosha/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):<Пароль(или ничего), Enter>
Enter same passphrase again: <Тот же пароль, Enter>
Your identification has been saved in /home/igosha/.ssh/id_rsa.
Your public key has been saved in /home/igosha/.ssh/id_rsa.pub.
The key fingerprint is:
92:12:4c:сс:c8:36:ec:f6:60:50:c4:82:2a:01:39:20 igosha@igosha

Пара ключей готова.
Установка SSH ключей на сервера

Теперь, когда у нас есть ключ:
- нужно создать на серверах, к которым мы собираемся подключаться с использованием этого ключа, папку /home/имя пользователя/.ssh. И, конечно, на сервере должен существовать пользователь с тем же именем, что и на локальной машине, где мы делали ключ.
- копируем файл /home/имя пользователя/.ssh/id_rsa.pub на сервер, в файл /home/имя пользователя/.ssh/authorized_keys2:
scp ~/.ssh/id_rsa.pub hostname_of_server:.ssh/authorized_keys2

Важно: если файл authorized_keys2 уже существует, то его нужно просто дописать:
cat ~/.ssh/id_rsa.pub | ssh hostname_of_server "cat >> .ssh/authorized_keys2"

Это позволит использовать несколько ключей для авторизации под одним пользователем, например, если вы хотите авторизоваться с разных машин с разными же ключами.
Проверка авторизации по SSH ключу

Пробуем зайти по SSH на сервер. Если для ключа был задан пароль, он будет запрошен, иначе вы сразу же подключитесь к удаленному серверу.


Источник статьи: http://www.igosha.com/archives/41


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

воскресенье, мая 2

непонятка с logout в SpringFramework

Долго пытался понять, почему у меня не происходит c разлогиниванием - и так конфиги крутил и эдак... и форумы облазил... и куки сбрасывал в браузере и сервер приложений ребутал - а всё равно...
В итоге, простое закрытие браузера (точнее, его "падение") решило "проблему" избавив меня от оной напрочь - заработало ВСЁ, вплоть до редиректор при разлогинивании...

что это было?

версии:
Tomcat: 6.0.20
SpringFramework: 2.5.6
Spring-Security: 2.0.5
Firefox: 3.5.9
OS: Fedora 12


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

суббота, апреля 17

Skype и "плюшка" - редактирование последнего сообщения

Сегодня рассказ пойдёт про "плюшку" в скайпе под названием "редактирование последнего сообщения"

Часто бывает так, что писал-писал что-то, отправил и видишь, что опечатался. И так и "подмывает" исправить ошибку...
обычно для этого пишут новое коротенькое сообщение по образцу "* текст_поправки". А в скайпе можно просто исправить ошибку ;)

Как это делается?


допустим мы написали фразу "ну могет быть" и решили её исправить на "ну может быть"

нажимаем стрелку вверх и видим, что в редакторе сообщения появилось наше последнее сообщения, а фон редактора стал желтым:

правим наше сообщение и отправляем его снова. В результате в логе разговора сообщение исправится и пометиться "карандашиком", что означает "исправленное":


Что нельзя сделать:
1) удалить сообщение (но можно написать точку и тогда в сообщении останется только точка ;) )
2) редактировать предпоследнее и более ранние сообщения

Что делать можно:
1) Редактировать своё последнее сообщение, даже если вам уже ответили :)
2) Прервать редактирование без внесения правок - достаточно нажать ESC в процессе редактирования (в Linux это работает точно. По слухам, в Windows вместо прерывания редактирования происходит закрытие чата)

ЗЫ: все скриншоты доступны в альбоме "Blogspot:003"



Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

четверг, апреля 15

логические ошибки

"Слепо" доверять интеллектуальным подсказчикам IDE - зло!

простой пример появления логической ошибки:


пишем код:
if (cookies.length != 0) {
    for (int i = 0; i < cookies.length; i++) {
     isAuth = isAuth || cookies[i].getName().equalsIgnoreCase(paramCooikeAuth);
     break;
    }
   }
логическая ошибка - наличие break без условия прерывания. IDE (в данном случае, Eclipse) предлагает удалить "i++", как не требующуюся в цикле (всё равно не будет использована). "Слепо" соглашаемся Чуть позже замечаем ошибку про break и добавляем условие:
if (cookies.length != 0) {
    for (int i = 0; i < cookies.length;) {
     isAuth = isAuth || cookies[i].getName().equalsIgnoreCase(paramCooikeAuth);
     if (isAuth) break;
    }
   }
Но следом получаем вечный цикл for, так как отсутствует счетчик, удалённый ранее! Следствие: прежде чем согласиться на то, что предлагает IDE - подумайте, ПОЧЕМУ он это предлагает, ведь может так оказаться, что ошибка-то совсем не в том месте, где её "видит" IDE! UPD: в конечном итоге код всё равно сократился до (см. ниже), но как говориться, "осадок остался" :)
if (cookies.length != 0) {
    for (int i = 0; i < cookies.length; i++) {
     if (isAuth = cookies[i].getName().equalsIgnoreCase(paramCooikeAuth)) break;
    }
   }

Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

понедельник, апреля 12

Cisco VPN Client в windows 7. решение

Попытка с "наскоку" поставить клиента увенчалась ошибкой и нежеланием оного клиента ставиться...
Краткий сёрф в гугле привёл меня к сией статье, часть которой и приведу сюда в переводе:

Для установки Cisco VPN Client требуется произвести следующий ряд манипуляций:
  • Удалить (если у вас таки установился) Cisco VPN Client
  • Перезагрузиться
  • Установить Citrix DNE Update
  • Перезагрузиться
  • Установить Cisco VPN Client
  • Перезагрузиться

Данное решение рабочее, ибо проверено на себе :)


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

воскресенье, апреля 11

Gnome. неправильная ассоциация для каталогов. решение

Так получилось, что решил сделать "как в Windows" - отправить каталог с видео через Nautilus в проигрыватель.
Отправить-то отправил, а вот после этого ВСЕ каталоги стали открываться в этом самом медиа-проигрывателе.

решение простое "до ужаса": в файле ~/.local/share/applications/mimeapps.list удалить строку, начинающуюся с inode/directory

описание файла можно найти на сайте "производителя": http://www.freedesktop.org/wiki/Specifications/mime-actions-spec


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

thunderbird 3 "ошибка при получении пароля". решение

При очередном запуске Thunderbird 3 в момент получения почты появляется сообщение "Ошибка при получении пароля"
Удаление в профиле файлов key3.db, signons.sqlite, signons.txt и signons3.txt не приводили к нужному результату - сбросу паролей.
В итоге, решение нашлось на Bugzilla.mozilla.org в виде переустановки Thunderbird.

Последовательность действий, которую делал я:
1) удалил Thunderbird 3
2) удалил вышеназванные файлы
3) установил заново Thunderbird 3

В итоге, после запуска программы, получаем "девственно чистый" менеджер паролей

ЗЫ: трабла была в Linux, но решение озвучивалось под Windows ;)


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

среда, марта 17

Pidgin и смайлы из QIP

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

ЗЫ: пашет одинаково хорошо как под Linux, так и под Windows. хотя, другого и не ожидалось :)


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

четверг, марта 4

Не запускается Lotus Designer 8.5 (Eclipse)

Выдаёт ошибку "platform command processor has encountered a problem".

Удалите файл com.ibm.designer.domino.personality.config.xml в каталоге "%NOTES_DATA%\workspace\.metadata\.plugins\com.ibm.rcp.personality.framework\personalityWindowState"

источник + проверено на себе :)

Мелочи про Eclipse

Разные приятные мелочи и полезности при работе с Eclipse

1) Проблема "Иконка в Linux не всегда показывается у приложения. Среда Gnome"
Просто скопировать файл ECLIPSE_HOME/icon.xpm в /usr/share/icons/eclipse.xpm

2) Изменение имени автора (@author) по-умолчанию.
При добавлении в JavaDoc описание ключа @author, автоматически подставляется имя текущего пользователя.
Добавьте в eclipse.ini после строки "-vmargs" строку "-Duser.name="Ваше_имя_автора"