이것레드햇 공식 페이지몇 가지 모호한 힌트가 제공됩니다.
/etc/securetty에는 가능한 많은 장치가 나열되어 있으므로 대부분의 경우 실제 효과는 기본적으로 해당 장치를 허용하는 것이므로 이 변경 사항은 작은 영향만 미칠 것입니다. 그러나 보다 제한적인 구성을 사용하는 경우 pam_securetty.so 모듈을 활성화하는 행을 /etc/pam.d 디렉터리의 해당 파일에 추가하고 새 /etc/securetty 파일을 생성해야 합니다.
비밀번호 없는 직렬 콘솔 액세스를 허용하는 더 깔끔한 방법이 없다는 것이 이상해 보입니다.
이것페이지잘 작동하는 솔루션이 제공되지만 더 쉬운 방법이 있는지 궁금하지 않을 수 없습니다.
답변1
CentOS 8의 현재 상태에서는 그렇게 생각하지 않습니다.
문제는 직렬 포트를 통한 기존 Unix 로그인에는 두 가지 구성 요소, 즉 getty
포트 설정을 초기화하고 사용자 이름을 묻는 프로세스와 login
비밀번호를 묻는 프로세스, 비밀번호를 확인하고 사용자 세션을 시작하는 프로세스가 포함된다는 것입니다. RHEL/CentOS SELinux 규칙은 이를 염두에 두고 작성되었습니다.
agetty
login
와 의 조합을 두 작업을 모두 수행하는 다른 것으로 바꾸고 일치하도록 PAM 및 SELinux 구성을 조정하여당신이 제공한 링크에서.
자동 로그인 구성은 보안 측면에서 매우 중요한 작업이므로 실수로 수행될 가능성이 낮도록 일반적으로 다단계 프로세스를 거쳐야 합니다. 이 작업을 정기적으로 수행하는 경우 선택한 도구(예: 스크립트 또는 Ansible과 같은 것)를 사용하여 자동화하는 것을 막을 방법이 없습니다.
답변2
나는 더 깔끔한 접근 방식이 없다는 점에 대해 비슷한 우려를 갖고 있으므로 링크된 질문에 제공된 것과 다른 해결책을 찾아야 합니다.
- 커널에 대한 콘솔을 구성해야 합니다. 이는 플랫폼에 따라 다르지만 일반적
console=ttyS0
으로 또는 입니다console=hvc0
. 그러면/etc/securetty
에 설명된 대로 직렬 콘솔을 에 연결할 필요가 없습니다 .pam_securetty(8):
pam_securetty [...] will also allow root logins on the tty specified with console= switch on the kernel command line and on ttys from the /sys/class/tty/console/active.
- 루트 로그인이 명확해야 합니다허용하다직렬 콘솔에는 다음 모듈이
/etc/pam.d/login
있어야 합니다 .pam_securetty
#%PAM-1.0
auth required pam_securetty.so
...
- 그런 다음 systemd에서 자동 로그인을 구성해야 합니다.게티, 전달된 인수를 실행하고 대체합니다.
systemctl edit [email protected]
로그인-o '-p -- \\u'
자동 로그인 사용:
ExecStart=-/sbin/agetty --autologin root --noclear --keep-baud 115200,38400,9600 %I $TERM