Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.08.2015, 19:51   #1
vang95
Новичок
Джуниор
 
Регистрация: 24.08.2015
Сообщений: 2
По умолчанию не выполняется ssh2_exec()

Есть скрипт, с помощью которого я подключаюсь к коммутатору D-link 3028 и хочу произвести команду

Скрипт
Код:
<?php
echo "1. go<br>";

if($conn = ssh2_connect('192.168.10.1', 22))
echo "2. connect<br>";
 if(ssh2_auth_password($conn, 'admin', 'password'))
echo "3. login-password ok<br>";
 $command='config ports 3 state disable';
if(ssh2_exec($conn,$command))
echo "4. command send";
?>

Ответ приходит, и характеризует то, что команда

ssh2_exeс($conn,$command)
не выполняется.( на коммутаторе и в правду не выполняется)

1. go
2. connect
3. login-password ok

Скажите, пожалуйста, в чем может быть проблема? В плане синтаксиса и корректного запроса вроде все ок.

Последний раз редактировалось Stilet; 24.08.2015 в 21:09.
vang95 вне форума Ответить с цитированием
Старый 24.08.2015, 21:13   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Может тебе стоит попробовать получить текст ошибки из потока чтоб узнать почему?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.08.2015, 21:44   #3
vang95
Новичок
Джуниор
 
Регистрация: 24.08.2015
Сообщений: 2
По умолчанию

Пишет
Warning: ssh2_exec(): Unable to request command execution on remote host in /var/www/bstu.loc/connect/ssh.php on line 8
vang95 вне форума Ответить с цитированием
Старый 04.09.2015, 21:18   #4
pompiduskus
юзер как все
Участник клуба
 
Аватар для pompiduskus
 
Регистрация: 10.01.2012
Сообщений: 1,586
По умолчанию

Сам я эти еще не пользовался, нот на странице написано что нужен обмен ключами

http://www.php.su/ssh2_connect

Once connected, the client should verify the server's hostkey using ssh2_fingerprint(), then authenticate using either password or public key.


Код:
 <?php
    /* Notify the user if the server terminates the connection */
    function my_ssh_disconnect($reason, $message, $language) {
        printf("Server disconnected with reason code [%d] and message: %s\n",
            $reason, $message);
    }

    $methods = array(
        'kex' => 'diffie-hellman-group1-sha1',

        'client_to_server' => array(
                                    'crypt' => '3des-cbc', 
                                    'comp' => 'none'
                                    ),

        'server_to_client' => array(
                                    'crypt' => 'aes256-cbc,aes192-cbc,aes128-cbc',
                                    'comp' => 'none'
                                    )
    );

    $callbacks = array('disconnect' => 'my_ssh_disconnect');

    $connection = ssh2_connect('shell.example.com', 22, $methods, $callbacks);

    if (!$connection) 
        die('Connection failed');

?>
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/

Последний раз редактировалось pompiduskus; 04.09.2015 в 21:20.
pompiduskus вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не выполняется js STALERUM JavaScript, Ajax 3 24.09.2012 12:21
Не выполняется условие Astash Помощь студентам 2 03.12.2011 11:21
Не выполняется макрос allichka Microsoft Office Excel 5 19.05.2011 14:47
не выполняется запрос Deeller БД в Delphi 4 25.04.2011 09:14
Компилируется,но не выполняется. Lunex.08 C++ Builder 6 19.11.2009 12:17