현재 직장에는 특정 응용 프로그램을 관리하는 데 사용되는 UNIX에 루트가 아닌 공유 로그인 계정이 있습니다. 정책은 공유 계정에 직접 로그인하는 것을 허용하지 않습니다. 직접 로그인하여 “su”명령을 사용하여 공유 계정으로 전환해야합니다. 이것은 로깅 / 보안을위한 것입니다.
에이전트와 함께 SSH 공개 / 개인 키 인증을 사용하여 하루에 한 번 비밀번호를 입력하고 에이전트 전달을 통해 나머지 요일에 대한 비밀번호 프롬프트가 표시되지 않도록했습니다. 정말 좋습니다.
그러나 일부 시스템이 잠겨 있으므로 공유 계정에 액세스하려면 “su”명령을 사용해야합니다. 아가! 항상 비밀번호 입력으로 돌아갑니다!
공개 / 개인 키를 사용하는 경우 공유 계정에 대한 원격 로그인을 허용하기 위해 정책 변경을 요청할 수있는 SSH 공개 / 개인 키 인증으로 충분한 정보가 기록되어 있습니까?
/ var / log / secure에서 관리자 모양을 보였으며 특정 IP 주소에서 사용자 계정에 공개 키가 허용되었다고 말합니다. 공개 키가 누구인지 또는 개인 키가 누구인지 인증하지 않았습니다.
답변
sshd_config
파일을 통해 사용 가능한 여러 레벨의 로깅이 있습니다 . 참고 항목 man 페이지를 하고 찾아 LogLevel
. 기본 레벨은 INFO
있지만 레벨 VERBOSE
이나 DEBUG#
레벨 중 하나 까지 부딪히는 것은 쉽지 않습니다 .
또한 sudo
의 대안으로 탐색해야 합니다 su
. 이점에 대한 완전한 논의 sudo
는 그 자체의 문제 일 것입니다. 그러나 sudoers 구성 파일을 sudo
통해 제어 할 수있는 암호 입력 빈도, 명령 실행 등을 조정할 수 있다고 말할 수 있습니다 .
답변
또 다른 방법은 sysadmins만이 지정된 계정에 로그하는 데 사용할 수있는 공개 키를 제어 할 수 있도록 authorized_keys
사용자 범위 밖으로 (예 :로 /etc/ssh/authorized_keys
) 이동하는 것입니다.
우리는 AuthorizedKeysFile
지시문 sshd_config
을 다음과 같이 변경했습니다 .
AuthorizedKeysFile /etc/ssh/authorized_keys/%u
그런 다음 /etc/ssh/authorized_keys
로그인 할 수있는 각 사용자에 대한 파일로 디렉토리를 작성하고 채우십시오. root
파일은 다음과 같이 적절한 사용자가 읽을 수있는 루트 및 다른 파일 만 읽을 수 있도록합니다.
-rw------- 1 root root 1,7K 2008-05-14 14:38 root
-rw-r----- 1 root john 224 2008-11-18 13:15 john
각 파일에는 지정된 계정에 로그인 할 수있는 공개 키 세트가 포함되어 있습니다. 각 사용자 계정마다 해당 그룹이있는 것이 일반적입니다.
공개 / 개인 키를 사용하는 것이 원격 사용자 액세스를 제어하는 더 좋은 방법입니다. 매월 암호를 변경할 필요가 없으며 (설정할 필요도 없음) 직원이 회사를 떠난 이유만으로 암호를 변경할 필요가 없습니다. 물론 SSH 옵션 ( http://www.openbsd.org/cgi-bin/man.cgi?query=sshd&sektion=8#SSHRC
)을 사용하면 특정 사용자가 액세스 할 수있는 대상과 위치를 세부적으로 지정할 수 있습니다.
답변
SSH 공개 / 개인 키 인증은 호스트 인증과 별개입니다. 당신은 여기서 운이 없습니다. sudo
아래 secretaries
그룹의 사용자가 계정을 관리 할 수 있도록 허용하는 예제와 같이 특정 그룹의 구성원에게 비밀번호없이 특정 관리 명령을 실행할 수 있도록 요청할 수 있습니다.
# file: /etc/sudoers
...
%secretaries ALL= NOPASSWD: /usr/bin/adduser, /usr/bin/rmuser
...