텔넷 서버 문제

텔넷 서버 문제

텔넷 서버 문제

가장 최근의 Yum 업데이트(2016년 7월 20일)로 인해 가상 머신 중 하나의 텔넷 서버가 손상된 것으로 보입니다. 사용동일한 서버에 대한 SSH 연결이 제대로 작동합니다.. 문제를 파악하려고 노력하고 있지만 내가 무엇을 하고 있는지 전혀 모르겠습니다. 따라서 얻을 수 있는 도움을 주시면 대단히 감사하겠습니다.

징후

Telnet 프로토콜을 사용하여 서버에 로그인하면 다음과 같은 동작이 발생합니다.

[uniworks@mort ~]$
                   [uniworks@mort ~]$
                                      [uniworks@mort ~]$
                                                         [uniworks@mort ~]$
                                                                            speed 9600 baud; rows 64; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts -cdtrdsr
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke

보시다시피 명령은 화면에 반영되지 않으며(예: "sty -echo" 켜기) Enter 키를 누르면 "계단" 효과가 나타납니다.

아마도 중요한 것은 연결하자마자 몇 가지 문제가 발생했다는 것입니다.로그인하기 전에도:

Trying 128.222.3.71...
Connected to mort.
Escape character is '^]'.
Scientific Linux release 6.8 (Carbon)
Kernel 2.6.32-504.16.2.el6.x86_64 on an x86_64
ogin:
      Password:
                ast login: Mon Jul 25 12:15:44 from sam
ress the <Backspace> key now:

보시다시피 "login:"의 첫 번째 문자가 누락되어 입력한 사용자 이름이 표시되지 않습니다.

진단

첫째, 이러한 증상은 Telnet을 사용할 때만 나타납니다. 다른 이전 RHEL 4.7 서버에 연결된 세션을 사용한 다음 해당 세션에서 문제의 서버로 텔넷을 시도했습니다. 그런 다음 나가서같은 세션에서그런 다음 동일한 사용자 이름 등을 사용하여 문제 서버에 연결합니다. 그런 다음 이 과정을 여러 번 반복했는데 결과는 같았습니다. 따라서 텔넷 에뮬레이터, 사용자 및 기타 설정은 문제가 되지 않습니다.

로그인 후 TERM 및 stty 설정을 확인해 보니 거의 동일합니다. 텔넷 세션에서 속도는 9600cf로 설정됩니다. 38400 SSH를 사용하여 연결하면 "stty lnext"가 "^V"로 설정됩니다. cf. "" - 어느 쪽도 중요해 보이지 않습니다. 만일을 대비해 동일하게 만들어 보았지만 아무런 차이가 없습니다.

위쪽 화살표 키 + Enter를 사용하여 이전 명령을 반복하면 명령이 표시되지만 첫 번째 문자가 누락됩니다. "man stty"를 입력하면 매뉴얼 페이지가 정상적으로 표시되는 것 같습니다.

또한 텍스트 파일에서 vim을 실행하려고 시도했는데 이상한 문자가 표시되어 문제가 터미널 문제처럼 보이지만 SSH 연결에서 작동하는 이유를 잘 모르겠습니다...

플랫폼

사이언티픽 리눅스 6x:

[root@mort ~]# cat /etc/redhat-release
Scientific Linux release 6.8 (Carbon)

일부 패키지 버전:

[root@mort ~]# rpm -q glibc xinetd telnet-server ncurses ncurses-base ncurses-libs
glibc-2.12-1.192.el6.x86_64
xinetd-2.3.14-40.el6.x86_64
telnet-server-0.17-48.el6.x86_64
ncurses-5.7-4.20090207.el6.x86_64
ncurses-base-5.7-4.20090207.el6.x86_64
ncurses-libs-5.7-4.20090207.el6.x86_64

답변1

흠... 다음을 수행한 후에 문제가 사라진 것 같습니다.

  1. 패키지 및 관련 패키지를 yum update설치하는 다른 작업을 수행했습니다.kernel-2.6.32-642.3.1.el6.x86_64kernel-firmware
  2. 적용된Microsoft 유니버설 픽스몇년 전 - 모두 쫓아내고 서버(VM)를 다시 시작했습니다.

(samba4-libs, xorg-x11-drv-ati-firmware, kernel-devel 및 kernel-headers 패키지에 대한 업데이트도 있지만 이것이 중요한지는 의심스럽습니다.)

"last"의 출력을 보면 이 질문을 작성한 당일 아침에 서버를 다시 시작했음을 알 수 있으며, 이로 인해 커널 업데이트로 문제가 해결되었다고 믿게 됩니다. 이러한 모드는 "kernel*"( "*firmware*"Scientific Linux) 패키지의 기본 구성에서 자동 업데이트 프로세스에서 명시적으로 제외되므로 yum-autoupdate업데이트를 수동으로 설치했다면 문제를 발견하지 못했을 수도 있습니다. 저는 이런 동작을 본 적이 없습니다. 실제로 이전에 커널 업데이트로 인해 눈에 띄는 부작용을 본 기억이 없기 때문에 이것은 저에게 새로운 현상입니다.

답변2

(새) 로그인을 처리하는 데 사용되는 tty에 여전히 연결된 백그라운드 프로세스가 있는 것 같습니다. 다시 시작하면 프로세스가 종료되고 문제가 해결됩니다.

tty또 다른 해결책은 영향을 받은 tty(run ) 의 이름을 확인 하고 이를 사용하여 ps -ft {ttyname}프로세스와 이를 식별하는 것입니다 kill.

ps -t $(tty) | awk 'NR>1 {print $1}' | sudo xargs kill -TERM

관련 정보