Есть класс с suse на машинах, создан один пользователь (кроме рут). Надо настроить удаленное администрирование этого класса. Чтобы устанавливать пакеты сразу на все машины, а не бегать по кабинету ну и всякие удобности в этом духе.
Какие технологии есть для этих задач? Не когда прежде с такими задачами не сталкивался)) Буду очень признателен за помощь! :)
Удалённое администрирование
ну если влоб, то ssh + скрипт типа:
for I in $(seq 1 32); do
ssh "192.168.0.$I" <command>
done
Не могли бы пояснить, что делает этот скрипт?
подключается к компьютерам 192.168.0.1-32 по ssh и выполняет команду <command>. Так следует делать только когда вы разберётесь со всем... для начала поднимите ssh на одном компьютере, попробуйте поработать... потом с несколькими машинами... настройте авторизацию по ключу... а только потом используйте подобные штуки в продакшине. =)
Возникли несколько вопросов.
ssh - это удалённое подключение только по локальной сети? Я просто не понял как там через web подключаться?
Подскажите статьи по ssh, типа "how to" для чайников :)
carlos0n, по ssh можно подключиться к любому компьютеру, на котором запущен и настроен соответствующий сервис и к которому есть доступ. То есть, если целевой компьютер находится за роутером, на роутере должен быть «проброшен» соответствующий порт.
Я с генерировал ключи rsa. Только вот как их передать с машины на машину я не пойму. Программами типа ssh_import_id у меня не получилось.
Хотел вручную попробовать, но не нашел в какой файл надо их вставить... Пишут должен быть файл authorized_keys, а его у меня нет.
Подскажите плз как поступить))
если дошли до ключей, то на опеннете есть доходчивая статья: http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html
теперь подробней:
Только вот как их передать с машины на машину я не пойму.
обычный(по паролю) доступ по ssh же есть? тогда через scp: scp ~/.ssh/id_rsa.pub user@<ip>:/путь/куда/скопировать/
Программами типа ssh_import_id у меня не получилось.
таким не пользовлся... всегда можно ручками: cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
Пишут должен быть файл authorized_keys, а его у меня нет.
создать...
Я просто не понял как там через web подключаться?
Если Вам удобнее админить через Web, то именно для openSUSE, SLE* есть хорошая панель WebYAST, подробнее есть в моей статье: http://habrahabr.ru/sandbox/35299/
Если будут вопросы - обращайтесь.
2carlos0n
Вспомнилась мне такая тема на Redhat как Sattelite.
Вообщем я бы вам посоветовал разобраться с SUSEManager
"...В остальном возможности SUSE Manager и Red Hat Network Satellite почти совпадают: оба продукта позволяют организовать инвентаризацию оборудования и программного обеспечения; автоматизировать установку и обновление ПО на группе машин; централизовано управлять файлами конфигурации; осуществлять мониторинг; управлять работой виртуальных машин и cloud-окружений; автоматизировать установку типовых конфигураций системы; организовать сетевую загрузку и обновление группы машин..."
http://www.opennet.ru/opennews/art.shtml?num=29784
Вообщем то он платный но скачать 60 дневную версию можно по ссылке:
http://download.novell.com/index.jsp?product_id=&search=Search&families=22609
только необходимо зарегистрироваться.
P.S SSH дело тоже хорошее, но посмотрел я на Sattelite нууу очень удобно)
думаю c SUSEManager как минимум интересно разобраться;)
Chiron, tmp13, спасибо, посмотрю.
Я уже разобрался с ssh более менее, всё работает. Правда пока не пробовал через интернет подключаться. Интернет в класс идет через сервер с внешним ip, надо щас будет разобраться как через него их админить из дома.
Кстати, я хотел создать в сети репозиторий с нужными мне пакетами. Создал ftp, закинул их туда, на ftp через браузер к примеру зайти могу, но когда пытаюсь добавить его в список репозиториев, выдается сообщение об ошибке... Что не так я делаю? Добавляю как ftp://"ip машины"
И ещё, мне надо на все машины поставить netbeans версии 7 (в репозиториях suse версия 6), я скачал его с сайта, но там он с расширением .sh
Как такой файл ставить в suse?
Sorry, если я очень глупые вопросы задаю))
chmod 755 lalal.sh
./lalal.sh
По поводу SUSEManager это я чет не изучив темы сказал)
вообщем там грустно всё)
Supported Client Systems
SUSE Linux Enterprise 11 SP1
Red Hat Enterprise Linux 4
Red Hat Enterprise Linux 5
SUSE Manager
13500$ за управляющий сервер + 2500$ за каждый прокси-сервер + 96$ за каждый обслуживаемый хост) и требует для своей работы наличия СУБД Oracle.
ssh + yast2/zypper куда проще и дешевле будет))
carlos0n, создание собственного репозитария несколько сложнее, чем просто набросать пакеты на ftp... ЕМНИП копать в сторону createrepo, но лучше ещё погуглите/подождите, пока местные ещё чего-то посоветуют
Я к примеру добавлял в список репозиториев флешку и без проблем всё. Чем ftp хуже?))
Если, Вы добавляете репозиторий через ftp, тогда подразумевается наличие файла .repo с указанием типа службы, имени, URI-адреса и т. д. , а также каталога repodata - содержащий информацию о пакетах.
При добавлении источника локально, yast видит просто каталог c rpm.
Посмотрите на официальном сайте (Wiki), там должно быть краткое руководство по созданию источников загрузки.
i2ks нууу даааа.... но Sattelite мне ну очень понравилась(((
Ребят, подскажите, что опять не так...
Создал файлик file:///etc/ssh/authorized_keys, добавил туда публичные ключи (пробовал только rsa, потом и все публичные, что есть сразу), но при подключении к машине всё равно запрашивается пароль.
В конфиге стоит аутентификация по ключу и всё остальное.
А при выполнении такого скрипта:
#!/bin/bash
for I in $(seq 19 19); do
ssh -p 22 "root@192.168.0.$I"
doneвыдаётся ssh: connect to host 192.168.0.19 port 22: Connection timed out
или ssh: connect to host 192.168.0.19 port 22: No route to host
хотя если просто набрать ssh -p 22 "root@192.168.0.19, то подключение будет, но с паролем.
ссылка на authorized_keys http://zalil.ru/31840786
-p 22
между р и 22 пробел убери. И зачем ты указываешь порт? когда он по умолчанию 22, тогда вообще увебри -р22, если используешь стандартный порт ssh.
Создал файлик file:///etc/ssh/authorized_keys, добавил туда публичные ключи (пробовал только rsa, потом и все публичные, что есть сразу),
ключи делать надо с помощью ssh-keygen.
0) надо оговориться, что удалённый доступ root'а - дело не истинно верное и безопасное...
1) разрешён ли доступ root'а в /etc/ssh/sshd_config?
Создал файлик file:///etc/ssh/authorized_keys
2) почему сюда, а не в /root/.ssh/authorized_keys ?