Написание сервера Telnet на Python и встраивание IPython в качестве оболочки - PullRequest
1 голос
/ 11 октября 2011

Я пытаюсь написать простой telned-сервер, который будет предоставлять оболочку IPython подключенному клиенту.Кто-нибудь знает, как это сделать?

Вопрос действительно в том, чтобы встроить оболочку IPython в сервер Telnet (я могу, вероятно, использовать Twisted для серверной части Telnet)

Ответы [ 2 ]

1 голос
/ 07 ноября 2011

Возможно, вы могли бы использовать настоящий сервер Telnet или SSH и просто установить оболочку входа пользователя в систему IPython. Например, учитывая пользователя с именем 'adam', возможно, вы могли бы изменить строку пользователя /etc/passwd на что-то вроде:

adam:x:1000:1000:Adam Frist,,,:/home/adam:/usr/bin/ipython

Обычно последний сегмент в строке представляет собой реальную оболочку входа в систему, такую ​​как bash, но это не обязательно. Преимущество состоит в том, что вы можете пропустить кодирование решения самостоятельно, но может быть недостаток в том, что вам, возможно, придется взломать переменную окружения или путь Python, чтобы он работал.

Подробнее о /etc/passwd файле вы можете прочитать в Информационном проекте Linux.

0 голосов
/ 11 октября 2011

Я думаю, что невозможно обеспечить полную функциональность IPython, например, автозаполнение. Twisted имеет оболочку python, которая хорошо работает с telnet.

...