[Linux]세션 타임아웃(Session Timeout) 설정 방법
사용자가 로그아웃을 잊고 컴퓨터에서 이탈하는 경우, 타인이 해당 컴퓨터에 접근하면 사용자의 개인 정보 등 민감한 정보가 노출될 수 있으며, 악의적인 작업을 수행할 수 있는 기회가 됩니다.
이러한 보안 위협을 방지하기 위해 로그인한 사용자의 활동이 없는 경우에 일정 시간이 경과하면 로그아웃될 수 있도록 TMOUT 환경변수를 사용해서 시간(초)을 설정할 수 있습니다. 이 변수는 일반적으로 셸 스크립트나 프로파일 파일에서 설정되며, 모든 사용자에게 동일한 세션 타임아웃 시간을 설정할 수도 있고, 사용자별로 다른 세션 타임아웃 시간을 설정할 수도 있습니다.
주의할 점은, 현재 접속되어 있는 사용자에게는 변경된 TMOUT 값이 적용되지 않는다는 것입니다. 사용자가 해당 세션을 종료하고 다시 로그인해야만 새로운 TMOUT 값이 적용됩니다. 즉시 TMOUT 값을 적용하려면 `who` 명령어로 로그인된 사용자를 확인하고 해당 사용자에게 로그아웃하도록 안내해야 합니다.
- 모든 사용자에게 동일한 세션 타임아웃 시간을 설정하고 싶을 때
– TMOUT 환경변수를 readonly로 설정하면 사용자들이 자신의 TMOUT 환경변수를 재설정할 수 없음[root@centos8 ~]# vi /etc/profile#readonly TMOUT=100 TMOUT=100 export TMOUT - 사용자별로 다른 세션 타임아웃 시간을 설정하고 싶을 때
[archer@centos8 ~]# vi ~/.bashrcexport TMOUT=600
– 만일 “/etc/profile” 파일에서 TMOUT이 readonly로 설정된 경우에는 오류 발생
[root@centos8 ~]# su - archer-bash: TMOUT: readonly variable[archer@centos8 ~]$ echo $TMOUT100[archer@centos8 ~]$ export TMOUT=600-bash: TMOUT: readonly variable - 세션 타임아웃 설정을 해제하고 싶을 때
export TMOUT=0