Автор Тема: Удаленное управление сервером  (Прочитано 26906 раз)

Оффлайн Salomatin

  • Модератор
  • *****
  • Сообщений: 979
    • Пошаговые инструкции
    • Email
Удаленное управление сервером
основные приемы удаленного управления сервером или рабочей станцией:

Ролик по этой теме можно скачать по адресу: http://salomatin.ru/ahttpd.ogv

Управление через веб-интерфейс сервера

Центр управления системой (ЦУС) — веб-ориентированный интерфейс, позволяющий управлять сервером с любого компьютера сети. Всё, что для этого нужно, — это веб-браузер, например, Mozilla Firefox. (не все браузеры подойдут)

Для начала работы заходим по адресу https://ip-адрес:8080/ (обратите внимание на букву "s")

Центр управления системой состоит из нескольких независимых диалогов-модулей. Каждый модуль отвечает за настройку определённой функции или свойства системы. ЦУС удобен для выполнения наиболее востребованных административных задач: добавление и удаление пользователей, настройка сетевых подключений, просмотр информации о состоянии системы, и т.п.

ЦУС имеет приоритет над над настройками в командной строке, т.е настройки раздела или сервиса (не всего сервера), произведенные вами ранее в командной строке, ЦУС может изменить или удалить полностью.

Список загруженных модулей можно узнать набрав в консоли от имени простого пользователя команду:
[vova@server ~]$ rpm -qa | grep alteratorМодули можно дополнительно загружать и удалять как обычные программы. (см. установка программ)

Все модули Центра управления системой содержат встроенную справку, поясняющую назначение конкретного модуля. Справка вызывается кнопкой «Справка».

Для того чтобы получить возможность управлять через ЦУС любой рабочей станцией с графикой, например Simply Linux вам необходимо подгрузить
[root@simply ~]#apt-get install alterator-fbiзапустить сервис
[root@simply ~]# service ahttpd restartи открыть https://ip-адрес-simply:8080

Дополнительные модули можно также устанавливать как обычные программы. Например подгрузив
[root@simply ~]#apt-get install alterator-vsftpdвы получите из обыкновенной рабочей станции FTP сервер.


Безопасный вход суперпользователем (root)

На своем настольном рабочем компьютере (будем называть еще как удаленный клиент), на котором стоит любая система Linux создаем публичный ключ командой
[vova@client ~]$ssh-keygen -tdsaпоявится файл ( в ALT: ) /home/vova/.ssh/id_dsa.pub

Заходим в Центр управления системой (ЦУС) веб-браузером https://ip-адрес:8080/ глава: "Пользователи", раздел "Администратор системы"
Нажимаем на клавишу "Обзор" и показываем путь до нашего файла id_dsa.pub (использовать опцию: Показывать скрытые файлы)

Далее клавиша "Добавить". В разделе "Разрешённые ssh ключи:" появиться группа пар цифр, разделенных двоеточием.
На этом настройки закончены. Закрываем ЦУС.

