Come far funzionare telnet su localhost?


10

Sto lavorando su una configurazione di sviluppo locale che richiede l'uso di telnet (giocando con la configurazione di un server MUD), quindi per favore nessun feedback che suggerisce di usare SSH come alternativa più sicura.

Tuttavia, anche se ho il demone telnet attivo, ricevo questo output quando telnet localhost.

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

Quali sono alcuni dei motivi per cui la connessione è chiusa? Ho controllato i documenti su hosts.allow e hosts.deny e ho deciso di non inserire alcuna voce in quanto l'impostazione predefinita è consentire tutto e ciò è sufficiente per i miei scopi di sviluppo locale.


2
Penso che dovrai dirci di più sullo specifico software di dungeon multiutente che stai utilizzando. Il telnetddemone di Ubuntu normalmente funziona alla perfezione ... ma ti dà anche un accesso normale. Immagino che il server MUD stesso sia ciò che è in ascolto sulla porta 23, quindi il problema è probabilmente nella sua configurazione. Molto probabilmente non ha nulla a che fare con quello che stai facendo con il telnetcliente. In alternativa, se stai cercando di utilizzare il tuo server MUD con Ubuntu nativo telnetd, ti preghiamo di comunicarci quale configurazione hai usato per provare a facilitare questo.
Eliah Kagan,

Il server MUD di solito non utilizza telnetd. Funziona come un servizio su una porta diversa.
Alistair Buxton,

Ok, non sapevo che il server MUD probabilmente non avrebbe usato il demone nativo. Sto lavorando per utilizzare una libreria di server di gioco PHP, che presumo funzionasse "in cima" al telnet nativo.
Jerome,

Quale biblioteca e cosa ne hai fatto? Se è PHP, ciò suggerisce che potrebbe fornire un server MUD basato sul web (anche se non è garantito), piuttosto che uno basato su telnet. Inoltre, supponendo che si è installato telnetde non hai cambiato la configurazione, è comunque curioso che non siete in grado di ottenere una shell quando si telneta localhost. Hai ancora bisogno di aiuto per risolvere questo problema, anche se probabilmente non ti impedirà di eseguire il tuo server MUD?
Eliah Kagan,

2
Se il tuo server è in esecuzione tramite inetd, è abbastanza comune che inetd sia in ascolto su una porta e chiuda le connessioni nel modo in cui vedi se il demone del server effettivo non può essere avviato. Questo potrebbe essere un indizio utile per te o potrebbe essere completamente irrilevante. Non sono sicuro di quale.
Robie Basak l'

Risposte:


2

Ok, esaminiamo questo passo per passo. Per capire cosa è effettivamente in esecuzione sulla porta di Telnet, digitare:

sudo netstat -tulpn | grep :23

e incolla l'output.

Da un'altra prospettiva: quale libreria di giochi PHP stai usando?


Tutto a posto! Sembra che potremmo arrivare da qualche parte.
Jerome,

tcp 0 0 0.0.0.0:23 0.0.0.0:* LISTEN 2842/inetd
Jerome,

La libreria di giochi PHP si chiama NAGS e sembra che, sulla base di alcune e-mail con il suo creatore, sia ancora in sé e per sé in uno stato meno che completo. Ma sono interessato a portare questo problema fino al traguardo con le informazioni che raccolgo lungo la strada.
Jerome,

1

Nota: Ho appena andato in giro alla ricerca di server di fango con libreria di giochi di NAGS e ho trovato questo: nags-php-mud. La mia risposta è irrilevante se stai usando qualcos'altro.

L' config.phpaveva la seguente configurazione:

<?
    /*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',
);?>

Quindi il numero di porta è 4000. Puoi provare ad aggiornare l'indirizzo IP per 127.0.0.1poi collegarti alla porta 4000 usando telnet:telnet 127.0.0.1 4000

Aggiornato
nel comando sopra, haitelnet localhoste notelnet localhost 4000.
Ho provato a eseguirlo ma sto riscontrando qualche problema. Viene visualizzato quanto segue e non riesco a rintracciarlo:

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

È esattamente quello che ho fatto, senza risultati positivi.
Jerome

Aggiornato la risposta. Sempre nella domanda, hai menzionato telnet localhostinvece ditelnet localhost 4000
blvdeer il

Sì, spero di avere notizie dallo sviluppatore della libreria NAGS. Per quanto riguarda il problema specifico telnet (a 4000 o 23 o qualsiasi porta), ancora in attesa di suggerimenti.
Jerome,

-2

Prova con telnet localhost 80 Where 80 è la porta su cui è in esecuzione il tuo server. Ho provato con 80 porte per server Apache e funziona.

Inoltre potrebbe essere necessario utilizzare l'opzione -K e -X. Leggi di più su di loro in man telnet


3
Apache è un server Web e la porta 80 è la porta per HTTP. Telnet funziona per la connessione a una varietà di server poiché è un protocollo molto semplice: puoi inserire manualmente i comandi per HTTP, SMTP e così via. La porta 23 è la porta per telnetd. Quindi non c'è motivo di aspettarsi che sarebbe in esecuzione sulla porta 80. A volte le persone eseguono server non HTTP sulla porta 80 per consentire ai client di aggirare le restrizioni del firewall in uscita, ma non c'è alcuna indicazione su cosa stia succedendo qui. Qui, l'OP ha impostato il server. È improbabile che i server telnet e MUD ascoltino sulla porta 80 senza essere configurati per farlo.
Eliah Kagan,

2
Inoltre, v'è un server in esecuzione sulla porta 23 qui, perché la connessione è stata fatta. È stato appena terminato dopo. Se il server fosse in esecuzione su una porta diversa e non vi fosse nulla in ascolto sulla porta 23, la connessione sarebbe stata rifiutata.
Eliah Kagan,

Sì, stiamo effettuando la connessione ma poi è chiusa. Inizialmente mi ha fatto pensare che ci fosse qualche motivo di sicurezza.
Jerome,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.