
모든 사람이 SSH 연결을 갖고 있는 시스템에서
AllowUsers $USER
/etc/ssh/sshd_config를 사용해도 안전합니까 ?
모든 사람이 SSH 액세스 권한을 갖기를 원하지만 시스템 계정에는 SSH 액세스 권한이 있는 것을 원하지 않습니다. 또한 사용자를 프로필에 영구적으로 추가하지 않고도 설정하고 싶습니다. 사용할 수 있는 변수가 있나요? 사용자 이름 == 사용자 홈페이지라고 가정하면 AllowUsers가 ls /home/
작동할 수도 있습니다. 이 일을 해야 할지 모르겠습니다.
답변1
그 반대를 수행하십시오. 목록에 있는 사용자가 로그인하는 것을 방지하려면 sshd_config에서 DenyUsers를 사용하세요.
로그인 기능을 거부하려는 사용자 목록은 일반적으로 수퍼유저와 쉘로 /bin/nologin을 사용하는 모든 사용자입니다. 또한 /etc/passwd 파일을 확인하고 패키지의 일부로 설치된 사용자를 식별하십시오. CentOS 7에서 이러한 사용자의 uid는 일반적으로 1000 미만입니다.
이것이 CentOS 7에 있는 것입니다:
DenyUsers 루트 bin 데몬 adm lp 동기화 종료 메일 운영자 게임 중지 ftp none dbus polkitd tss colord usbmuxd rpc rtkit qemu radvd ntp chrony abrt avahi-autoipd unbound rpcuser nfsnobody libstoragemgmt saslauth pulsegdm gnome-initial-setup avahi pcp postfix sshd oprofile tcpdump lightdm pn 나노- 오픈커넥트
"denyusers.awk"라는 awk 스크립트를 실행하여 이 목록을 얻었습니다.
./denyusers.awk /etc/passwd
이것이 내 "denyusers.awk" 스크립트의 소스입니다.
#!/bin/awk -f
BEGIN {
FS=":";
printf("%s","DenyUser root");
}
{
username=$1;
uid=$3
shell=$7;
if ((uid<1000) || ( shell == "/sbin/nologin" )) {
printf(" %s", username);
}
}
END {
print "";
}