Тестируем:
На удаленном клиенте, от имени простого пользователя заходим на сервер:
[vova@client ~]$ssh -l root 192.168.0.1
(выражение "-l root 192.168.0.1" можно заменить на root@ip-адрес
получаем приглашение вводить команды от имени суперпользователя:
[vova@client ~]$ssh root@192.168.0.1
Last login: Sun Aug  8 15:22:08 2010 from 192.168.0.2
[root@server ~]#
Это наиболее безопасный и рекомендуемый способ.
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн Salomatin

  • Модератор
  • *****
  • Сообщений: 979
    • Пошаговые инструкции
    • Email
Re: Удаленное управление сервером
« Ответ #1 : 10.12.2010 20:56:19 »
Ролик по этой теме можно скачать по адресу: http://salomatin.ru/ssh_X.ogv


Обычный удаленный вход по ssh

На своем настольном рабочем компьютере (удаленный клиент), заходим на сервер под именем пользователя pavel (pavel должен быть уже зарегистрирован на сервере)
[vova@client ~]$ssh -l pavel 192.168.0.1(выражение "-l pavel 192.168.0.1" можно заменить на pavel@ip-адрес
если зашли первый раз, то получаем сообщение с окончание
Are you sure you want to continue connecting (yes/no)?
вводим "yes", получаем приглашение ввести пароль, вводим пароль, который имеет Павел на сервере и получаем приглашение работать в командой строке на сервере
[pavel@server ~]$если имена пользователя на клиенте и сервере совпадают (vova зарегистрирован там и там), входить можно еще короче
[vova@client ~]$ssh 192.168.0.1
Если пользователь пользователь vova ключен в группу wheel, то может получить права суперпользователя набрав
[vova@server ~]$su -lможно просто su пробел знак "-" тире, чтобы получить полные права root

Это очень ВАЖНО и обережет вас от многих проблем.
получаем приглашение ввести пароль рута


Вход по ключу
На своей рабочей станции, с любой системой ALT, от имени простого пользователя под именем "vova" открываем виртуальную консоль и вставляем команду

(мы помним, что на сервере мы создали также пользователя "vova". В этом примере специально работаю с одним и тем же именем, для упрощения команд. В противном случае вам надо пред каждым IP адресом 192.168.0.1 добавлять имя другого пользователя pavel@ip-адрес и далее по тексту)
[vova@host-15]$ssh-keygen -tdsaвыводит текст и останавливается, жмем ввод, всего три раза

Копируем ключ с клиента на сервер: для чего даем команду одной строкой
[vova@host-15]$scp ~/.ssh/id_dsa.pub 192.168.0.1:/home/vovaспросит пароль (тот который дали vova на сервере)

Переходим на сервер
[vova@host-15]$ ssh 192.168.0.1спросит пароль (тот который дали vova на сервере)

и выводит приглашение работать от имени vova на сервере
[vova@server ~]$и командой записать ключ
[vova@server ~]$ cat id_dsa.pub>>~/.ssh/authorized_keys
Выйти с сервера командой
[vova@server ~]$exit


Вот и все. Можем тестировать.

Теперь, если мы будем по ssh заходить на сервер от имени этого пользователя, именно с этой рабочей станции, то он нас не будет спрашивать пароль, а сразу впустит.

Пример: Вводим

[vova@host ~]$ ssh 192.168.0.1Сразу выводит приглашение работать от имени vova уже на сервере:
[vova@server ~]$пароль не спросит, это нормально и безопасно.


Удаленный доступ к графическому приложению по ssh

Если на сервере запущено графическое приложение, например KDE или gnome, то вы можете увидеть картинку нужного вам приложения у себя на удаленном клиенте. Для необходимо зайти на сервер с опцией -X
[vova@client ~]$ssh -X 192.168.0.1и получив приглашение запускаем командой это самое приложение, например:
[vova@server ~]$synapticНа вашем мониторе появиться картинка, с которой можно работать как с обычным приложением на самом сервере.

Примечание: Убедитесь, что на сервере в файле /etc/openssh/sshd_config разрешена опция X11Forwarding (обычно 87 строка). Уберите комментарий вначале строки или замените "no" на "yes"
X11Forwarding yesи перезапустите сервис sshd
[root@server ~]#service sshd restartЕсли на сервере нет графики вообще, хотя вы работаете в командной строке с приложением имеющим графику, например тот же synaptic, есть возможность обойтись виртуальным дисплеем.

Вы даете команду synaptic получаете сообщение об ошибке. Ставите
[root@server ~]#apt-get install xvfb-runперелогиниваетесь с опцией -X и все как с обычной графической системой.

Если по дороге стоит сервер с NAT. С соседней машиной вы получаете картинку, а удаленно нет, то необходимо подгрузить на этот сервер
[root@server ~]#apt-get install xauth
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн Salomatin

  • Модератор
  • *****
  • Сообщений: 979
    • Пошаговые инструкции
    • Email
Re: Удаленное управление сервером
« Ответ #2 : 10.12.2010 21:30:18 »
Ролик по этой теме можно скачать по адресу: http://salomatin.ru/vnc.ogv

Предоставление обратного входа по ssh

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

Простейший туннель:

Вы просите пользователя найти консоль и дать всего одну команду.
[pavel@dom ~]$ssh -R 55555:127.0.0.1:22 vova@наш_белый_IPдаем ему свой белый IP и пароль пользователя vova

в строке появится приглашение ввести пароль. Вам придется попросить домашнего пользователя ввести пароль.

Туннель установлен и все остальное вы можете сделать сами, если знаете пароли конечно.

Дальше все как обычно, только первая команда с сервера будет
[vova@server ~]$ ssh pavel@localhost -p 55555так как локальный сокет 127.0.0.1:22 «серой» машины проброшен на порт 55555 удалённой машины. Т.е. чтобы теперь зайти по ssh из вне на «серую» машину, достаточно выполнить на удалённой машине эту команду.

 
Проброс портов с помощью ssh (ssh tunneling)

Проброс порта с удалённой машины на нашу машину

Предположим, что имеется сервер где-то в сети Internet, к которому мы имеем доступ только по порту 22 (ssh). На этом сервере крутится apache, который слушает на 127.0.0.1:8080, где находится alterator (веб-интерфейс).

Теперь на своей рабочей станции выполняем:
[vova@client ~]$ssh -L 9090:127.0.0.1:8080 pavel@IP_удаленной_машиныПосле успешного входа в систему вы получите терминал удаленного сервера и alterator, доступный на 127.0.0.1:9090, т.е. http://localhost:9090/

Таким образом, можно пробросить к себе любой порт с удаленного сервера, например, 80, для получения удаленного доступа к web сайту управления системой, порт SQL-сервера и т.д.

Удаленный рабочий стол или использование VNC -сервера

Если на сервере запущено графическое приложение, например KDE или gnome, то вы можете получить удаленный доступ к рабочему столу сервера.

Устанавливаем на сервер пакет x11vnc
[root@server ~]#apt-get install x11vnc запускаете VNC-сервер
[vova@server ~]$x11vnc -shared -viewonly -forever -passwd 123
На клиенте устанавливаете VNC-клиент. В Simply Linux это gvncviewer. Находится в пакете gtk-vnc.
[root@client ~]#apt-get install gtk-vncвыходите из рута и подключаетесь от имени простого пользователя
[vova@client ~]$gvncviewer 192.168.0.1:0у вас должно появиться приглашение ввести пароль, вводите 123 и видите картинку рабочего стола сервера.

Останавливать на сервере VNC можно просто нажав Ctr + c

Аргумет -viewonly запрещает перехват. Поэтому если дать команду без него
[vova@server ~]$x11vnc -shared -forever -passwd 123вы получаете полное управление сервером при помощи вашей клавиатуры и мыши.
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн extrahard

  • Завсегдатай
  • *
  • Сообщений: 65
Re: Удаленное управление сервером
« Ответ #3 : 25.12.2010 19:37:06 »
Цитировать
Удаленный доступ к графическому приложению по ssh

Если на сервере запущено графическое приложение, например KDE или gnome, то вы можете увидеть картинку нужного вам приложения у себя на удаленном клиенте. Для необходимо зайти на сервер с опцией -X

Нужно чтобы графика на сервере была именно загружена или просто установлена?  Опция  -X будет работать если загрузить сервер в 3й уровень запуска?

Оффлайн Карлсон

  • Завсегдатай
  • *
  • Сообщений: 1 699
Re: Удаленное управление сервером
« Ответ #4 : 25.12.2010 19:47:41 »
Нужно чтобы графика на сервере была именно загружена или просто установлена? 

Х-сервер должен быть запущен на той машине, на которой "рисуется" окно приложения. Т.е. на сервере достаточно только библиотек, даже Х-сервер установленный не нужен.

Оффлайн Salomatin

  • Модератор
  • *****
  • Сообщений: 979
    • Пошаговые инструкции
    • Email
Re: Удаленное управление сервером
« Ответ #5 : 26.12.2010 10:01:31 »
Нужно чтобы графика на сервере была именно загружена или просто установлена?  Опция  -X будет работать если загрузить сервер в 3й уровень запуска?

Не обязательно должна быть "именно загружена или просто установлена" . Ни то и ни другое.
Этого вообще может не быть в принципе.

Фишка в том, что если вы поставите, допустим, Альт Линукс 5.0.2 Школьный Сервер, который сам по себе не имеет графики и попытаетесь  запустить на нем любое графическое приложение, то он выругается.

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

[root@server ~]#apt-get install xvfb-run
Сервер будет думать, что у него загружена и запущена графика. Откроет свое приложение на вашей рабочей станции.

Это очень удобно, например для  VirtualBox, который управляется графически приложением. Не надо осваивать командную строку  VirtualBox'а, а получать все блага графического менеджера.

То же самое и по Synaptic'у. Хорошее графическое приложение по установке пакетов. Удобное.

Установив пакет xvfb-run, можно пользоваться.

Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 402
    • Домашняя страница
    • Email
Re: Удаленное управление сервером
« Ответ #6 : 29.12.2010 17:04:56 »
Если вы зайдете на него со своей рабочей станции через опцию -X, он вначале тоже выругается.
Но в таком случае его можно обмануть и подсунуть виртуальный дисплей.
Не советуйте ерунды.
Читайте man и используйте ssh -Y <host>
Андрей Черепанов (cas@)

Оффлайн Salomatin

  • Модератор
  • *****
  • Сообщений: 979
    • Пошаговые инструкции
    • Email
Re: Удаленное управление сервером
« Ответ #7 : 29.12.2010 19:24:48 »
Не советуйте ерунды.
Читайте man и используйте
ssh -Y <host>

Как раз и стараюсь читать маны. Мне показалось, что использовать -Y  советуют не всегда обдумано.

-Y     Включает доверенное перенаправление соединений X11.
Перенаправленные таким  образом  соединения  не  подвергаются контролю со стороны расширения SECURITY (безопасность) протокола X11.

Если понимать буквально, то -Y является более небезопасной реализацией.

Так понимаю, что пакет ssh использует расширения X11 SECURITY.  Если X-сервер поддерживает эти расширения, то он классифицирует свои возможности как безопасные и небезопасные, а клиентов -- как доверенных и недоверенных. Соответственно, недоверенным клиентам запрещено использовать небезопасные возможности сервера.

Чтобы уменьшить риск, возникающий при X11 forwarding, ssh -X теперь по умолчанию "намекает" X-серверу, что клиенты, приходящие поверх SSH, небезопасны. Если вы уверены в удаленном хосте, то можете явно запросить высокую степень доверия к X-клиентам с помощью опции ssh -Y вместо -X. Тогда на серверной части можно перехватить данные от пользователя (нажатые клавиши, например).

А вообще в этой теме говорим совсем о другом. Без пакета xvfb-run, выругается и при опции -Y
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн maestro

  • Завсегдатай
  • *
  • Сообщений: 270
    • Email
Re: Удаленное управление сервером
« Ответ #8 : 08.05.2012 05:28:07 »
Все ли приложения можно запустить таким образом? У меня не получилось запустить Dolphin. Как вычислять имена приложений? Через "Запущенные процессы"?

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 402
    • Домашняя страница
    • Email
Re: Удаленное управление сервером
« Ответ #9 : 08.05.2012 10:38:46 »
Все ли приложения можно запустить таким образом? У меня не получилось запустить Dolphin. Как вычислять имена приложений? Через "Запущенные процессы"?
Через двойное нажатие Tab в консоли.
Андрей Черепанов (cas@)

Оффлайн maestro

  • Завсегдатай
  • *
  • Сообщений: 270
    • Email
Re: Удаленное управление сервером
« Ответ #10 : 15.05.2012 06:54:17 »
Кстати, не всё так гладко. Приложения могут не запускаться, если разные версии дистрибутивов. Например, dolphin у меня отказался запускаться, когда коннектился с 5 платформы школьного альта на 6 KDesktop. Или наоборот.

Оффлайн jollyk

  • Начинающий
  • *
  • Сообщений: 3
    • Email
Re: Удаленное управление сервером
« Ответ #11 : 07.06.2012 20:43:04 »
Подскажие в 4-ой версии сервера в вэбадминку также входил раздел по настройке самбы в 6-й версии его нету, было удобно настраивать через него.  Можно как то это вернуть? Гугл выдаёт в основном webmin может кто подскажет что дельное и работающее.

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 402
    • Домашняя страница
    • Email
Re: Удаленное управление сервером
« Ответ #12 : 07.06.2012 23:59:46 »
Подскажие в 4-ой версии сервера в вэбадминку также входил раздел по настройке самбы в 6-й версии его нету, было удобно настраивать через него.  Можно как то это вернуть? Гугл выдаёт в основном webmin может кто подскажет что дельное и работающее.
Если у кого есть желание, пусть возрождает модуль Alterator. Пока желающих пилить Samba нет, используют Samba в виде домена (alterator-domain).
Андрей Черепанов (cas@)

Оффлайн jollyk

  • Начинающий
  • *
  • Сообщений: 3
    • Email
Re: Удаленное управление сервером
« Ответ #13 : 08.06.2012 11:43:45 »
Да я погуглил ещё и нашел что есть SWAT, тем более он у вас есть в репозиториях  установил всё запустилось. По идее и не нужет тот раздел при его наличии.

Оффлайн jollyk

  • Начинающий
  • *
  • Сообщений: 3
    • Email
Re: Удаленное управление сервером
« Ответ #14 : 09.06.2012 19:29:42 »
Подскажите возникла проблема, не знаю как решить, при запуске
service ahttpd startВыдаётся следующая ошибка
Generating ahttpd SSL certificate request: unable to load Private Key
3079165608:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:696:Expecting: ANY PRIVATE KEY
Интересно то что на другой машине альтератор заработал без проблем . Я понимаю что нужно установить/найти сертификат, подскажите куда рыть.