faq обучение настройка
Текущее время: Сб июл 19, 2025 21:44

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: ssh доступ к свичам
СообщениеДобавлено: Ср июл 30, 2008 13:56 
Не в сети

Зарегистрирован: Пт июн 02, 2006 13:33
Сообщений: 93
Откуда: Москва
Очень хочется организовать ssh доступ к 3200 и 3028 через php-скрипты.

Для начала попробовал сделать беспарольный доступ.
Поиск по форуму дал
viewtopic.php?t=42493
viewtopic.php?t=50088

Но помогло это не сильно.
Как я вижу, авторизация проходит успешно, но приглашение на ввод логина все равно возникает.

Вопрос такой. Я делаю что-то не так, или нужно пользоваться другими методами?


ssh -l ssh 192.168.196.153 -i ./.ssh/id_rsa -v
OpenSSH_3.8p1, SSH protocols 1.5/2.0, OpenSSL 0.9.7d 17 Mar 2004
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to 192.168.196.153 [192.168.196.153] port 22.
debug1: Connection established.
debug1: identity file ./.ssh/id_rsa type 1
debug1: Remote protocol version 2.0, remote software version DLINK Corp. SSH server ver 1.00.000
debug1: no match: DLINK Corp. SSH server ver 1.00.000
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_3.8p1
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc hmac-md5 none
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
debug1: Host '192.168.196.153' is known and matches the RSA host key.
debug1: Found key in /home/ssh/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering public key: ./.ssh/id_rsa
debug1: Server accepts key: pkalg ssh-rsa blen 149
debug1: read PEM private key done: type RSA
debug1: Authentication succeeded (publickey).
debug1: channel 0: new [client-session]
debug1: Entering interactive session.

DGS-3200-10 Gigabit Ethernet Switch
Command Line Interface

Firmware: Build 1.00.B015
Copyright(C) 2007 D-Link Corporation. All rights reserved.
UserName:


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 14:43 
Не в сети

Зарегистрирован: Пн сен 27, 2004 18:18
Сообщений: 1642
Откуда: Vault 13
чем не устраивает обычный telnet? паранойя (проф. болезнь всех админов) спать не дает?

_________________
с уважением, БП


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 14:52 
Не в сети

Зарегистрирован: Пт авг 24, 2007 07:29
Сообщений: 73
Откуда: ЮФО
snark писал(а):
чем не устраивает обычный telnet? паранойя (проф. болезнь всех админов) спать не дает?

Как говориться в народе: "лучше перебдеть чем недобдеть" :D
К тому же когда в конторе любители повынюхивать зводятся...
А на DES-3828 доступ по SSH можно сделать? Если можно - то как?

_________________
DIR-620


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 15:02 
Не в сети

Зарегистрирован: Пн сен 27, 2004 18:18
Сообщений: 1642
Откуда: Vault 13
DarkPagan писал(а):
К тому же когда в конторе любители повынюхивать зводятся...

чего вынюхивать то? конфиг свича???

DarkPagan писал(а):
А на DES-3828 доступ по SSH можно сделать? Если можно - то как?
Код:
enable ssh
?

_________________
с уважением, БП


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 15:10 
Не в сети

Зарегистрирован: Пт июн 02, 2006 13:33
Сообщений: 93
Откуда: Москва
Через свич в интернет выходит куча пользователей. Степень их ушлости мне совершенно неизвестна.
Плюс на свиче будут стоять ограничения на полосу и прочие привязки к маку.

Очень хочется максимально оградить свич для доступа снаружи и при этом обеспечить возможность через php-скрипты менять настройки.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 15:14 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Пт май 13, 2005 15:49
Сообщений: 20616
Откуда: D-Link, Moscow
А у вас управление выделено в отдельный VLAN?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 15:15 
Не в сети

Зарегистрирован: Пт июн 02, 2006 13:33
Сообщений: 93
Откуда: Москва
Demin Ivan писал(а):
А у вас управление выделено в отдельный VLAN?


