반응형

서버를 관리하며 보안의 중요성을 조금.. 느끼죠

이따금 필요하지만 불편하기도 한 것이 보안이라고 생각합니다. 

 

오늘은 일반 계정에 su 명령 제한을 두는 방법과, 사용하는 방법에 대해 끄적여봅니다. 

su 명령은 기본적으로 특정 사용자에게만 권한을 주는 것이 보안상 옳습니다.

 

저도 서버를 관리하며 특정 사용자에게만 권한을 주고 있는데요, 

패스워드 임계치 설정까지 해놔서.. 많이 틀리는 날에는.... 마음이 좀 그래요 .. -.- 

 

아무튼 보안 조치는 한 번 해봐야 하니, 진행해보죠 

 

--------------------------------------------------------------------------------------------------------------------

1. 취약점 : 무작위 대입 공격이나 패스워드 추측 공격을 방지하기 위해 특정 사용자에게만 su 접근 권한을 제공할 필요가 있다

2. 조치방법 : 

   a. group에 특정 사용자 지정

         # vi /etc/group

            wheel:x:10:seoyoung

    b. 취약점에 대한 조치 

         # chmod 4750 /usr/bin/su

         # ls -altr /usr/bin/su

           -rwsr-x---root root /usr/bin/su

    c. su 명령어 사용그룹(허용된 그룹) 설정 여부 확인

         #cat /etc/pam.d/su

               auth required /lib/security/pam_wheel.so debug group=wheel 

               

3. 결과 (조치 후 영향)
   : 허용된 그룹에서만 su 명령어를 사용할 수 있다

-------------------------------------------------------------------------------------------------------------------

 

결론만 말씀드리면, 

 

CentOS 조치 방향을 ubuntu 서버에 해당 내용을 조치하여 모든 계정에서 root 권한을 가질 수 없게 되는 상황이 발생해버렸어요... :( 

 

$ su -

Password:

su: authentication failure

 

root로 접속 중인 세션이 있었어서.. 참 다행이었죠 

일반 상황이었다면, root passwd를 설정해준다면 재접속이 가능하실 겁니다 

 

명령어는, 

# passwd root

new password: 설정 할 패스워드

Retype new password: 한 번 더 입력

 

다시 본론으로 돌아가, 아래 내용을 확인해봅니다 

    1. /etc/group 내 wheel 그룹에 일반 계정이 포함되어 있다

         wheel:x:10:seoyoung

    2. /etc/pam.d/su 폴더 내 아래 내용이 기입되어 있다

         auth required /lib/security/pam_wheel.so debug group=wheel 

 

위 두가지 내용이 적용 된 후 , su 파일 권한을 확인해보니  chmod 4750이 그대로 적용되있음을 확인했고, 여전히 접근이 안되죠...

 # ls -altr /usr/bin/su

    -rwsr-x---root root /usr/bin/su

 

이 상태라면 wheel 그룹에 포함되지 않은 일반 사용자가 /usr/bin/su 를 이용할 수 없는 것이 정상인 상태입니다만...ubuntu는 아니랍니다... 

 

 

 

여기서 잠시, chmod 는 파일의 접근 권한을 설정하게 되는 명령어인데요. 

기호 또는 숫자로 권한을 설정하곤 하죠, 

https://habiis.tistory.com/11?category=701517

 

[LINUX] 권한 관리 명령어 정리

리눅스에는 다양한 사람들이 접근할 수 있기때문에 모두가 수정 및 삭제가능 그렇기 때문에 계정, 그룹, 파일에 권한을 쓸 수 있도록 설정할 수 있음 읽기(Read), 쓰기(Write), 실행(eXecute) 권한을 줄 수 있고,..

habiis.tistory.com

그런데 여기서는 chmod 4750 4자리의 숫자로 권한을 입력합니다. 

4자리로 권한을 제공하는 SUID, SGID, Sticky bit 설정에 대해서는 추후 끄적여볼게요

 

자꾸 다른길로 .. 

 

 

이제 특정 사용자도 su 접근을 허용해줘봅시다 T.T  

#chmod 4755 /usr/bin/su

#chown root.wheel /usr/bin/su

# ls -altr /usr/bin/su

    -rwsr-xr-x root wheel /usr/bin/su

 

이젠 root와 wheel 그룹에 속한 일반 계정이 su 권한을 사용할 수 있어요

제 wheel 그룹엔 seoyoung 계정이 들어있으므로 해당 계정으로만 접근 할 수 있습니다 :) 

 

* chmod 4755를 사용하는 이유

  : su 의 password 입력 시, 잠시 root 권한을 가지고 shadow 패스워드와 비교를 하게 되는데, 755일 경우 shadow 파일을 읽어내지 못함

    기본적으로 shadow 파일은 아무 권한도 가지지 않기 때문에 su를 755 설정할 경우, shadow도 755설정을 하여 계정이 읽을 수 있도록

    허용이 필요하나, 보안의 문제가 있어 chmod 4755를 권고함

 

 

 

 

su 접근 못한다고 속상해하지맙시다 

언제나 문제는 해결되기 마련 :) 

 

 

 

.... 

 

 

해제하는 방법

끝!! 

[출처] https://habiis.tistory.com/55

728x90

+ Recent posts