Как заставить телнет работать на localhost?


10

Я работаю над локальной настройкой разработчика, которая требует использования telnet (игра с настройкой сервера MUD), поэтому, пожалуйста, не оставляйте отзывов, предлагающих использовать SSH в качестве более безопасной альтернативы.

Однако, хотя у меня запущен демон telnet, я получаю этот вывод, когда я telnet localhost.

$ telnet localhost
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.

По каким причинам соединение закрыто? Я проверил документы на hosts.allow и hosts.deny, и решил не помещать в них ни одной записи, так как по умолчанию разрешено все, и этого достаточно для моих локальных целей разработки.


2
Я думаю, вам придется рассказать нам больше о конкретном многопользовательском программном обеспечении для подземелий, которое вы используете. telnetdДемон Ubuntu обычно работает просто отлично из коробки ... но он также дает вам нормальный логин. Я предполагаю, что сам сервер MUD прослушивает порт 23, поэтому проблема, вероятно, в его конфигурации. Скорее всего, это не имеет ничего общего с тем, что вы делаете с telnetклиентом. В качестве альтернативы, если вы пытаетесь использовать свой сервер MUD с собственной Ubuntu telnetd, сообщите нам, какую конфигурацию вы использовали, чтобы попытаться облегчить это.
Элия ​​Каган

Сервер MUD обычно не использует telnetd. Он работает в качестве службы на другом порту.
Алистер Бакстон

Хорошо, я не знал, что сервер MUD, скорее всего, не будет использовать нативный демон. Я работаю над использованием библиотеки игрового сервера PHP, которая, как я предполагал, работала "поверх" собственного telnet.
Джером

Какая библиотека и что вы с ней сделали? Если это PHP, это предполагает, что он может предоставить сетевой сервер MUD (хотя это не гарантировано), а не сервер на основе telnet. Кроме того , предполагается , что вы установили telnetdи не менять свою конфигурацию, это все-таки интересно , что вы не в состоянии получить оболочку , когда вы telnetк localhost. Вам все еще нужна помощь в решении этой проблемы, даже если это не помешает вам запустить сервер MUD?
Элия ​​Каган

2
Если ваш сервер работает через inetd, inetd довольно часто слушает порт и закрывает соединения таким образом, как вы видите, если не удается запустить реальный демон сервера. Это может быть полезной подсказкой для вас, или это может быть совершенно неактуально. Я не уверен, какой.
Роби Басак

Ответы:


2

Хорошо, давайте исследуем это, шаг за шагом. Чтобы выяснить, что на самом деле работает через порт telnet, введите:

sudo netstat -tulpn | grep :23

и вставьте вывод.

С другой стороны: какую библиотеку PHP игр вы используете?


Хорошо! Похоже, мы можем куда-нибудь добраться.
Джером

tcp 0 0 0.0.0.0:23 0.0.0.0:* LISTEN 2842/inetd
Джером

Библиотека игр PHP называется NAGS, и похоже, что, основываясь на некоторых электронных письмах ее создателя, она все еще находится в самом неполном состоянии. Но мне интересно довести эту проблему до финиша с помощью информации, которую я собираю по пути.
Джером

1

Примечание: Я просто пошел вокруг в поисках MUD сервера с игровой библиотекой ОАГБА и нашел это: nags-php-mud. Мой ответ не имеет значения, если вы используете что-то еще.

config.phpИмел следующий конфиг:

<?
    /*Modify the setting here to set up your game server */
    $configarray = array(
        'DB_HOST' => 'localhost',
        'DB_USERNAME' => 'nags',
        'DB_PASSWORD' => 'password',
        'DB_DATABASE' => 'nags',
        'IP_ADDRESS' => '0.0.0.0',
        'SERVER_PORT' => '4000',
        'SERVER_NAME' => 'NAGS GAMING SYSTEM',
);?>

Таким образом, номер порта 4000. Можете ли вы попробовать обновить IP-адрес, чтобы 127.0.0.1затем подключиться к порту 4000 с помощью telnet:telnet 127.0.0.1 4000

Обновлено
В приведенной выше команде у вас естьtelnet localhostи нетtelnet localhost 4000.
Я пытался запустить его, но у меня возникли проблемы. Он отображает следующее, и я не могу отследить его:

PHP Notice:  Undefined index: quiet in /home/blvdeer/Downloads/nags-php-mud-master/nags.php on line 34  
PHP Notice:  Undefined index: q in /home/blvdeer/Downloads/nags-php-mud-master/nags.php on line 34
PHP Notice:  Undefined index: deamon in /home/blvdeer/Downloads/nags-php-mud-master/nags.php on line 38
PHP Notice:  Undefined index: d in /home/blvdeer/Downloads/nags-php-mud-master/nags.php on line 38
PHP Notice:  Undefined property: MAIN::$MESSAGE in /home/blvdeer/Downloads/nags-php-mud-master/modules/main.php on line 158
SYSTEM: (LOAD MODULE)   MESSAGE
SYSTEM: (LOAD MODULE)   CONFIGURE
SYSTEM: (LOAD MODULE)   DATABASE

Это именно то, чем я занимался, без положительных результатов.
Джером

Обновил ответ. Также в вопросе вы упомянули telnet localhostвместоtelnet localhost 4000
blvdeer

Да, я надеюсь получить ответ от разработчика библиотеки NAGS. Что касается конкретной проблемы telnet (до 4000 или 23 или любого порта), все еще для предложений.
Джером

-2

Попробуйте, telnet localhost 80 где 80 - это порт, на котором работает ваш сервер. Я попытался с 80 портом для сервера Apache, и он работает.

Также вам может понадобиться использовать опции -K и -X. Подробнее о них читайте в man telnet


3
Apache - это веб-сервер, а порт 80 - это порт для HTTP. Telnet работает для подключения к различным серверам, так как это очень простой протокол - вы можете вручную вводить команды для HTTP, SMTP и так далее. Порт 23 является портом для telnetd. Так что нет никаких оснований ожидать, что он будет работать на порту 80. Иногда люди запускают не HTTP-серверы на порту 80, чтобы позволить клиентам обойти ограничения исходящего брандмауэра, но нет никаких признаков того, что здесь происходит. Здесь OP настроить сервер. серверы telnet и MUD вряд ли будут прослушивать порт 80, не настроившись на это.
Элия ​​Каган

2
Кроме того, здесь есть сервер, работающий на порту 23, потому что было установлено соединение. Это было просто прекращено после этого. Если бы сервер работал на другом порту, а на порту 23 ничего не прослушивалось, соединение было бы отклонено.
Элия ​​Каган

Да, мы устанавливаем связь, но затем она закрыта. Первоначально заставил меня думать, что была какая-то причина безопасности.
Джером
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.