Development/OS

[Linux] sudo 로그인 시 패스워드 입력 없이 권한얻기

반응형

대부분 리눅스 운영체제를 처음 설치하고 유저를 생성한 뒤 sudo su - 혹은 sudo -s 로 루트 권한을 받으려 할 때

루트의 패스워드를 다시 묻는 경우가 발생하게 된다.


하지만 대부분의 서버.. 는(물론 루트의 패스워드를 따로 관리해서 매번 패스워드를 치는게 보안상 더 바람직 하긴 하나)

그렇게 크리티컬한 서버가 아닐경우 패스워드 입력 없이 루트권한을 받아야 하는 경우도 있다


음.. 앞단에서 방화벽 장비가 막아주거나, 특별히 보안 상 위협이 없을 것이라고 판단할 경우에만 사용하는 것을 권장한다.


거두절미하고 방법은


/etc/sudoers 파일을 수정하는 것이다


이 파일에는 sudo 로 권한을 얻고자 하는 유저들의 권한에 관련된 정보가 담겨 있다



#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL
game_admin ALL=(ALL:ALL) NOPASSWD:ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d


필자의 가상서버에는 이렇게 구성이 되어 있는데,

보다시피 game_admin 계정에 대해서는 NOPASSWD:ALL 이라는 권한이 부여 되어 있는데


sudo 로 권한을 루트로 바꾸고자 할 때 패스워드를 따로 물어보지 않겠다는 의미이다.


본인이 사용하는 계정을 이 부분에 추가하면 된다

(당연히 root 로 접근해서 수정해야 한다. 원래는  read-only 파일이다)

반응형