SSH 로깅 기능은 개인 / 공개 키 인증에 대한 su 로깅과 동일합니까?


11

현재 직장에는 특정 응용 프로그램을 관리하는 데 사용되는 UNIX에 루트가 아닌 공유 로그인 계정이 있습니다. 정책은 공유 계정에 직접 로그인하는 것을 허용하지 않습니다. 직접 로그인하여 "su"명령을 사용하여 공유 계정으로 전환해야합니다. 이것은 로깅 / 보안을위한 것입니다.

에이전트와 함께 SSH 공개 / 개인 키 인증을 사용하여 하루에 한 번 비밀번호를 입력하고 에이전트 전달을 통해 나머지 요일에 대한 비밀번호 프롬프트가 표시되지 않도록했습니다. 정말 좋습니다.

그러나 일부 시스템이 잠겨 있으므로 공유 계정에 액세스하려면 "su"명령을 사용해야합니다. 아가! 항상 비밀번호 입력으로 돌아갑니다!

공개 / 개인 키를 사용하는 경우 공유 계정에 대한 원격 로그인을 허용하기 위해 정책 변경을 요청할 수있는 SSH 공개 / 개인 키 인증으로 충분한 정보가 기록되어 있습니까?

/ var / log / secure에서 관리자 모양을 보였으며 특정 IP 주소에서 사용자 계정에 공개 키가 허용되었다고 말합니다. 공개 키가 누구인지 또는 개인 키가 누구인지 인증하지 않았습니다.

답변:


13

sshd_config파일을 통해 사용 가능한 여러 레벨의 로깅이 있습니다 . 참고 항목 man 페이지를 하고 찾아 LogLevel. 기본 레벨은 INFO있지만 레벨 VERBOSE이나 DEBUG#레벨 중 하나 까지 부딪히는 것은 쉽지 않습니다 .

또한 sudo의 대안으로 탐색해야 합니다 su. 이점에 대한 완전한 논의 sudo는 그 자체의 문제 일 것입니다. 그러나 sudoers 구성 파일을 sudo통해 제어 할 수있는 암호 입력 빈도, 명령 실행 등을 조정할 수 있다고 말할 수 있습니다 .


sudo 교체 제안 투표.
Matt Simmons

6

또 다른 방법은 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)을 사용하면 특정 사용자가 액세스 할 수있는 대상과 위치를 세부적으로 지정할 수 있습니다.


1

SSH 공개 / 개인 키 인증은 호스트 인증과 별개입니다. 당신은 여기서 운이 없습니다. sudo아래 secretaries그룹의 사용자가 계정을 관리 할 수 있도록 허용하는 예제와 같이 특정 그룹의 구성원에게 비밀번호없이 특정 관리 명령을 실행할 수 있도록 요청할 수 있습니다.


# file: /etc/sudoers
...
%secretaries    ALL= NOPASSWD: /usr/bin/adduser, /usr/bin/rmuser   
...

두 번째로 .. SUDO를 사용할 때 감사하기가 훨씬 쉽습니다. 루트 유형의 "appname -options"를 보는 것보다 훨씬 간단한 사용자 joe 유형의 "sudo appname -options"를 볼 수 있습니다. 당시 모두 루트로 로그인되었습니다.
Brian

좋습니다. 그러나 일부 작업은 데몬 프로세스를 시작하고 중지하는 것입니다. sudo가 "start"및 "stop"스크립트를 공유 그룹 사용자 이름으로 실행할 수 있습니까? (루트가 아닌) 우리는 우리가 설정 한 공유 계정 사용자 이름으로 프로세스를 소유하기를 원합니다.
David I.

예, -u옵션을 사용하면 그렇게 할 수 있습니다. sudo.ws/sudo/man/1.8.1/sudo.man.html
Nikolai N Fetissov
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.