Linux 의 sudo 와 그 프로필/etc/sudoers 의 상세 한 설정 을 자세히 설명 합 니 다.
1. sudo 소개
sudo 는 Liux 에서 일반 사용자 가 슈퍼 사용자 권한 을 사용 할 수 있 도록 하 는 도구 로 시스템 관리자 가 일반 사용자 에 게 halt, reboot, su 등 일부 또는 모든 루트 명령 을 실행 하도록 허용 합 니 다.이렇게 하면 루트 사용자 의 로그 인 과 관리 시간 을 줄 일 뿐만 아니 라 안전성 도 향상 시 켰 다.Sudo 는 셸 에 대한 대체 가 아니 라 모든 명령 을 대상 으로 합 니 다.
그것 의 특성 은 주로 이런 몇 가지 가 있다.
§ sudo 는 사용자 가 특정한 호스트 에서 만 명령 을 실행 하 는 것 을 제한 할 수 있 습 니 다.
술부 수 도 는 다양한 로 그 를 제공 하여 모든 사용자 가 무엇 을 했 는 지 상세 하 게 기록 했다.중앙 호스트 나 로그 서버 에 로 그 를 전송 할 수 있 습 니 다.
§ sudo 는 시간 스탬프 파일 을 사용 하여 유사 한 '검표' 시스템 을 실행 합 니 다.사용자 가 sudo 를 호출 하고 비밀 번 호 를 입력 할 때 사용 자 는 생존 기간 이 5 분 인 표를 얻 었 습 니 다 (이 값 은 컴 파일 할 때 변경 할 수 있 습 니 다).
술부 sudo 의 설정 파일 은 sudoers 파일 로 시스템 관리자 가 사용자 의 사용 권한 과 사용 하 는 호스트 를 집중 적 으로 관리 할 수 있 도록 합 니 다.이것 이 저장 하 는 위 치 는 기본적으로/etc/sudoers 입 니 다. 속성 은 0411 이 어야 합 니 다.
2. 설정 파일/etc/sudoers
주요 설정 파일 은 sudoers 입 니 다. Liux 에 서 는 보통/etc 디 렉 터 리 에 있 습 니 다. solaris 라면 sudo 를 설치 하지 않 고 컴 파일 설치 후 디 렉 터 리 를 설치 하 는 etc 디 렉 터 리 에 있 습 니 다. 그러나 sudoers 파일 이 어디 에 있 든 sudo 는 이 파일 을 편집 하 라 는 명령 을 제공 합 니 다. visudo 는 이 파일 을 수정 합 니 다.이 명령 을 사용 하여 sudoers 를 수정 하 는 것 을 강력 히 추천 합 니 다. 파일 설정 이 올 바른 지 확인 하 는 데 도움 이 될 것 입 니 다. 올 바 르 지 않 으 면 종료 할 때 어떤 설정 이 잘못 되 었 는 지 알려 줍 니 다.
본론 으로 들 어가 서 sudoers 를 어떻게 설정 하 는 지 소개 합 니 다.
우선 sudoers 의 부족 한 설정 을 쓰 십시오:
#############################################################
# sudoers file.
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the sudoers man page for the details on how to write a sudoers file.
#
# Host alias specification
# User alias specification
# Cmnd alias specification
# Defaults specification
# User privilege specification
root ALL=(ALL) ALL
# Uncomment to allow people in group wheel to run all commands
# %wheel ALL=(ALL) ALL
# Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
# Samples
# %users ALL=/sbin/mount /cdrom,/sbin/umount /cdrom
# %users localhost=/sbin/shutdown -h now
##################################################################
1. 가장 간단 한 설정 으로 일반 사용자 슈퍼 port 가 루트 의 모든 권한 을 가지 도록 합 니 다.
visudo 를 실행 하면 부족 한 설정 이 하나 밖 에 없 음 을 볼 수 있 습 니 다.
root ALL=(ALL) ALL
그럼 아래 에 설정 을 하나 더 추가 하 세 요.
support ALL=(ALL) ALL
이렇게 하면 일반 사용자 슈퍼 port 는 루트 권한 의 모든 명령 을 실행 할 수 있 습 니 다.
support 사용자 로 로그 인 한 후 실행:
sudo su -
그리고 슈퍼 port 사용자 의 비밀 번 호 를 입력 하면 루트 사용자 로 전환 할 수 있 습 니 다.
2. 일반 사용자 슈퍼 port 는 몇 대의 서버 에서 만 루트 가 실행 할 수 있 는 일부 명령 을 수행 할 수 있 도록 합 니 다.
우선 Alias 를 설정 해 야 합 니 다. 이렇게 하면 아래 에서 권한 을 설정 할 때 편리 할 것 입 니 다. 큰 단락 의 설정 을 쓰 지 않 아 도 됩 니 다.Alias 는 주로 4 가지 로 나 뉘 어 져 있 습 니 다.
Host_Alias
Cmnd_Alias
User_Alias
Runas_Alias
1) 호스트 설정Alias: 호스트 목록 입 니 다.
Host_Alias HOST_FLAG = hostname1, hostname2, hostname3
2) Cmnd 설정Alias: 실행 가능 한 명령 의 목록 입 니 다.
Cmnd_Alias COMMAND_FLAG = command1, command2, command3
3) 사용자 설정Alias: sudo 권한 을 가 진 사용자 의 목록 입 니 다.
User_Alias USER_FLAG = user1, user2, user3
4) 설정 RunasAlias: 사용자 가 어떤 신분 으로 실행 하 는 지 (예 를 들 어 루트 나 Oacle) 의 목록 입 니 다.
Runas_Alias RUNAS_FLAG = operator1, operator2, operator3
5) 설정 권한
설정 권한 의 형식 은 다음 과 같 습 니 다.
USER_FLAG HOST_FLAG=(RUNAS_FLAG) COMMAND_FLAG
암호 인증 이 필요 하지 않 으 면 이 형식 으로 설정 합 니 다.
USER_FLAG HOST_FLAG=(RUNAS_FLAG) NOPASSWD: COMMAND_FLAG
설정 예시:
############################################################################
# sudoers file.
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the sudoers man page for the details on how to write a sudoers file.
#
# Host alias specification
Host_Alias EPG = 192.168.1.1, 192.168.1.2
# User alias specification
# Cmnd alias specification
Cmnd_Alias SQUID = /opt/vtbin/squid_refresh, /sbin/service, /bin/rm
# Defaults specification
# User privilege specification
root ALL=(ALL) ALL
support EPG=(ALL) NOPASSWD: SQUID
# Uncomment to allow people in group wheel to run all commands
# %wheel ALL=(ALL) ALL
# Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
# Samples
# %users ALL=/sbin/mount /cdrom,/sbin/umount /cdrom
# %users localhost=/sbin/shutdown -h now
##################################################
읽 어 주 셔 서 감사합니다. 여러분 에 게 도움 이 되 기 를 바 랍 니 다. 본 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.