sudo와 su의 차이점은 무엇입니까?

며칠 전 나는 일반 블로그 독자이자 강박적인 댓글 작성자 인 Miguel으로부터 정확히 차이점은 무엇입니까 sudo는 y su. 특히 Miguel은 한 방법이 다른 방법보다 안전한지에 대해 우려했습니다. 내가 읽은 일이 발생합니다 sudo는 충분히 안전하지 않았습니다 더 많은 것을 알고 싶었습니다. 이것은 더 많은 기사를 요청한 사람들을위한 또 다른 글입니다. 터미널 미스터리.

Su

프로그램 su 현재 세션에서 로그 아웃하지 않고 다른 사용자의 셸을 사용할 수 있습니다. 일반적으로 시스템에서 로그 아웃했다가 다시 들어 가지 않고도 관리 작업에 대한 루트 권한을 얻는 데 사용됩니다. GNOME 및 KDE를 포함한 일부 데스크탑 환경에는 사용자가 일반적으로 그러한 액세스가 필요한 명령을 실행하도록 허용하기 전에 그래픽으로 암호를 요청하는 프로그램이 있습니다.

su라는 이름은 영어에서 유래했습니다. s대신하다 ube (대체 사용자). 그것을 파생시키는 사람들도 있습니다 s위퍼user (수퍼 유저, 즉 루트 또는 관리자 사용자)는 일반적으로 시스템 관리자의 역할을 채택하는 데 사용되기 때문입니다.

달리면 su 액세스하려는 계정의 비밀번호를 묻고 승인되면 해당 계정에 대한 액세스 권한을 부여합니다.

[guy @ localhost] $ 암호 : [root @ localhost] # 종료 로그 아웃 [guy @ localhost] $

사용자를 입력하지 않으면 관리자 권한으로 액세스됩니다. 그러나 다른 사용자 이름을 매개 변수로 전달할 수도 있습니다.

[guy @ localhost] $ su mongo 비밀번호 : [mongo @ localhost] # 종료 로그 아웃 [guy @ localhost] $

암호를 입력하면 다른 사용자 인 것처럼 명령을 실행할 수 있습니다. 서면으로 출구, 우리는 사용자에게 돌아갑니다.

널리 사용되는 변형은 su 대시가 뒤 따릅니다. 따라서 루트로 로그인하려면 다음을 입력해야합니다. su - 다른 사용자로 로그인하려면 귀하의-다른 사용자. 스크립트 사용 여부의 차이점은 무엇입니까? 해당 사용자로 로그인하는 것을 시뮬레이트하므로 스크립트를 사용하는 것이 좋습니다. 따라서 해당 사용자의 모든 시작 파일을 실행하고 현재 디렉토리를 해당 사용자의 HOME으로 변경하고 일부 시스템 변수의 값을 변경하여 새 사용자 (HOME, SHELL, TERM, USER, LOGNAME 등)에 맞게 변경합니다. 기타 더 많은 것들.

시스템 관리자는 루트 / 관리자 계정의 암호를 선택할 때 권한이없는 사용자의 공격을 방지하기 위해 매우주의해야합니다. su. 일부 유닉스 계열 시스템에는 다음과 같은 사용자 그룹이 있습니다. 바퀴, 실행할 수있는 유일한 사람으로 구성됩니다. su. 이는 침입자가 단순히 해당 계정 중 하나를 인수 할 수 있으므로 보안 문제를 줄이거 나 줄이지 않을 수 있습니다. 그 su 그러나 GNU는 해당 그룹의 사용을 지원하지 않습니다. 이것은 철학적 인 이유로 이루어졌습니다.

수도

라는 관련 명령 sudo는, 다른 사용자로 명령을 실행하지만 사용자가 다른 사용자를 대신하여 어떤 명령을 실행할 수 있는지에 대한 일련의 제한 사항을 준수합니다 (일반적으로 파일에 지정됨). / etc / sudoers).

반면에 su, sudo는 사용자에게 필요한 사용자 대신 자신의 암호를 입력하라는 메시지를 표시합니다. 이를 통해 암호를 공유하지 않고도 다른 컴퓨터의 사용자에게 명령을 위임 할 수 있으므로 터미널을 방치 할 위험이 줄어 듭니다.

Sudo 문제 : 유예 기간

장점 sudo는 ~에 관해서 su 현재 사용자를 실제로 변경하지 않고 다른 사용자 인 것처럼 가장하여 요청 된 명령 만 실행한다는 것입니다. 이것은 관리자로서 명령을 실행할 수 있고 다음 순간에는 이전에 사용했던 사용자의 권한을 갖게 될 것임을 의미합니다.

일부는 보안 위반으로 sudo는 사용자가 명령 실행 후 명령 앞에 sudo와 암호를 반복적으로 입력 할 필요없이 다른 사용자로 명령을 실행할 수 있도록 "유예 기간"을 부여합니다. 그 "유예 기간"이 지나면 sudo는 비밀번호를 다시 묻습니다.

이것은 본질적으로 우리가 sudo 암호를 입력하고 "유예 기간"이 활성화되어있는 동안 누군가가 우리 컴퓨터를 장악 할 수 있기 때문에 "나쁜"것입니다.

다행히도 "유예 기간"을 비활성화하여 시스템 보안을 향상시킬 수 있습니다. 파일에 한 줄만 추가하면됩니다. / etc / sudoers:

sudo nano / etc / sudoers

그리고 파일 끝에 다음 줄을 추가합니다.

기본값 : ALL timestamp_timeout = 0

변경 사항은 시스템을 다시 시작할 필요없이 즉시 적용됩니다.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   헬크

    실제로 sudo로 관리자 권한으로 들어가서 su-처럼 거기에 머물 수 있다면 다음과 같이 작성해야합니다 : sudo -s 따라서 현재 사용자를 변경하고 유예 시간을 농담으로 남겨 둘 수 있습니다 (당신은 이것은 당신이 원하는만큼)

  2.   미켈 마욜 이 투르

    언급 해주셔서 감사합니다.하지만 실제 크레딧은 Sabayon 채팅으로 이동합니다. 하드 드라이브가 고장 났기 때문에 더 이상 사용하지 않고 Ubuntu로 돌아가는 것을 선호했습니다.

    그들이 내게 준 이유는 때때로 sudo 특정 구성을 할 때 절대 권한을 얻지 못하고 잘못 구성된 상태로 남아 있기 때문입니다. 업데이트 및 유지 관리 작업을 위해 su를 루트로 "로그인"하면 이러한 일이 발생하지 않습니다.

    그런 다음 나에게 중요하지 않은이 발견을 공유하겠다고 약속했기 때문에 이메일을 보냈습니다.

    Ubuntu는 기본적으로 루트 사용자없이 설치되므로

    "수도 암호 루트"

    암호를 입력하고 확인한 후
    "수 루트"
    유지 보수 작업을 위해 각 주문에 sudo를 넣는 것을 피할 수 있습니다.

    원칙적으로 Ubuntu에서는 루트 계정이 제거되어 항상이 계정으로 로그인하는 것은 아니지만 sudo를 사용하는 것이 신성 모독이라는 어조로 거의 충고를 받았기 때문에 내가 그것을 따랐을 경우를 대비하여.

  3.   Nill 포인터

    / etc / shadow 파일에 액세스하여 루트 비밀번호의 해시를 일반 사용자 비밀번호의 해시로 변경 한 다음 루트에 대한 비밀번호 변경을 수행 할 수 있습니다. 다른 시간에 나는 똑같이 시도한다….

  4.   Linux를 사용합시다

    맑은. Fedora에만 국한되지 않습니다.

  5.   mfcollf77

    그래서 둘 중 하나를 설치할 수 있습니까?

  6.   디에고 키 사이 알바 갈라 트

    아주 좋은 정보, 이것으로 많은 사람들의 의심은 사라질 것입니다. 왜냐하면 나는 그 의심을 가지고있는 몇몇을 알고 있기 때문입니다.

  7.   알렉스

    우분 토에서는 su 명령을 사용할 수 없다는 것을 기억합니다 (루트 사용자로 입력)

  8.   하잔 페레즈

    음, 루트 암호 (사실 다른 암호)를 "복구"하려면 John The Ripper를 사용하여 시스템 암호 파일에 "공격"을 할 수 있습니다. 나는 이것에 대해 더 이상 말하지 않을 것입니다.

    다른 방법이있을 수 있습니다. "sudo su"를 입력 한 다음 "passwd"명령을 입력하여 암호를 변경할 수 있습니다. 다른 사람들이 어떻게 반응하는지 보는 것은 흥미로울 것입니다.

  9.   Linux를 사용합시다

    정확히!

  10.   Linux를 사용합시다

    맞아요 ... 미구엘 마욜이 투르에게 감사 드려야합니다 ... 그는 아이디어를 가진 사람이었습니다. 🙂
    건배! 폴.

  11.   보스

    항상 큰 공헌을 해주셔서 감사합니다.

  12.   Linux를 사용합시다

    감사합니다 보스! 포옹! 폴.

  13.   제로니모 나 바로

    'su'와 'sudo'의 차이점은 'do'입니다.

  14.   에릭

    루트 암호를 잊어 버렸습니다. 운 좋게도 sudo를 사용할 수 있고, su를 사용하려면 'sudo su'를 사용하고 패스 (?)를 묻지 않습니다.
    누구든지 루트 암호를 찾는 방법을 알고 있습니까 (나는 sudo를 통해 루트에 액세스 할 수 있습니다)?

    1.    Marvergarab

      sudo 암호

  15.   Linux를 사용합시다

    하아! 매우 영리한!

  16.   파비안 파이스

    루트 암호를 복구하려는 사람은 "sudo passwd root"가되며 새 암호를 입력하라는 메시지가 표시됩니다.

  17.   알렉스-필로쿠@htmail.com

    안녕 너의 삶은 어때

  18.   신플래그

    죄송하지만 다음과 같이 su 명령을 사용하십시오.

    su -c "command"는 유예 기간없이 sudo를 사용하는 것과 같습니다. 나는 sudo가 필요하지 않다.

    sudo의 실제 사용은 특정 사용자에게이 명령 또는 해당 명령을 사용할 수있는 기능을 제공하는 것입니다. 이는 회사에서 더 많이 사용되므로 su로 수행 할 수없는 작업 인 chroot를 수행 할 필요가 없습니다.

  19.   야 카르 디스

    친애하는 저는 Linux TP를 수행해야하며 몇 가지 간단한 질문에 답해야합니다. 그들이 나를 도울 수있을 것입니다. 지금부터 감사합니다.

    데비안 패키지를 설치 / 삭제 / 수정할 수있는 명령은 무엇입니까?
    설치를보다 쉽게 ​​관리 할 수있는 명령은 무엇입니까?
    데비안 패키지?
    rpm 패키지를 설치할 수있는 명령은 무엇입니까?
    패키지를 제거하려면 어떤 옵션을 사용합니까?
    yum 저장소가있는 디렉토리는 무엇입니까?
    yum은 무엇입니까?
    yum으로 패키지를 검색하려면 어떤 옵션을 사용합니까?
    패키지를 삭제하려면 어떤 옵션을 사용합니까?
    시스템을 업데이트하기 위해 어떤 옵션을 사용할 수 있습니까?
    허가증을 식별하는 문자는 무엇입니까?
    그들 각각은 무엇을 의미합니까?
    파일의 권한을 나열하는 명령은 무엇입니까?
    권한이 구분되는 세 그룹은 무엇입니까?
    권한을 구현하는 방법에는 어떤 두 가지가 있습니까?
    허가증은 어떤 번호 체계를 사용합니까?
    이 글자의 무게는 얼마입니까?
    특별 허가 란 무엇입니까?
    기존 특수 권한은 무엇이며 사용자는 무엇을 사용합니까?
    권한을 변경하려면 어떤 명령을 사용해야합니까?
    파일에 실행 권한을 부여하기 위해 어떤 매개 변수를 사용해야합니까?
    그룹에만 읽기 권한을 부여하는 데 사용되는 매개 변수는 무엇입니까?
    다른 그룹에게 읽기 / 쓰기 권한을 부여하고 파일을 소유 한 사용자로부터 쓰기를 제거하기 위해 어떤 매개 변수가 사용됩니까?
    파일 및 디렉토리에 대해 기본적으로 생성되는 권한은 무엇입니까?
    이를 확인하기 위해 어떤 명령을 사용합니까?
    기본 마스크는 어떻게 변경합니까?
    마스크를 다르게 사용하려면 어떻게해야합니까? (모든 권한을 소유자에게만 남겨 두는 기본 마스크를 사용하십시오.)
    프로세스를 나열하는 명령은 무엇입니까? 다른 매개 변수와 그 사용을 언급하십시오.
    모든 것을 시작하는 과정은 무엇입니까?
    로그인 한 사용자에 해당하는 프로세스를 나열합니다.
    시스템의 모든 프로세스를 나열합니다.
    추가 정보를 얻으려면 어떤 옵션을 사용해야합니까?
    터미널에서 사용중인 모든 프로세스 나열
    프로세스 및 해당 종속성을 나열하는 옵션은 무엇입니까?
    부모-자녀 프로세스가 무엇이며이를 식별하는 방법을 설명하십시오.
    어떤 명령이 트리 형태로 프로세스를 나열합니까?
    실시간으로 프로세스를 모니터링하는 명령은 무엇입니까?
    하나의 프로세스 만 모니터링
    메모리 사용량을 표시하는 명령은 무엇입니까?
    메모리를 메가 바이트 단위로 표시하는 매개 변수는 무엇입니까?
    간격으로 어떤 매개 변수를 사용합니까?
    팀이 작동하는 시간에 대한 정보를 표시하는 명령은 무엇입니까?
    프로세스를 종료하려면 어떤 명령을 사용해야합니까?
    이러한 프로세스는 마무리를 위해 무엇을 처리합니까?
    가장 일반적인 신호 유형은 무엇입니까?
    지원되는 신호 유형을 나열하십시오.
    터미널에서 vi 테스트를 수행 한 다음 다른 터미널로 이동하여 프로세스를 찾아 15 신호로 종료합니다.
    신호 9와 15의 차이점은 무엇입니까?
    기본적으로 작동하는 것은 무엇입니까?
    프로세스가 백그라운드에서 실행되는 이유는 무엇입니까? 그리고 전경?
    vi 테스트를 실행 한 다음 ctrl + z를 누르십시오.
    vi 테스트, ctr + z, 4 회 반복, 실패한 것을 어떻게 완료합니까?
    프로세스 중 하나를 포 그라운드로 전달하고 vi를 닫습니다.
    쉘을 차지하지 않도록 명령의 어떤 매개 변수를 실행합니까?
    이미 실행중인 프로세스의 우선 순위를 수정하는 명령은 무엇입니까? 실행중인 터미널의 우선 순위를 어떻게 변경 하시겠습니까?
    어떤 레벨 값이 있으며 계층 구조는 무엇입니까?
    / etc / passwd 파일을 열고 어떤 우선 순위 수준이 있는지 확인하십시오.
    우선 순위 수준을 4로 변경 한 다음 25로 변경하십시오. 둘 다 할당 할 수 있습니까? 왜?
    우선 순위 값과 함께 프로세스를 나열하십시오.
    실행중인 모든 프로세스를 모니터링하는 명령은 무엇입니까?

  20.   등등

    안녕하세요, 저처럼 sudo를 비활성화하고 싶습니다.
    xxx의 [sudo] 비밀번호 :
    xxx는 sudoers 파일에 없습니다. 이 사건은보고 될 것입니다.

    비활성화하면 데비안에서 su를 사용하기 때문에

    1.    리눅스를 사용하자

      안녕하세요 ecc!

      이 질문을 우리의 질의 응답 서비스에서하시면 더 좋을 것 같습니다. 구하라 DesdeLinux 커뮤니티 전체가 문제 해결에 도움을 줄 수 있습니다.

      안아줘, 파블로

  21.   베르 톨도

    안녕하세요. Linux Mint에서 하드 디스크 온도 명령을 사용했습니다 : 'sudo hddtemp / dev / sda', 암호를 요청하고 예상 결과를 제공합니다.
    그러나 동일한 터미널 'hddtemp / dev / sda'에서 실행하면 Permission Denied라고 알려줍니다.
    그래서 유예 기간이 작동하지 않는 이유는 무엇입니까?

  22.   베르 톨도

    안녕하세요 블로그.
    또한 배포판이 설치 될 때 (예 : ubuntu, linux mint) 관리자 암호를 요구한다는 것을 발견했습니다.
    그리고 제어 센터 그래픽 인터페이스에서 사용자 암호를 변경하는 옵션을 사용했습니다.
    이제 "su-"를 사용하면 현재 사용자가 아니라 배포판을 설치할 때 사용한 암호를 묻습니다. 여전히 루트 또는 관리자 사용자입니다.
    이로 인해 많은 사용자가 실제 관리자 암호를 잊어 버릴 수 있습니다.

  23.   켄달 다 빌라

    안녕하세요, 귀하의 설명은 훌륭하고 매우 명확하며 간결하고 간결합니다. 입력 해 주셔서 감사합니다