beyondlinuxfromscratch:installedpackages:linux-pam-1.6.0

Beyond Linux® From Scratch (systemd Edition) - Version 12.1
Chapter 4. Security
이전 위로 / 처음으로 다음
libcap-2.69 with PAM liboauth-1.0.3

Linux PAM 패키지에는 로컬 시스템 관리자가 애플리케이션 프로그램이 사용자를 인증하는 방법을 제어하는 데 사용하는 플러그형 인증 모듈(PAM: Pluggable Authentication Modules)이 포함되어 있습니다.

이 패키지는 LFS 12.1 플랫폼을 사용하여 빌드하고 제대로 작동하는 것으로 알려져 있습니다.

패키지 정보

  • 다운로드: Linux-PAM-1.6.0.tar.xz
  • MD5: 41a10af5fc35a7be472ae9864338e64a
  • 다운로드 크기: 1.0 MB
  • 디스크 공간: 39 MB (테스트 포함)
  • 빌드 시간: 0.4 SBU (테스트 포함)

추가 다운로드

선택적 문서

Linux PAM 종속성

선택

참고
Linux PAM을 설치 및 구성한 후 Shadow-4.14.5Systemd-255를 다시 설치하고 재구성해야 합니다.

Linux-PAM-1.4.0 이상에서는 pam_cracklib 모듈이 기본적으로 설치되지 않습니다. 강력한 비밀번호를 적용하려면 libpwquality-1.4.5를 사용하세요.


추가 문서를 다운로드했다면 다음 명령을 실행하여 압축을 풉니다.

tar -xf ../Linux-PAM-1.6.0-docs.tar.xz --strip-components=1

다음과 같이 컴파일하고 링크합니다.

./configure --prefix=/usr                        \
            --sbindir=/usr/sbin                  \
            --sysconfdir=/etc                    \
            --libdir=/usr/lib                    \
            --enable-securedir=/usr/lib/security \
            --docdir=/usr/share/doc/Linux-PAM-1.6.0 &&
make

결과를 테스트하려면 적절한 /etc/pam.d/other 구성 파일이 있어야 합니다.

Linux PAM 재설치 또는 업그레이드
Linux PAM이 설치되어 작동 중인 시스템에서 /etc/pam.d의 파일을 부주의하게 수정할 경우 시스템을 완전히 사용할 수 없게 될 수 있으므로 주의하세요. 테스트를 실행하려는 경우 새로 /etc/pam.d/other 파일을 만들 필요는 없습니다. 기존 파일을 테스트에 사용할 수 있습니다.

또한 make install/etc/security/etc/environment의 구성 파일을 덮어쓴다는 점에 유의해야 합니다. 해당 파일을 수정한 경우 반드시 백업하세요.

처음 설치하는 경우 root 사용자로 다음과 같이 구성 파일을 만듭니다.

install -v -m755 -d /etc/pam.d &&

cat > /etc/pam.d/other << "EOF"
auth     required       pam_deny.so
account  required       pam_deny.so
password required       pam_deny.so
session  required       pam_deny.so
EOF

이제 make check를 실행하여 테스트를 실행합니다. 설치를 계속하기 전에 테스트에서 오류가 발생하지 않았는지 확인하세요. 테스트가 매우 길다는 점에 유의하세요. 출력을 로그 파일로 리디렉션하여 꼼꼼히 검사할 수 있도록 하세요.

처음 설치하는 경우 root 사용자로 다음과 같이 앞서 만든 구성 파일을 제거합니다.

rm -fv /etc/pam.d/other

이제 root 사용자로

make install &&
chmod -v 4755 /usr/sbin/unix_chkpwd


  • –enable-securedir=/usr/lib/security:
    PAM 모듈의 설치 위치를 설정합니다.
  • chmod -v 4755 /usr/sbin/unix_chkpwd:
    루트 프로세스가 아닌 프로세스가 섀도 파일에 액세스할 수 있도록 unix_chkpwd 보조 프로그램의 setuid 비트가 켜져 있어야 합니다.

설정 파일

