PHPoC можен быть установлен как SSH-сервер путем использования команды "set api ssh". В следующем примере показано, как создать SSH-сервер.
$port = 22; // port number
$pid = pid_open("/mmap/tcp0"); // open TCP 0
pid_ioctl($pid, "set api ssh"); // set api to SSH
pid_bind($pid, "", $port); // binding
pid_listen($pid); // listen TCP connection
while(1)
{
$state = pid_ioctl($pid, "get state");
if($state == SSH_AUTH)
{
$username = pid_ioctl($pid, "get ssh username");
$password = pid_ioctl($pid, "get ssh password");
echo "$username / $password\r\n";
pid_ioctl($pid, "set ssh auth accept");
}
if($state == SSH_CONNECTED)
{
pid_send($pid, "Welcome to PHPoC SSH server\r\n");
echo "Connection has been established!\r\n";
pid_close($pid);
break;
}
}
В примере выше, PHPoC прослушивает SSH-соединения от клиентов. После того, как соединение установлено, печатается имя пользователя и пароль от клиента. После этого выводится приветственное сообщение и соединение закрывается.
※ Если вы хотите протестировать данный пример, откройте клиентскую программу SSH на ПК (например, Tera Term) и попробуйте подключиться к серверу PHPoC SSH.
※ Процесс аутенфикации, включающий идентификацию пользователя, должен быть реализован в пользовательском скрипте.