Bagaimana cara membuat telnet ke localhost berfungsi?

10

Saya sedang mengerjakan setup dev lokal yang membutuhkan penggunaan telnet (bermain dengan mengatur server MUD) jadi tolong tidak ada umpan balik menyarankan saya menggunakan SSH sebagai alternatif yang lebih aman.

Namun, meskipun saya sudah menginstal daemon telnet, saya mendapatkan output ini ketika saya telnet localhost.

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

Apa beberapa alasan mengapa koneksi ditutup? Saya telah memeriksa dokumen di hosts.allow dan hosts.deny, dan telah memutuskan untuk tidak memasukkan entri apa pun karena standarnya adalah untuk mengizinkan semua dan itu sudah cukup untuk keperluan pengembang lokal saya.

Jerome
sumber
2
Saya pikir Anda harus memberi tahu kami lebih banyak tentang perangkat lunak ruang bawah tanah multi-pengguna khusus yang Anda gunakan. telnetdDaemon Ubuntu biasanya berfungsi dengan baik di luar kotak ... tetapi juga memberi Anda login normal. Saya menduga server MUD itu sendiri adalah apa yang mendengarkan pada port 23, jadi masalahnya mungkin dalam konfigurasi. Kemungkinan besar tidak ada hubungannya dengan apa yang Anda lakukan dengan telnetklien. Atau, jika Anda mencoba menggunakan server MUD Anda dengan Ubuntu asli telnetd, beri tahu kami konfigurasi apa yang Anda gunakan untuk memfasilitasi ini.
Eliah Kagan
Server MUD biasanya tidak menggunakan telnetd. Ini berjalan sebagai layanan pada port yang berbeda.
Alistair Buxton
Ok, saya tidak menyadari bahwa server MUD kemungkinan tidak akan menggunakan daemon asli. Saya sedang bekerja menggunakan perpustakaan server permainan PHP, yang saya asumsikan berlari "di atas" telnet asli.
jerome
Perpustakaan apa, dan apa yang telah Anda lakukan dengannya? Jika itu PHP, itu menunjukkan mungkin menyediakan server MUD berbasis web (meskipun itu tidak dijamin), bukan yang berbasis telnet. Juga, dengan asumsi Anda menginstal telnetddan tidak mengubah konfigurasinya, masih aneh bahwa Anda tidak bisa mendapatkan shell saat telnetmelakukannya localhost. Apakah Anda masih ingin bantuan dengan masalah itu, meskipun kemungkinan itu tidak akan menghalangi Anda menjalankan server MUD Anda?
Eliah Kagan
2
Jika server Anda berjalan melalui inetd, cukup umum bagi inetd untuk mendengarkan pada port, dan menutup koneksi dengan cara yang Anda lihat jika daemon server yang sebenarnya tidak dapat dimulai. Ini mungkin petunjuk yang berguna bagi Anda, atau mungkin sama sekali tidak relevan. Saya tidak yakin yang mana.
Robie Basak

Jawaban:

2

Oke, mari selidiki ini, langkah demi langkah. Untuk mengetahui apa yang sebenarnya berjalan pada port telnet, ketik:

sudo netstat -tulpn | grep :23

dan rekatkan hasilnya.

Dari sudut lain: perpustakaan game PHP apa yang Anda gunakan?

0xF2
sumber
Baik! Sepertinya kita bisa pergi ke suatu tempat.
jerome
tcp 0 0 0.0.0.0:23 0.0.0.0:* LISTEN 2842/inetd
jerome
Pustaka permainan PHP disebut NAGS, dan kedengarannya seperti, berdasarkan beberapa email dengan pembuatnya, itu masih dalam dan dari dirinya sendiri dalam keadaan kurang lengkap. Tapi saya tertarik membawa masalah ini sampai ke garis finish dengan informasi yang saya ambil di sepanjang jalan.
jerome
1

Catatan: Aku hanya pergi berkeliling mencari server yang MUD dengan Nags perpustakaan permainan dan menemukan ini: nags-php-mud. Jawaban saya tidak relevan jika Anda menggunakan sesuatu yang lain.

Memiliki config.phpkonfigurasi berikut:

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

Jadi nomor port adalah 4000. Bisakah Anda mencoba memperbarui Alamat IP untuk 127.0.0.1kemudian menghubungkan ke port 4000 menggunakan telnet:telnet 127.0.0.1 4000

Diperbarui
Pada perintah di atas, Anda punyatelnet localhostdan tidaktelnet localhost 4000.
Saya mencoba menjalankannya tetapi saya mendapatkan masalah. Ini menampilkan yang berikut dan saya tidak dapat melacaknya:

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
blvdeer
sumber
Itulah tepatnya yang saya lakukan, tanpa hasil positif.
jerome
Diperbarui jawabannya. Juga dalam pertanyaan, Anda telah menyebutkan telnet localhostbukannyatelnet localhost 4000
blvdeer
Ya saya berharap untuk mendengar kabar dari pengembang perpustakaan NAGS. Sejauh masalah telnet tertentu (hingga 4000 atau 23 atau port apa pun), masih siap untuk saran.
jerome
-2

Coba dengan telnet localhost 80 Where 80 adalah port tempat server Anda berjalan. Saya mencoba dengan 80 port untuk server apache dan berfungsi.

Anda juga mungkin perlu menggunakan opsi -K dan -X. Baca lebih lanjut tentang mereka di telnet pria

Abhijit N
sumber
3
Apache adalah server web, dan port 80 adalah port untuk HTTP. Telnet berfungsi untuk menghubungkan ke berbagai server karena merupakan protokol yang sangat mendasar - Anda dapat secara manual memasukkan perintah untuk HTTP, SMTP, dan sebagainya. Port 23 adalah port untuk telnetd. Jadi tidak ada alasan untuk berharap bahwa itu akan berjalan pada port 80. Kadang-kadang orang menjalankan server non-HTTP pada port 80 untuk memungkinkan klien untuk mengatasi pembatasan firewall keluar, tetapi tidak ada indikasi bahwa apa yang terjadi di sini. Di sini, OP mengatur server. server telnet dan MUD tidak mungkin mendengarkan pada port 80 tanpa dikonfigurasikan untuk melakukannya.
Eliah Kagan
2
Selain itu, ada adalah server yang berjalan pada port 23 di sini, karena sambungan dibuat. Itu baru saja dihentikan setelah itu. Jika server berjalan pada port yang berbeda dan tidak ada yang mendengarkan pada port 23, koneksi akan ditolak.
Eliah Kagan
Ya kami membuat koneksi tapi kemudian ditutup. Awalnya membuat saya berpikir ada beberapa alasan keamanan.
jerome