btmp, wtmp, lastlog 파일의 권한이 변경되지 않는 이유는 이 파일들이 시스템의 로그 파일로, 보안과 시스템의 정상적인 운영을 위해 특별한 관리와 보호가 필요하기 때문입니다. 이러한 파일들은 시스템 로그인 기록과 관련된 중요한 정보를 저장하고 있으며, 시스템 데몬이나 로그인 서비스가 이를 관리합니다. 권한이 변경되지 않는 이유를 몇 가지로 요약할 수 있습니다:
1. 시스템의 자동 관리 및 파일 회전(rotation)
이 파일들은 시스템에서 자동으로 관리되며, 로그 회전 도구(예: logrotate, rsyslog, systemd 등)에 의해 주기적으로 회전되거나 로그가 롤백됩니다. 이러한 로그 파일들은 보통 wtmp와 같은 사용자 로그 기록을 포함하고 있기 때문에, 시스템의 로그인 및 인증 관련 데몬들이 이 파일을 주기적으로 업데이트합니다.
예시: logrotate와의 관계
logrotate나 다른 로그 회전 프로그램은 파일이 일정 크기에 도달하거나 일정 시간 간격으로 회전되도록 설정되어 있을 수 있습니다. 이때 새로 생성되는 로그 파일의 권한은 시스템 기본 설정이나 데몬의 umask에 의해 자동으로 설정됩니다. 이로 인해 수동으로 권한을 변경한 경우에도, 로그 회전 후에는 다시 기본 권한으로 복원될 수 있습니다.
2. 로그 파일에 대한 특별한 보안 정책
btmp, wtmp, lastlog 파일들은 중요한 보안 및 인증 기록을 저장하고 있기 때문에, 시스템의 보안 정책에 의해 특정 권한을 설정하는 것이 일반적입니다. 대부분의 리눅스 시스템에서는 이 파일들의 권한을 664로 설정하여, 시스템 관리자와 특정 사용자만 읽을 수 있도록 하고, 일반 사용자에게는 읽기 권한을 부여하여 문제가 발생할 경우 로그를 검토할 수 있게 합니다. 이 파일들은 시스템의 인증, 로그인 기록에 중요한 역할을 하므로, 권한 설정을 시스템 정책에서 관리하는 것이 일반적입니다.
3. 시스템 프로세스에 의한 권한 재설정
이 파일들은 시스템 로그인, 인증, 및 인증 관련 데몬들(login, sshd, systemd, rsyslog, 등)에 의해 사용됩니다. 이러한 프로세스들이 파일을 열거나 기록할 때, 파일 권한을 기본값으로 설정할 수 있습니다. 예를 들어, 파일을 생성할 때 기본 umask가 022로 설정되어 있으면, 생성되는 파일의 권한은 664로 설정됩니다. 이러한 시스템 데몬은 로그 파일을 관리하고, 이를 위한 기본 권한 설정을 사용하기 때문에 수동으로 권한을 변경하더라도 시스템 데몬에 의해 권한이 다시 설정될 수 있습니다.
4. 파일 권한에 대한 시스템 정책
리눅스에서 btmp, wtmp, lastlog와 같은 로그인 관련 파일들의 권한은 시스템의 기본 정책에 따라 설정됩니다. 대부분의 시스템에서 이러한 파일들의 권한을 664로 설정하는 이유는, 시스템 관리자나 특정 그룹에게는 읽기 권한을 주어야 하며, 동시에 로그 데이터를 다른 사용자와 공유해야 할 수 있기 때문입니다. 이 파일들의 권한이 자동으로 664로 설정되도록 되어 있으면, 관리자가 추가적인 조치를 취하지 않더라도 시스템이 자동으로 설정한 권한이 복원됩니다.
5. 파일 소유자 및 그룹의 영향
이 파일들의 소유자는 보통 root이고, 그룹은 utmp로 설정되어 있는 경우가 많습니다. 이러한 파일들은 일반적으로 그룹 내에서 읽기 권한을 부여하여 관리자가 lastlog, wtmp, btmp 파일을 읽을 수 있도록 합니다. 만약 권한을 640으로 설정하더라도, 시스템 데몬이나 다른 프로세스들이 이 파일을 사용하기 위해 파일 권한을 변경할 수 있기 때문에, 이 파일들이 다시 664로 설정될 수 있습니다.
6. 파일 권한 변경을 막는 보안 모듈
일부 시스템에서는 보안을 강화하기 위해 SELinux 또는 AppArmor와 같은 보안 모듈을 사용하고 있을 수 있습니다. 이러한 보안 모듈은 특정 파일이나 디렉토리에 대한 권한 변경을 제한할 수 있습니다. 이 경우, btmp, wtmp, lastlog와 같은 중요한 파일들의 권한을 변경하려고 해도 보안 모듈에 의해 권한 변경이 막힐 수 있습니다.
'LINUX' 카테고리의 다른 글
[Ubuntu] sudo 권한을 관리하는 파일 /etc/sudoers (0) | 2024.12.07 |
---|---|
Ubuntu 22.04 고정 ip 설정하기 (0) | 2024.12.07 |
btmp, wtmp 란? (0) | 2024.12.05 |
[linux] ssh 실행시 start condition failed 에러 (0) | 2024.03.12 |
[linux] conntrack에 대해 알아보자(iptables) (0) | 2024.03.11 |
댓글