/etc/security/*, /etc/pam.d/*

설정 정보

설정 정보는 /etc/pam.d/에 위치합니다. 다음은 예제 파일 입니다.

# Begin /etc/pam.d/other

auth            required        pam_unix.so     nullok
account         required        pam_unix.so
session         required        pam_unix.so
password        required        pam_unix.so     nullok

# End /etc/pam.d/other

다음과 같이 root 사용자로 몇 가지 일반적인 설정 파일을 생성합니다.

install -vdm755 /etc/pam.d &&
cat > /etc/pam.d/system-account << "EOF" &&
# Begin /etc/pam.d/system-account

account   required    pam_unix.so

# End /etc/pam.d/system-account
EOF

cat > /etc/pam.d/system-auth << "EOF" &&
# Begin /etc/pam.d/system-auth

auth      required    pam_unix.so

# End /etc/pam.d/system-auth
EOF

cat > /etc/pam.d/system-session << "EOF" &&
# Begin /etc/pam.d/system-session

session   required    pam_unix.so

# End /etc/pam.d/system-session
EOF

cat > /etc/pam.d/system-password << "EOF"
# Begin /etc/pam.d/system-password

# use yescrypt hash for encryption, use shadow, and try to use any
# previously defined authentication token (chosen password) set by any
# prior module.
password  required    pam_unix.so       yescrypt shadow try_first_pass

# End /etc/pam.d/system-password
EOF

강력한 비밀번호 지원 정책을 사용하려면 libpwquality-1.4.5를 설치하고 해당 페이지의 안내에 따라 강력한 비밀번호를 지원하는 pam_pwquality PAM 모듈을 구성하세요.

그런 다음 제한적인 /etc/pam.d/other 구성 파일을 추가합니다. 이 파일을 사용하면 해당 애플리케이션에 대한 구성 파일이 존재하지 않으면 PAM을 인식하는 프로그램이 실행되지 않습니다.

cat > /etc/pam.d/other << "EOF"
# Begin /etc/pam.d/other

auth        required        pam_warn.so
auth        required        pam_deny.so
account     required        pam_warn.so
account     required        pam_deny.so
password    required        pam_warn.so
password    required        pam_deny.so
session     required        pam_warn.so
session     required        pam_deny.so

# End /etc/pam.d/other
EOF

여러가지 필드와 허용되는 항목에 대해 알아볼 수 있는 좋은 출발점은 PAM 매뉴얼 페이지(man pam)에서 확인할 수 있습니다. 자세한 내용은 Linux-PAM 시스템 관리자 가이드를 참조하세요.

중요
이제 Shadow-4.14.5Systemd-255 패키지를 다시 설치해야 합니다.


  • 설치된 프로그램:
    faillock, mkhomedir_helper, pam_namespace_helper, pam_timestamp_check, pwhistory_helper, unix_chkpwd 그리고 unix_update
  • 설치된 라이브러리:
    libpam.so, libpamc.so, libpam_misc.so
  • 설치된 디렉토리
    /etc/security, /usr/lib/security, /usr/include/security 및 /usr/share/doc/Linux-PAM-1.6.0

간략한 설명

  • faillock
    인증 실패 레코드 파일을 표시하고 수정합니다.
  • mkhomedir_helper
    홈 디렉터리를 생성하는 헬퍼 바이너리.
  • pam_namespace_helper
    사용자 세션의 개인 네임스페이스를 구성하는 데 사용되는 헬퍼 프로그램.
  • pwhistory_helper
    암호 해시를 passwd 또는 shadow에서 opasswd로 전송하는 헬퍼 프로그램입니다.
  • pam_timestamp_check
    기본 타임스탬프가 유효한지 확인하는 데 사용됩니다.
  • unix_chkpwd
    현재 사용자의 비밀번호를 확인하는 헬퍼 바이너리입니다.
  • unix_update
    주어진 사용자의 암호를 업데이트하는 헬퍼 바이너리입니다.
  • libpam.so
    애플리케이션과 PAM 모듈 간의 인터페이스를 제공합니다.
  • beyondlinuxfromscratch/installedpackages/linux-pam-1.6.0.txt
  • 마지막으로 수정됨: 2024/06/18 23:43
  • 저자 baecy