/sbin/nologin

agnusdei·2023년 10월 30일

"/sbin/nologin"은 사용자의 로그인 쉘로 설정되는 값이기 때문에 명령어 형태로 직접 실행되지 않습니다. 대신, 사용자 계정 정보를 관리하는 /etc/passwd 파일에서 해당 사용자의 로그인 쉘 필드에 "/sbin/nologin"을 설정함으로써 사용됩니다.

사용법은 다음과 같습니다:

  1. sudo vi /etc/passwd 명령어를 사용하여 /etc/passwd 파일을 편집합니다. 이때 관리자 권한이 필요할 수 있으므로 sudo를 사용합니다.

  2. /etc/passwd 파일에서 해당하는 사용자 계정 라인을 찾습니다. 각 라인은 콜론(:)으로 구분된 여러 필드를 가지고 있습니다.

  3. 일반적으로 7번째 필드가 로그인 쉘이 지정된 필드입니다. 해당 필드 값을 "/sbin/nologin"으로 변경합니다.

    예시:

    username:x:1000:1000:User Name:/home/username:/bin/bash

    위와 같이 기존의 로그인 쉘 경로(/bin/bash) 대신 "/sbin/nologin"으로 변경합니다.

    예시 (변경 후):

    username:x:1000:1000:User Name:/home/username:/sbin/nologin
  4. 파일을 저장하고 종료합니다.

  5. 변경된 설정이 적용되기 위해 시스템을 재부팅하거나, 다음 명령어를 실행하여 변경된 계정 정보를 적용합니다:

    sudo systemctl restart sshd

이제 해당 사용자는 "/sbin/nologin"으로 설정되었기 때문에 SSH 또는 다른 로그인 방법을 통해 직접 로그인할 수 없게 됩니다. 대신, 해당 사용자로서 시스템 리소스에 액세스할 수는 있지만, 인터랙티브한 세션은 시작할 수 없습니다.

참고: /etc/passwd 파일을 편집하는 작업은 신중하게 진행해야 합니다. 올바르지 않은 변경으로 인해 시스템에 문제가 발생할 수 있으므로, 수정하기 전에 백업을 만들거나 주의해서 진행하는 것이 좋습니다.

profile
DevSecOps, Pentest, Cloud(OpenStack), Develop, Data Engineering, AI-Agent

0개의 댓글