관리자는 아니지만 관리자는 아닙니다 root
. root
사용자가 모든 작업을 수행 할 수 있습니다. 관리자는로 작업을 수행root
할 수 있지만 일반적 으로 관리자가 수행하는 작업 은 없습니다 root
. 그렇게하면 자신의 시스템을 완전히 제어 할 수 있지만 사용하기로 선택한 경우에만 가능 합니다.
Ubuntu는 작업을 할 때 암호를 묻습니다 root
. 실제로 본인인지 확인하십시오.
사용자 계정 : 개인 및 기타
실제 사용자에게는이를 나타내는 사용자 계정이 있습니다. Ubuntu를 설치할 때 이러한 계정 중 하나를 만들었습니다. 그러나 모든 사용자 계정이 실제 사용자를 나타내는 것은 아닙니다 .
실제 사용자에게는 사용자 계정을 통해 능력이 부여 (거부)됩니다. 시스템을 사용하려면 사용자 계정을 사용해야합니다. 따라서 사용자 계정의 기능과 제한이 적용됩니다.
사용자 계정은 기능 및 제한 사항을 체계화하는 데에도 사용됩니다. 기계를 많이 사용하는 사람 이 아니라면 일부 사용자 계정 이 존재하므로 특정 프로그램이나 명령을 해당 자격 증명, 작업에 대한 올바른 능력과 제한이있는 자격 증명으로 실행할 수 있습니다.
예를 들어, www-data
웹 서버를 실행하는 경우 서버가 액세스 할 수있는 데이터를 소유하도록 사용자가 존재합니다. 실제 사용자는 해당 데이터를 확인하지 않고 변경할 수있는 권한을 부여받지 않아도되며 웹 서버는 웹 서비스에 불필요한 조치를 수행하도록 권한을 부여받을 필요가 없습니다. 결과적으로 웹 서버가 웹 서버의 모든 기능을 가지고 있고 웹 서버의 성능을 가진 일부 사용자가 웹 서버를 실행했을 때보 다 웹 데이터와 시스템의 나머지 부분 모두 우발적이거나 의도적 손상에 대해 더 안전합니다. 붙잡다).
가장 중요한 비인간 사용자 계정
수퍼 유저 그의 이름이다는 root
: 능력과 한계의 매우 구체적인 조합을 가진 인간이 아닌 사용자 계정 의 모든 능력과 제한 없음 .
root
의 허용 아무것도 할 수 있습니다. root
시스템 자체가 수행 할 수 없거나 이해할 수 없기 때문에 여전히 할 수없는 일이 있습니다. 그래서 root
할 수 있는 프로세스를 죽일 에서 무정전 잠을 , 또는 다음으로 이동, 이동에 바위가 너무 무거운하게 .
많은 중요한 시스템 프로세스는 같은 init
, 같은 실행 root
및 root
관리 작업을 수행하는 데 사용됩니다.
로 로그인 할 수 있습니까 root
?
root
비밀번호로 로그인 할 수 있도록 계정 을 구성 할 수 있지만 우분투에서는 기본적으로 활성화되어 있지 않습니다. 대신, 당신은 생각할 수 root
처럼되는 등 www-data
, lp
, nobody
, 그리고 다른 사람이 아닌 계정. (실행 cat /etc/passwd
하거나 getent passwd
모두 보려면)
휴먼 사용자는 자신의 사용자 계정으로 로그인 한 다음 다른 사용자 계정으로 일부 작업을 수행하는 경우 실제로 해당 사용자로 로그인 하지 않고 해당 ID로 해당 작업을 수행 합니다.
사람이 아닌 다른 사용자 (예 :)도 구성 할 수 있으므로 다른 사용자도 www-data
로그인 할 수 있습니다. 그러나 다른 유닉스 계열 OS에서는 root
터미널에서 로그인하는 것이 일반적 입니다. 전체 그래픽 인터페이스 root
를 실행할 때 root
와 같이 실행되도록 설계되지 않았 거나 제대로 작동하지 않을 수있는 그래픽 프로그램의 수와 결합 하여 root
소유 한 데스크탑 세션을 시도해서는 안됩니다 .
제발 참고로 로깅 동안 것을 root
우분투에서 기본적으로 사용되지는하는 얻을 수있는 방법이 있습니다 root
로 인증하지 않고 쉘을 root
비슷한 효과를 : 가장 일반적인이 sudo -s
나-i
, 복구 모드 와 유사한 기술 . (그것들이 무엇인지 모른다면 걱정하지 마십시오.) 이것은 실제로 로그인하지는 않습니다. 복구 모드에서는 root
로그인이 발생하기 전에됩니다. 에 sudo
기반 방법, 당신은 단지 루트로 쉘을 실행하고 있습니다.
관리자
우분투에서 관리자는 그들이 아니라 원하는대로 할 수있는 사용자입니다 root
, 그들이 그렇게 선택하면은 .
시스템 설정> 사용자 계정. "Eliah Kagan"은 관리자이므로 다음과 같은 작업을 수행 할 수 root
있지만 그렇지 않습니다root
.
저는 우분투 시스템의 관리자입니다. 프로그램을 실행할 때 일반적으로 다음과 같이 실행됩니다 ek
( "Eliah Kagan"은 ek
사용자 이름에 해당하는 전체 이름 입니다).
내가 AbiWord에 또는 LibreOffice와를 실행하면로 실행됩니다 ek
. Firefox, Chromium, Empathy 또는 Pidgin을 실행하면로 실행됩니다 ek
. 데스크탑 인터페이스를 제공하기 위해 실행되는 프로그램은로 실행됩니다 ek
.
그러나 나는 관리자이므로 관리 작업을 수행해야 할 경우 그렇게 할 수 있습니다.
수도
커맨드 라인에서 보통 sudo
다음과 같이 명령을 실행하는 데 사용 합니다 root
.
sudo command...
이것은 저를 묻는 메시지를 표시합니다 내 암호를 입력합니다. ( root
비밀번호 root
가 아니며 비밀번호 가 없습니다.)
- 관리자이므로 다음과 같은 작업을 수행 할 수 있습니다
root
. 기본 구성에서 비밀번호를 입력해야합니다.
- 관리자가 아닌 사용자는
root
비밀번호를 입력해도으로 작업을 수행 할 수 없습니다 . sudo
명령을 실행하는 사용자가 관리자가 아닌 경우 명령이 실패합니다.
관리자는 완벽하게 일반 사용자이기 때문에 제외 하는 등의 작업을 수행 할 수있는 능력에 대한 root
요구 명령 실행, root
아직 명령이 실행되는 경우를 제외하고, 실패 할 권한을 하면서root
.
sudo
관리 작업을 수행 하는 데 사용해야 하는 화면 . ( Randall Munroe의 "샌드위치" 를 기준으로 함 )
그래픽 적으로 sudo
그래픽 프로그램으로 실행할 수 있습니다 root
통해 대한 그래픽 프론트 엔드sudo
와 같은, gksu
/gksudo
와 kdesudo
. 예를 들어 GParted를 실행할 root
수 있습니다 gksudo gparted
. 그런 다음 암호를 그래픽으로 입력하라는 메시지가 표시됩니다.
그래픽으로 프롬프트가 표시되므로 터미널이 필요하지 않습니다. 관리 도구를 다음과 같이 실행하는 방법 중 하나입니다 root
.
폴킷
Polkit (한 번은 PolicyKit이라고도 함)은 관리자가 다음과 같은 작업을 수행하는 또 다른 방법입니다 root
. 프로그램은 작업을 수행하는 서비스에 액세스합니다. 때로는 작업이 전체 프로그램을 실행하고 있습니다. 때로는 행동이 더 제한적입니다.
요즘에는 많은 그래픽 시스템 관리 유틸리티가을 사용하지 않고 기본적으로 polkit을 사용하도록 설정되어 있습니다 sudo
.
이러한 유틸리티의 한 예는 소프트웨어 센터입니다. polkit을 최대한 활용하므로 사용자 는 권한 이 필요한 작업 을 수행 하려는 경우 에만 비밀번호를 입력 해야합니다 . (이는 기반 인증으로도 가능 하지만 달성하기가 더 어렵고 더 어렵습니다.)root
sudo
소프트웨어 센터에서 응용 프로그램을 찾고 읽을 수 있습니다. 비밀번호를 설치하려고 할 때 비밀번호를 묻는 메시지가 표시됩니다.
폴킷의 차이점
모든 그래픽 프로그램으로 실행할 수 있습니다 root
와 gksudo
다른 그래픽 sudo
프론트 엔드. ( 로 사용하도록 설계되었는지 여부에 따라 프로그램이 제대로 작동 하지 않을 수 있습니다 root
. 그러나 프로그램 시작 명령은로 실행됩니다 root
.)
polkit은 이제 sudo
Ubuntu의 응용 프로그램이 root
배후에서 작업을 수행하는 방식으로 GUI 프론트 엔드 보다 일반적이지만 , Polki는 root
구성 파일이있는 것처럼 그래픽 응용 프로그램 만 실행하고 수행 할 수있는 작업을 나타냅니다 .
그래픽이 아닌 Polkit
pkexec
polkit으로 프로그램을 실행하는 데 사용되는 명령입니다.
마찬가지로 sudo
, pkexec
비 그래픽 명령을 실행할 수 있습니다. (그리고 명령의 기능을 정의하는 구성 파일이 필요하지 않습니다 root
. 단순히 명령을로 실행합니다 .)
pkexec command...
pkexec
터미널에서 실행하더라도 암호를 그래픽으로 입력하라는 메시지가 표시됩니다 (이것은 동작이 gksudo
직선 실행 하는 것보다 더 유사한 방법 중 하나입니다 sudo
).
더 GUI가없는 경우 (- 예를 들어, 당신은에서 로그인하는 경우, 가상 콘솔 또는 텍스트 전용 SSH 세션 , 또는 GUI가 제대로 작동하지 않고 - 다음 pkexec
것이다 정상적으로 저하 명령 행에서 암호를 프롬프트 .)
인증이 성공적으로 수행되면 명령이 터미널에서 실행됩니다.
다른 사용자로 명령 실행 root
root
할 수있는 일을하기 때문에 특별합니다. 그러나 모든 계정과 같은 사용자 계정과 같은 명령을 실행하는 방법이다 root
와 sudo
(직접 또는 그래픽 프론트 엔드) 또는 폴킷 다른 사용자로 명령을 실행하기 위해 약간 수정 될 수있다 :
sudo -u username command...
gksudo -u username command...
pkexec --user username command...
뭐? sudo
먼저 입력 하세요? 보안은 어때?!
를 사용하여 명령을 실행하는 sudo
것은 일종의 교황 무 결실을 불러 일으키는 것과 같습니다 .
당신은 때 와 명령을 실행sudo
[교황 무류성 된 invoke] , 우분투 [가톨릭 사람들은] 수 있도록 열심히하려고 있는지 당신이있어 당신이 정말로 [정말 교황].
그렇습니다. 나는 교황의 완전성 (규범 적 일지라도)이 선언적이라는 것을 알고 있습니다. 평행이 완벽하지 않습니다.
같은 일을하려고 root
와 sudo
(또는 폴킷 것은) 큰 문제입니다 - 우분투 그냥 다른 시간에 모든처럼이 프로그램을 실행하여 해당 슬라이드를하자 않을 것입니다.
비밀번호를 묻는 메시지가 표시됩니다. (그러면 그렇게 한 것은 잠시 동안 기억되므로 시스템을 관리 할 때 암호를 계속 입력 할 필요가 없습니다.)
주의를 환기시키는 것 외에도 다음 두 가지 시나리오에 대비해 보호합니다.
- 누군가 이메일 또는 유사한 무해한 목적을 확인하는 것처럼 컴퓨터 또는 모바일 장치를 사용합니다. 여기에서 문서를 수정하거나 삭제할 수있는 등 여전히 피해를 줄 수 있습니다. 그러나 암호를 입력 할 수 없으므로 시스템을 관리 할 수 없습니다.
- 암호를 입력하지 않으면 시스템을 관리하지 않아야하는 프로그램이 그렇게 할 수 없습니다. 예를 들어, 웹 브라우저가 보안 버그에 의해 손상되어 악성 코드를 실행하는 경우 여전히 관리 작업을 수행 할 수 없습니다. 사용자를 생성 및 삭제하거나 설치된 프로그램
root
(LibreOffice와 같은 패키지 관리자가 설치 한 모든 프로그램 포함)을 수정하거나 시스템을 심층적으로 변경할 수 없습니다.
에 대해 들었습니다 su
. 그게 뭐야? 사용할 수 있습니까?
su
다른 사용자로 인증하고 명령을 실행하거나 대화식 쉘을 시작합니다. 를 사용할 수있는 사람 을 제한 할 수 su
있지만 실행중인 사용자의 비밀번호가 아니라 대상 계정의 비밀번호로 su
인증 합니다.
예를 들어, 실행 으로 사용자 이름 처럼 .su username -c 'command...'
command...
sudo -u username command...
그러나 username
와 같이 명령을 실행할 때 비밀번호sudo
를 입력 합니다 . username
와 같이 명령을 실행할 때 비밀번호su
를 입력 username
합니다 .
이후 su
수행 인증 대상 사용자 와 su
만 사용자로 명령을 실행할 수 있습니다 계정이 활성화됩니다 .
root
계정 (같은 www-data
과 nobody
) 기본적으로 비활성화되어 있습니다. 로 로그인 할 수있는 비밀번호가 없습니다 root
. 따라서 su
명령을로 실행 하는 데 사용할 수 없습니다 root
.
로그인 할 수있는 다른 사용자 (일반적으로 사람을 나타내는 시스템의 모든 사용자 계정을 포함)로 명령을 실행 하는 데 사용할 수 있습니다su
.
손님으로 로그인하면 전혀 사용할 수 없습니다 su
.
결합 su
및sudo
관리자가 아닌 사람도 관리자 권한 su
으로 실행할 수 있습니다 sudo
. (관리자로서 명령을 실행하려면 관리자 암호가 필요하기 때문에 이것은 정상입니다.) 즉, 제한된 사용자는 명령을로 su
실행 sudo
하기 위해 실행할 수 있습니다 root
. 이것은 다음과 같이 보일 수 있습니다 :
su username -c 'sudo command...'
이 방법으로 그래픽 프로그램을 실행 하려면 특별한주의가 필요합니다 .
하지 않을까요 su
로 명령을 실행하기 위해보다 안전한 방법이 될 root
?
아마 아닙니다.
사용자가 역할을해서는 안되는 경우 root
?
관리자 대신 제한된 사용자로 만드십시오.
관리자로 실행되는 프로그램이 시도 sudo
하면 root
어떻게됩니까?
sudo
암호없이 성공하도록 재구성하지 않으면 실패합니다.
root
최근 sudo
명령에서 피기 백 으로 실행해서는 안되는 프로그램을 사용할 수 없으므로 암호가 필요하지 않습니까?
이것은 성공하지 못할 것입니다. 요즘 대부분의 운영 체제 (우분투 포함)는 sudo
타임 스탬프가 특정 컨텍스트에만 적용되도록 기본적으로 구성되어 있습니다.
예를 들어, sudo ...
하나의 터미널 탭에서 실행 하고 성공적으로 인증 한 경우 sudo
다른 탭에서 (또는 관련없는 GUI 프로그램에 의해 실행되거나 가상 콘솔 또는 SSH 세션에서 실행되는 경우) 여전히 암호를 묻는 메시지가 표시됩니다. 그 직후에 실행 되더라도.
사용자 X로 실행되는 프로그램이 사용자 X의 비밀번호에 액세스 할 수 없습니까?
아니.
악의적 인 프로그램이 관리자로 실행될 수 있다면 관리자가 인증 sudo
하거나 폴킷 으로 입력 할 때 입력 한 내용을 "들어 볼"수 없습니까?
잠재적으로 그렇습니다. 그러나를 위해 입력 한 암호를 "들어 볼"수 su
있습니다.
누군가에게 내 비밀번호를 알려 주면 —
사람들에게 비밀번호를 알려주지 마십시오.
누군가 나를 대신하여 무언가를 수행하기 위해 내 비밀번호를 알고 있어야하지만 시스템 관리를 허용하지 않으려면 어떻게해야합니까?
이상적으로는 필요한 작업을 수행 할 수있는 별도의 사용자 계정이 있어야합니다. 예를 들어, 계정간에 파일을 공유하여 여러 사용자가 해당 파일에 쓸 수 있도록 허용하면서도 다른 사용자에 대한 액세스는 거부 할 수 있습니다.
그러나 신뢰도가 낮은 사람이 귀하의 계정을 공유하도록 허용 된 상황에서는 제한된 사용자 계정이어야합니다. 이 목적을 위해 별도의 계정을 만들 수 있습니다 (이는 귀하와 다른 기능을 원하는 다른 사람의 계정 인 경우 다른 계정이어야 함).
그래서, 가장 안전한 것은 모두 허용하는 것입니다 sudo
및 su
및 메이크업 사람들로 로그인 root
수동?
아니요, 사람들이 root
전혀 로그인하지 못하게하는 것과 관련된 심각한 단점이 있기 때문 입니다. 가능할 때마다 최대한 적은 수의 작업을 수행해야합니다 root
. 시스템 관리와 관련된 대부분의 작업 (예 : 사용자 구성 및 로그 읽기)은 일반적으로 root
권한이 필요하지 않습니다 .
또한, 마찬가지로 잠재적 그들이 실행하면 악성 프로그램이 어떤 사람의 유형을 볼 수 있었다 sudo
거나 su
, 또는 가짜 생성 sudo
/ su
프롬프트에서 암호를 잠재적으로 악성 프로그램도 가짜 로그인 화면을 만들 수 있습니다.
사용자를 관리자로 만드는 것은 무엇입니까?
그룹 멤버십.
Ubuntu 12.04 이상 에서 관리자는이라는 그룹의 구성원입니다 sudo
.
Ubuntu 11.10 이하에서는 관리자 가라는 그룹의 구성원입니다 admin
.
12.04 이전의 Ubuntu 시스템을 12.04 이상으로 업그레이드하면 해당 admin
그룹은 이전 버전과의 호환성을 위해 유지되지만 사용자에게 관리 권한을 계속 부여하지만 sudo
그룹도 사용됩니다.
제한된 사용자 계정
관리자 계정 대신 제한된 사용자 계정을 사용할 수 있습니까?
당신이 좋아한다면, 물론. 시스템 설정 > 사용자 계정 에서 제한된 사용자 계정을 생성하고 해당 사용자로 로그인하십시오.
관리자 계정을 제한된 사용자 계정으로 만들 수 있습니까?
예, sudo
and admin
그룹 에서 제거 하십시오 (위 참조).
그러나 다른 관리자 계정이 하나 이상 있어야 시스템을 관리 할 수 있습니다. 없는 경우 복구 모드 또는 라이브 CD로 부팅하고 일부 사용자를 다시 관리자로 만들어야합니다 . (이는 분실 한 관리자 암호 를 재설정하는 것과 유사 합니다 .)
사용자 및 그룹을 관리하기위한 그래픽 도구를 사용하면 일반적으로 관리자가없는 시스템을 만들거나 최소한 경고하지 않아도됩니다. 명령 줄 도구는 일반적으로 수행하지 않습니다 (무엇을하고 있는지 알고 있음).