ftp
AIX에는 vsftpd 서버를 실행하는 다른 호스트에 대한 FTPS 연결을 설정하는 스크립트가 있습니다 .
/usr/bin/ftp -snv host 8081 <<END_SCRIPT
debug
user anonymous pass
passive
binary
debug
quote pwd
quit
END_SCRIPT
위 스크립트를 쉘에서 정상적으로 실행하면 정상적으로 작동합니다.
작업 결과
Connected to host.
220 secure FTP service
Debugging on (debug=1).
---> AUTH TLS
234 Proceed with negotiation.
TLS Auth Entered.
TLS handshake succeeded, though Server signed it's own cert!
Certificate:
Data:
Version: 3 (0x2)
하지만 동일한 스크립트를 /etc/rc.d
또는 에 추가하면 /etc/inittab
스크립트가 SSL 협상을 수행할 수 없어 실패합니다.
init 스크립트에서 실행할 때 오류 출력
Connected to host.
220 secure FTP service
234 Proceed with negotiation.
Ftp configuration failed
ERROR Error setting BIO object for the control connection
FTP: Unable to authenticate to Server.
TLS Auth Entered.
Passive mode on.
421 Service not available, remote server has closed connection
이것이 init 스크립트 실행 중에 존재하지 않은 환경 설정과 관련이 있는지 확실하지 않습니다.
도움을 주시면 감사하겠습니다.
답변1
많은 디버깅을 한 후에 문제는 init 스크립트에서 시작 시 환경 변수가 설정되지 않았으며 알 수 없는 이유로 변수를 설정 ftp
해야 한다는 것입니다 .$HOME
내보내기 위해 스크립트를 변경 $HOME
한 후에 ftp
는 정상적으로 작동합니다.