본문 바로가기

OS/Linux

Linux - 계정 로그인 문제 해결 가이드

728x90

리눅스 서버를 관리하다 보니 간혹 계정 로그인에 문제가 발생하는 경우가 종종 있습니다.

Pemission Denied 나 Session이 바로 끊긴다던지.. 등등..

 

1. 쉘 설정 문제

문제 증상: 특정 계정으로 로그인 시도 시 세션이 바로 종료되거나 "Permission denied" 오류 발생

해결 방법: 싱글 모드 부팅 -> 자세한 내용은?

  1. 시스템 재부팅 시 GRUB 부트 로더 메뉴로 접근합니다.
  2. 부팅할 커널 항목을 선택하고 e 키를 눌러 편집 모드로 들어갑니다.
  3. 커널 라인의 끝에 init=/bin/bash를 추가합니다.
  4. 'Ctrl + x' 로 싱글 모드 부팅합니다.

쉘 설정 확인 및 수정

 

1. 싱글 모드에서 /etc/passwd 파일의 값을 확인합니다.

# vi /etc/passwd

 

2. 이슈가 있는 계정(samso)의 설정을 확인합니다.

 

3. nologin을 /bin/bash로 수정 후 로그인 해봅니다.


2. .bashrc 또는 .profile 파일 문제

문제 증상: 로그인 시도 시 특정 계정에서 세션이 종료되거나 예상치 못한 동작 발생

해결 방법문제 파일 백업 및 기본 파일 사용

 

1. 싱글 모드로 부팅합니다.

2. 문제 계정의 홈 디렉토리로 이동합니다.

# cd /home/samso

 

3. .bashrc와 .profile 파일을 백업합니다.

# mv .bashrc .bashrc.bak
# mv .profile .profile.bak

 

4. 기본 스켈레톤 파일을 복사합니다.

# cp /etc/skel/.bashrc /home/samso/
# cp /etc/skel/.profile /home/samso/

 

5. 파일 소유권을 문제 계정으로 변경합니다.

# chown samso:samso .bashrc .profile

 


3. PAM 설정 문제

문제 증상: 모든 계정에서 로그인 시 "Permission denied" 오류 발생

해결 방법PAM 설정 파일 수정

1. 싱글 모드로 부팅합니다.

2. /etc/pam.d/ 디렉토리 내의 login 파일을 엽니다.

# vi /etc/pam.d/login

 

3. pam_limits.so 모듈 관련 설정을 확인하고 주석 처리합니다.

# session required pam_limits.so

* pam.d 안의 파일들은 system-auth를 include 해서 사용하니 같이 확인!


4. 손상된 pam_limits.so 모듈 문제 해결

문제 증상: 로그인 시 "Permission denied" 오류 발생 (pam_limits.so 모듈이 손상)

해결 방법다른 서버에서 파일 복

1. 잘 되는 서버에서 pam_limits.so 파일을 확인합니다.

# ls -l /lib/security/pam_limits.so
# ls -l /lib64/security/pam_limits.so

 

2. 파일을 문제 서버로 복사합니다.

# scp /lib/security/pam_limits.so user@target_server:/copydir
# scp /lib64/security/pam_limits.so user@target_server:/copydir

또는 filezilla 나 winscp 등 ftp 프로그램 이용

 

3. 문제 서버에서 기존 파일을 백업하고 복사한 파일로 덮어씁니다.

# cp /lib/security/pam_limits.so /lib/security/pam_limits.so.bak
# cp /lib64/security/pam_limits.so /lib64/security/pam_limits.so.bak

# cp /copydir/pam_limits.so /lib/security/
# cp /copydir/pam_limits.so /lib64/security/

 

4. 파일 권한을 설정합니다.

# chmod 644 /lib/security/pam_limits.so
# chmod 644 /lib64/security/pam_limits.so
# chown root:root /lib/security/pam_limits.so
# chown root:root /lib64/security/pam_limits.so

 

참고 : https://suzxc2468.tistory.com/150  ,  https://kldp.org/node/91000

728x90
반응형