Назад | Перейти на главную страницу

сценарий привратника ssh и системные вызовы

Я использую скрипт привратника openssh с сайта calomel.org чтобы сделать видимость двухфакторной аутентификации.

Я попытался использовать завиток для локального хоста, чтобы отправить случайно сгенерированную строку через текстовое сообщение. Случайная строка поступает нормально, когда я копирую измененный custom_string подпрограмму в отдельный тестовый сценарий, но она не работает при использовании в сценарии привратника.

sub custom_string {
    $maximum = 999999;
    my $x = int(rand($maximum));
    system "curl http://localhost/sendAuth.php?authCode=".$x;
    $code = $x;
}

Это не работает, потому что я не могу использовать системные команды из сценария привратника?

Возможно, я не могу использовать сетевые функции из скрипта?

TL; DR: Скажите, пожалуйста, в чем я невежественен.

Примечание: я также открыт для предложений по выполнению задачи, но это вторично по сравнению с пониманием того, что я сделал не так.

Другое примечание: я знаю, что rand() это не лучший способ сгенерировать случайную строку, которую я хочу. Я делаю набросок доказательства концепции и заменю его, как только у меня будет правильный фундаментальный дизайн.

Что вы ожидаете от этого? Я не понимаю, почему это не сработает ... но одно тебе не делать - это каким-либо образом собирать результаты curl в вашем сценарии.

Возможно что-то вроде:

my $response = `curl  http://localhost/sendAuth.php?authCode=".$x`;
print $response;

Можете делать то, что хотите?

Хотя обычно я предлагаю использовать LWP модуль в perl для операций типа webby, а не для запуска curl - Но в данном случае это не должно быть проблемой.