Freeradius 인증을 사용하는 vsFTPd

Freeradius 인증을 사용하는 vsFTPd

편집하다:

실제로 Syslog의 로그를 놓쳤습니다. auth.log 또는 vsftpd.log에 있을 것으로 예상했지만 Syslog에 다음과 같은 중요한 메시지가 있습니다. RADIUS 서버에 대한 IP 주소 조회 실패 [2001 (errcode=9 )

pam_radius_auth.conf에 IPv6 주소를 입력하는 형식에 관계없이([] 괄호를 사용했지만 사용하지 않고 /etc/hosts에 별칭을 사용하여 시도) 이를 허용하지 않습니다. pam 모듈이 IPv6와 호환되지 않는 것 같나요? :(

두 대의 서버가 있습니다. 하나는 vsFTPd를 실행하고 다른 하나는 Freeradius를 실행합니다. 둘 다 IPv6 전용입니다.

Radius 서버에 인증하기 위해 vsFTPd 및 pam_radius_auth 모듈을 사용하려고 하는데 어떤 이유로 작동하지 않습니다. Freeradius 서버는 올바르게 구성되어야 하며 다음과 같이 터미널을 통해 인증할 수 있습니다.

radtest -6 user pass 2001:xxxx:xxxx:xxxx:xxxx::129 0 radiussecret

내 다른 웹 서버도 내 Radius 서버를 통해 인증할 수 있습니다.

어떤 이유에서인지 vsFTPd가 올바른 pam 모듈을 사용하지 않는 것 같습니다. 그가 내 Radius 서버에 연결을 시도하고 있음을 나타내는 디버그 메시지가 없거나 /etc/pam_radius_auth.conf에서 완전히 제거하면 연결하려는 서버를 찾을 수 없습니다.

내 구성은 다음과 같습니다.

/etc/vsftpd.conf

listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
pam_service_name=ftp

/etc/pam.d/vsftpd

auth       sufficient  pam_radius_auth.so
account    sufficient  pam_radius_auth.so

/etc/pam_radius_auth.conf

radiusserver radiussecret 10

/etc/hosts에서 radiusserver를 해당 IP 주소에 매핑합니다.

2001:xxxx:xxxx:xxxx::129 radiusserver.auth radiusserver

이제 FTP 서버에서 user:pass 자격 증명을 사용하여 연결하려고 하면 다음 오류가 발생합니다.

ftp localhost
Connected to localhost.
220 (vsFTPd 3.0.2)
Name (localhost:student): user
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.

/var/log/auth.log에서:

 ubuntu vsftpd: pam_unix(ftp:auth): authentication failure; logname= uid=0 euid=0 tty=ftp ruser=user rhost=::1  user=user

및 /var/log/vsftpd.log

CONNECT: Client "::1"
[user] FAIL LOGIN: Client "::1"

무슨 일이야? vsFTPd가 내 Radius 서버에 연결을 시도하지 않는 이유는 무엇입니까? :( 감사해요

답변1

당신 은 다음 /etc/vsftpd.conf을 가지고 있습니다 :

pam_service_name=ftp

/etc/pam.d/ftp나는 이것이 PAM에게 .NET 에서 이 서비스에 대한 구성을 찾도록 지시한다고 생각합니다 /etc/pam.d/vsftpd.

/etc/pam.d/ftp존재하지 않는 경우 /etc/pam.d/other사용됩니다.

관련 정보