1. TTY(Teletypewriter)의 역사
- TTY 전신은 teleprinter다. 메시지를 보내려면 메시지를 받는 쪽의 teleprinter 앞에 사람이 앉아서 메시지를 일일이 받아 적어야 했다. 즉, 통신이 이뤄지기 위해서는 반드시 두 명의 운영 요원이 동시에 teleprinter 앞에 상주하고 있어야 통신이 가능했던 데다 두 명 모두 모스 부호를 알아야만 소통이 가능했기 때문에 많은 제약과 한계가 있었다.
- 그래서 등장한 것이 teletypewriter이다. 모스 부호 대신 키보드로 소통을 하게 되면서 운용자가 알파벳만 알고 있으면 통신을 할 수 있게 되었다. 거기다 print된 메시지를 주고받기 때문에 두 명의 운영 요원이 동시에 기계 앞에 상주할 필요가 없게 되었다. 한밤중이더라도 메시지를 보내놓기만 하면 다음 날 아침에 메시지를 받는 쪽이 일어나서 읽으면 되므로 훨씬 통신이 자유로워졌다.
2. linux TTY 모드란?
- 결론부터 말하자면 TTY 모드는 오로지 유저가 로그인된 터미널 세션에서만 sudo가 동작할 수 있도록 하는 모드다.
- 사용자가 로그인이 되어있다는 명확한 증거(유저가 로그인된 터미널 세션)가 있을 경우에만 sudo가 동작할 수 있도록 한다.
- 물리적 TTY 시절에는 기계 앞에 사람이 앉아서 직접 타이핑하는 게 당연했지만, 지금은 cron job이나 daemon 같은 자동화 프로그램도 sudo를 실행할 수 있다.
- TTY 모드는 이런 백그라운드 프로세스의 sudo 실행을 차단하고, 오직 사용자가 직접 로그인한 터미널에서만 sudo를 허용한다.
참고
https://itsfoss.com/what-is-tty-in-linux/
What is TTY in Linux?
Sooner or later, you'll come across the term tty while using Linux. Learn what it is and what is its significance.
itsfoss.com
Why would I want to require a tty for sudo? What's the security benefit of requiring it?
I'm currently doing a project for my school aimed at creating a server in a VM. One of the requirements of the subject was to install sudo on an emulated Debian Linux, with the following field in the
stackoverflow.com
'CS' 카테고리의 다른 글
가상화 - 컴퓨팅 자원을 유연하게 쓰는 방법 (0) | 2023.06.29 |
---|---|
포트와 소켓 - 네트워크 (0) | 2023.06.29 |
운영체제 기본 2 - 컴퓨터 하드웨어 구조 (0) | 2023.06.28 |
운영체제 기본 1 - 운영체제란? (0) | 2023.06.27 |
TCP/IP 프로토콜 간단 요약정리 (0) | 2023.06.25 |