Возможности:
- Автологин SSH и Telnet сессий
- Весьма не сложный в настройке конфиг
- Многоуровневое меню (поддерживаются суб-меню любой глубины)
- К любому суб-меню можно "приклеить ярлык" и обращаться на прямую к этому меню из командной строки
- Одна железяка может иметь несколько ip адресов.
- Описания или заметки к каждой железке отображаются в меню
- Open Source
- Запуск своих команд для нескольких IP адресов (к примеру можно выполнить
apt-get update && apt-get upgrade && reboot на наскольких машинах)
Зависимости:
libjson-xs-perl, libexpect-perl
Пример установки для Ubuntu/Debian
Код: Выделить всё
sudo aptitude install git libjson-xs-perl libexpect-perl
cd ~/.local/share/
git clone git://github.com/emergy/Connection-Manager.git
sudo ln -s ~/.local/share/Connection-Manager/connection-manager.pl /usr/local/bin/cm
И правим конфиг:
cp ~/.local/share/Connection-Manager/config.json.example ~/.local/share/Connection-Manager/config.json
vi ~/.local/share/Connection-Manager/config.jsonНемного предыстории:
Мне по долгу службы, приходиться часто лазить на удалённые железяки и серверы по ssh.
Так как их приличное количество и запомнить все IP и хостнеймы просто не возможно, было
решено написать простейшую менюшку на shell (скрипт авторизации написал ещё давно).
Но копаться каждый раз в теле скрипта, для того чтобы добавить новую железяку надоело.
Начали появляться железяки с уникальным логином/паролем (которые тоже надо помнить).
В общем было решено написать нормальную менюшку на Perl. Где можно указать логин/пароль
на конкретную железяку, делать суб-меню любой сложности. В общем чтобы было удобно.
Под винду полно подобного софта - под линукс ничего подобного не видел.
Конфиг:
Конфиг в формате JSON. С первого взгляда может не понятен, но на самом деле довольно прост.
Подробности можно узнать тут: http://ru.wikipedia.org/wiki/JSON
name - имя пункта меню
menu - при наличии этой опции означает, что это суб-меню
arg - передавая аргумент указанный здесь из командной строки, можно сразу перейти на это суб-меню
ip - ip-адрес. Если этот пункт отсутствует, то пытается подключиться по name. При наличии нескольких ip адресов, появляется меню с выбором
login - логин от железяки. Может использоваться без password для SSH сессий
password - пароль от железяки. Полезно для коммутаторов, маршрутизаторов
description - описание, заметка или что-то вроде того
type - если указан telnet, то подключаться будет по телнету
exec - выполняет указанную команду (type должен быть exec)
Все подробности в примере конфига...
Последняя версия всегда тут:
https://github.com/emergy/Connection-Manager
