Страница 2 из 2
протокол и сервер telnet
Добавлено: 01 янв 2024, 17:48
Olej
Olej писал(а): ↑01 янв 2024, 17:38
вручную
Запуск сервера:
Код: Выделить всё
olej@nvidia:~$ sudo /usr/sbin/in.telnetd -debug 10000
[sudo] пароль для olej:
...
sudo здесь обязательно:
Код: Выделить всё
olej@nvidia:~$ ps -A | grep telnetd
145765 ? 00:00:00 in.telnetd
Иначе при 1-м же подключении telnet по этому порту - сервер будет остановлен из-за недоступности каталога лог-файлов:
Код: Выделить всё
...
telnetd: /usr/lib/telnetlogin: Permission denied
...
протокол и сервер telnet
Добавлено: 01 янв 2024, 17:52
Olej
Olej писал(а): ↑01 янв 2024, 17:48
подключении telnet по этому порту
А вот и отладочный коннект (в LAN это вполне допустимо!):
Код: Выделить всё
olej@nvidia:~$ telnet 127.0.0.1 10000
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Linux Mint 21.2 Victoria
nvidia login: olej
Password:
...
Last login: Sat Nov 25 19:51:56 EET 2023 from 192.168.1.14 on pts/0
Вот при этом и сервер (145765) и клиент (145766):
Код: Выделить всё
olej@nvidia:~$ sudo netstat -ptun | grep telnet
tcp 0 0 127.0.0.1:59000 127.0.0.1:10000 ESTABLISHED 145766/telnet
tcp 0 0 127.0.0.1:10000 127.0.0.1:59000 ESTABLISHED 145765/in.telnetd:
И, собственно, можем видеть новый (pts/7) удалённый сеанс (хотя он, в данном конкретном, тестовом случае и localhost):
Код: Выделить всё
olej@nvidia:~$ who
olej tty1 2023-12-17 20:15 (:0)
olej pts/6 2024-01-01 16:44
olej pts/7 2024-01-01 16:44 (localhost)
протокол и сервер telnet
Добавлено: 01 янв 2024, 17:59
Olej
Olej писал(а): ↑01 янв 2024, 17:52
А вот и отладочный коннект (в LAN это вполне допустимо!):
Таким способом в LAN (где вопросы безопасности не стоят!) можно легко (самый простой и быстрый способ) вести административно-отладочные работы.
протокол и сервер telnet
Добавлено: 02 янв 2024, 16:28
Olej
Olej писал(а): ↑01 янв 2024, 17:48
Запуск сервера:
Olej писал(а): ↑01 янв 2024, 17:59
можно легко (самый простой и быстрый способ) вести административно-отладочные работы.
Код: Выделить всё
olej@nvidia:~$ sudo /usr/sbin/in.telnetd -debug 10000
...
Код: Выделить всё
root@nvidia:/var/log# netstat -ptun | grep telnet
tcp 0 0 192.168.1.11:10000 192.168.1.14:56478 ESTABLISHED 150865/in.telnetd:
Удалённый коннект из LAN:
Код: Выделить всё
olej@R420:~$ telnet -lolej 192.168.1.11 10000
Trying 192.168.1.11...
Connected to 192.168.1.11.
Escape character is '^]'.
Password:
Расширенное поддержание безопасности (ESM) для Applications выключено.
0 обновлений может быть применено немедленно.
Включите ESM Apps для получения дополнительных будущих обновлений безопасности.
Смотрите https://ubuntu.com/esm или выполните: sudo pro status
*** /dev/sda2 will be checked for errors at next reboot ***
*** System restart required ***
Last login: Tue Jan 2 15:19:16 EET 2024 from R420 on pts/14
olej@nvidia:~$ ^]
telnet> quit
Connection closed.
Характерно, что после закрытия такой сессии telnet удалённый сервер in.telnetd завершается:
Код: Выделить всё
root@nvidia:/var/log# netstat -ptun | grep telnet
root@nvidia:/var/log#
И это мне не совсем понятно...
протокол и сервер telnet
Добавлено: 02 янв 2024, 16:33
Olej
Olej писал(а): ↑02 янв 2024, 16:28
Характерно, что после закрытия такой сессии telnet удалённый сервер in.telnetd завершается:
Что ещё характерно, что, в таком
отладочном виде, сервер in.telnetd вообще не "форкающий",
однопотосный,
последовательный...
Вот, устанавливаю сессию через LAN:
Код: Выделить всё
olej@R420:~$ telnet -lolej 192.168.1.11 10000
Trying 192.168.1.11...
Connected to 192.168.1.11.
Escape character is '^]'.
Password:
Расширенное поддержание безопасности (ESM) для Applications выключено.
0 обновлений может быть применено немедленно.
Включите ESM Apps для получения дополнительных будущих обновлений безопасности.
Смотрите https://ubuntu.com/esm или выполните: sudo pro status
*** /dev/sda2 will be checked for errors at next reboot ***
*** System restart required ***
Last login: Tue Jan 2 15:22:10 EET 2024 from R420 on pts/14
olej@nvidia:~$
И с того же хоста - другую сессию:
Код: Выделить всё
olej@R420:~$ telnet -lolej 192.168.1.11 10000
Trying 192.168.1.11...
telnet: Unable to connect to remote host: Connection refused
Отлуп!
протокол и сервер telnet
Добавлено: 02 янв 2024, 16:45
Olej
Olej писал(а): ↑02 янв 2024, 16:33
Отлуп!
Любопытно, что при стандартном запуске, посредством суперсервера inetd через порт 23 ... для каждо сессии (клиента), запускается свой отдельный экземпляр сервера.
Вот как-то так ... 2 запроса коннекта из удалённого хоста:
Код: Выделить всё
olej@R420:~$ telnet -lolej 192.168.1.11
Trying 192.168.1.11...
Connected to 192.168.1.11.
Escape character is '^]'.
Password:
Код: Выделить всё
olej@R420:~$ telnet -lolej 192.168.1.11
Trying 192.168.1.11...
Connected to 192.168.1.11.
Escape character is '^]'.
Password:
(Причём, если не ответить в какой-то короткий промежуток времени, то экземпляр сервера закроется по тайм-ауту.)
И на серверном хосте видим:
Код: Выделить всё
root@nvidia:/var/log# netstat -ptun | grep telnet
tcp 0 0 192.168.1.11:23 192.168.1.14:51554 ESTABLISHED 151331/in.telnetd:
tcp 0 0 192.168.1.11:23 192.168.1.14:51558 ESTABLISHED 151333/in.telnetd:
Код: Выделить всё
root@nvidia:/var/log# ps -A | grep inetd
1038 ? 00:01:02 inetd
P.S. Это не совсем обычное поведение ... и при отладочных работах нужно это поиметь в виду
протокол и сервер telnet
Добавлено: 02 янв 2024, 17:22
Olej
Olej писал(а): ↑02 янв 2024, 16:28
Характерно, что после закрытия такой сессии telnet удалённый сервер in.telnetd завершается:
Но если хочется чтобы (отладочный) сервер оставался активным и после завершения сессии, то его вполне можно запускать так:
Код: Выделить всё
olej@nvidia:~$ while true; do sudo /usr/sbin/in.telnetd -debug 10000; done;
[sudo] пароль для olej:
...