Нет, но это будет сделано несколько позже. Это принципиально?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 15:27 
Не в сети

Зарегистрирован: Пн сен 27, 2004 18:18
Сообщений: 1642
Откуда: Vault 13
выделение управления в отдельный VLAN (обязтельно!) + Trusted Hosts (опционально) позволят Вам забыть про SSH ;)

_________________
с уважением, БП


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 15:30 
Не в сети

Зарегистрирован: Пт июн 02, 2006 13:33
Сообщений: 93
Откуда: Москва
выделим, это не проблема.
И хосты поставим нужные.

Но, как мне проще всего через php-скрипт cказать свичу, что, скажем, надо положить пятый порт?
И показать все маки на 17?

Через CLI - это все понятно. Но хочется именно свои скрипты написать.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 16:03 
Не в сети

Зарегистрирован: Пн сен 27, 2004 18:18
Сообщений: 1642
Откуда: Vault 13
__IF__ писал(а):
как мне проще всего через php-скрипт cказать свичу, что, скажем, надо положить пятый порт?

берем класс и рисуем что-то в духе:
Код:
<?php
require_once "PHPTelnet.php";

$telnet = new PHPTelnet();
$result = $telnet->Connect('your.switch.ip.addr', 'login', 'password');

if ($result == 0) {
    $telnet->DoCommand('config ports 5 state disable', $result);
    $telnet->Disconnect();
}
?>

_________________
с уважением, БП


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 16:45 
Не в сети

Зарегистрирован: Пт июн 02, 2006 13:33
Сообщений: 93
Откуда: Москва
Спасибо, работает.
Правда, как-то очень медленно, но это с этим разберемся.

Но как-то не изящно :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср июл 30, 2008 16:55 
Не в сети

Зарегистрирован: Пн сен 27, 2004 18:18
Сообщений: 1642
Откуда: Vault 13
а в чем изящность заключается?

_________________
с уважением, БП


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 31, 2008 09:15 
Не в сети

Зарегистрирован: Вт авг 08, 2006 18:42
Сообщений: 195
Откуда: Moscow
2 snark:

Если всё таки юзать PHP+Telnet, то каким образом можно с помощью Telnet не вносить, а выковыривать данные?
Я понимаю, что для этого есть SNMP, но хочется чтоб всё в одном...


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 31, 2008 10:45 
Не в сети

Зарегистрирован: Пт май 05, 2006 16:52
Сообщений: 4181
Откуда: default
__IF__ писал(а):
Спасибо, работает.
Правда, как-то очень медленно, но это с этим разберемся.

Perl работает с NET::Telnet быстрее, раз этак в 10


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт июл 31, 2008 10:47 
Не в сети

Зарегистрирован: Пн сен 27, 2004 18:18
Сообщений: 1642
Откуда: Vault 13
BuHast писал(а):
Если всё таки юзать PHP+Telnet, то каким образом можно с помощью Telnet не вносить, а выковыривать данные?
Я понимаю, что для этого есть SNMP, но хочется чтоб всё в одном...

а в чем собственно проблема? создаете страничку, в ней пишите только:
Код:
<?php
require_once('./PHPTelnet.php');

$telnet = new PHPTelnet();
$result = $telnet->Connect('your.switch.ip.addr', 'login', 'password');

if ($result == 0) {
    // выполняете команду и получаете ответ
    $telnet->DoCommand('show switch', $result);

    echo '<pre>';
    print_r($result); // <- вот он, Ваш ответ свича
    echo '</pre>';

    $telnet->Disconnect();
}
?>
открываете ее в браузере и смотрите ;)

чтобы нормально выходило отовсюду - измените в классе, в ф-ции Disconnect 'exit' на более общий 'logout':
Код:
function Disconnect($exit = 1)
{
    if ($this->fp) {
        if ($exit) $this->DoCommand('logout', $junk);
        fclose($this->fp);
        $this->fp = null;
    }
}


terrible писал(а):
Perl работает с NET::Telnet быстрее, раз этак в 10

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

_________________
с уважением, БП


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 308


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB