루트를 비활성화하고 새 사용자 Ubuntu 20.04를 생성하여 애플리케이션 실행/설치

루트를 비활성화하고 새 사용자 Ubuntu 20.04를 생성하여 애플리케이션 실행/설치

루트 사용자를 비활성화하고 새 사용자를 생성하라는 기사가 많이 있습니다. 한 가지 이유는 이 계정이 root봇이 쉽게 타겟팅할 수 있는 알려진 계정이기 때문입니다.

그래서 관리자 권한을 가진 새로운 사용자를 생성해야 합니다. 이렇게 하면 이것이 정확히 같은 것입니까 root?

MongoDB, NodeJS, PM2, Certbot을 설치해야 합니다. 지난번에 이 작업을 수행했을 때 문제가 발생하여 결국 다시 문제가 발생했습니다 root. 문제는 소프트웨어 설치 및 실행 방법과 관련된 것 같습니다.

이제 새 버전이 있어서 다시 시도하고 싶습니다. 현재 SSH 루트 액세스 및 루트 비밀번호가 활성화되어 있으며(백업) 필요에 따라 새 계정을 만들 준비가 되어 있습니다.

소프트웨어를 설치하려면 어떤 계정을 사용해야 하며, 소프트웨어를 실행하려면 어떤 계정을 사용해야 합니까?

그리고 사용자가 생성되면 홈 폴더에 폴더가 생성되는데 여기에 노드 앱을 추가해야 하나요?

나는 유일한 관리자가 될 것입니다. (즉, 조직에서 사용되지 않습니다) 이것이 변화를 가져올까요?

답변1

root먼저, 발생할 수 있는 오해를 명확히 하기 위해 사용자를 비활성화하면 해당 사용자로 로그인할 가능성도 비활성화되는 것을 권장합니다 root. 이는 시스템에서 사용자를 "제거"하는 것을 의미하지 않습니다 root(불가능). 대신, "신뢰할 수 있는" 일반 사용자(일반 사용자 계정이거나 이 목적으로 생성한 전용 계정일 수 있음)가 루트 권한으로 명령을 실행할 수 있도록 허용하는 것이 아이디어입니다.

1. 일반 사용자를 루트로 만듭니다.

2단계로 진행하기 전에 반드시 이 작업을 수행하세요!

이는 일반적으로 실행을 통해 수행됩니다 sudo. 가장 간단한 방법은 "신뢰할 수 있는" 일반 사용자를 그룹의 일부로 만들고 sudo호출 앞에 .root 권한을 추가하여 그룹 구성원이 루트 권한으로 명령을 실행할 수 있도록 허용하는 것입니다 sudo. 이 목적을 위해:

  1. 설치 sudo(시스템에 아직 설치되지 않은 경우)
  2. 실행(루트로):
    ~# usermod -a -G sudo trusted_user
    
  3. /etc/sudoers파일에 다음과 유사한 줄이 포함되어 있는지 확인하십시오 .
    %sudo ALL=(ALL:ALL) ALL
    
    이는 이미 존재할 수 있으며 이 그룹의 사용자가 수행할 수 있도록 허용합니다.모두루트 권한이 있는 명령을 통해 sudo.

2. 루트 로그인 비활성화

가지다몇 가지 방법들이를 수행하는 방법은 계정을 "비활성화"하려는 정도에 따라 다릅니다. 가장 유용한 두 가지는 다음과 같습니다.

  • root사용자의 로그인 셸을 /sbin/false또는 로 설정합니다 /sbin/nologin(시도할 때 멋진 설명 메시지를 표시할지 여부에 따라 다름). 이렇게 하려면 의 root마지막 :구분 기호 필드를 /etc/passwd위 필드 중 하나로 변경합니다(예: ). 더 이상 실제로 루트가 될 수 없으며 루트 권한을 사용하여 "명령별" 기반으로만 작업할 수 있습니다(그러나 나중에 변경하는 경우 sudo비밀번호 파일을 수정하여 이 작업을 취소할 수 있습니다). 아래) sudo당신의 아이디어).
  • 비밀번호를 비활성화합니다 root. 이렇게 하려면 root사용자의 비밀번호 해시(예: :의 두 번째 구분 필드 /etc/shadow)를 로 설정합니다 !. 해당 특정 파일은 vipw -s(as )를 통해서만 root수정하는 것이 좋습니다. 그러면 더 이상 루트로 로그인할 수 없습니다.비밀번호인증을 기반으로 합니다. rootSSH 키(설정된 경우)를 통해 로그인하는 것과 마찬가지로 via(파일에서 허용하는 경우) 로 전환할 수 있습니다 .sudo susudoers

최종 메모

초기 문제는 루트가 아닌 사용자로 시스템 전반에 걸쳐 소프트웨어를 설치하려고 시도했지만 결국 의도한 대로 사용할 수 없다는 것입니다. 사용자 계정을 "비활성화"하는 제안된 단계는 root이 문제에 대한 해결책이 아닙니다.

  • 소프트웨어 설치 중단을 방지하는 가장 좋은 방법은 배포판의 패키지 관리자를 사용하는 것입니다. 이를 위해서는 루트 액세스가 필요하지만 모든 파일이 있어야 할 위치에 있고 패키지 관리자를 통해 소프트웨어를 (다소) 쉽게 제거할 수 있는지 확인하십시오.
  • 소스에서 또는 공급업체가 제공한 설치 프로그램을 사용하여 소프트웨어를 설치해야 하는 경우, 사용자(또는 다른 전용 "일반" 사용자)로 홈 디렉터리에 설치하고 소프트웨어로 실행할 수 있습니다. 이 기능은 소프트웨어가 1000 미만의 네트워크 포트나 하드웨어와 같은 리소스에 대한 루트 액세스를 요구하지 않는 경우에만 작동합니다.

관련 정보