vsFTPd +SSL +public key hogyan?

Fórumok

A fentebb említett összeállítással bajlódom. Addig kész, hogy a vsftpd titkosítva szolgál ki:


$ ftp localhost
Connected to localhost.
220 "Welcome to testserver FTP service."
Name (localhost:pisti):
530 Non-anonymous sessions must use encryption.
Login failed.
ftp>
ftp> quit
221 Goodbye.

Természetesen a privát és publikus kulcsok, meg a tanusítvány kész (és ahogy az látszik, a privát kulcs + a tanusítvány jól is működik).
A config:


#
#  Engedelyezzuk a konyvtarakba irast
write_enable=YES

dirmessage_enable=YES

#
#  A bejelentkezeskor metekintheto banner
ftpd_banner="Welcome to testserver FTP service."

#
#  engedelyezzuk a helyi felhasznalokat
local_enable=YES

#
#  Termeszetesen csak gyokerhezlancolva
#  tevekenykedhetnek
chroot_local_user=NO

#
#  egyszerre maximum ennyi kliens, IP-nkent max annyi
max_clients=100
max_per_ip=5
#  A QoS tamadasok ellen ez hasznos lehet, meg a
#  "HA-TIZSZALON-TOTOKLE-SOKKA-GYORSABB-A-MODEM"
#  tipusu ürgek ellen is tud vedeni

#
#  Logolunk mindent, a helyere
log_ftp_protocol=YES
xferlog_enable=YES
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd/vsftpd.log
xferlog_file=/var/log/vsftpd/xfer.log
#  Ne felejtsd el a logrotated -is beallitani

#
#  Minden usert chroot -ba!
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot.conf
user_config_dir=/etc/vsftpd/chroot

#
#  Timeout -ok
idle_session_timeout=300
data_connection_timeout=120

#
#  Ezen a neven fut az ftpserver, a vsftpd
pam_service_name=vsftpd

#
#  A feltoltott file-ok umask-ja
#  ez igy 0666-ot jelent
local_umask=o77

#
# A finomsag, tls-el ftps:// szolgaltatas
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES

ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO

rsa_cert_file=/etc/vsftpd/ssl/vsftpd.pem
rsa_private_key_file=/etc/vsftpd/ssl/vsftpd.key

pasv_min_port=65000
pasv_max_port=65535

#
#  Listen = figyel
#  tehat daemon -ként fut a server
#  ha itt NO -van akkor az inetd -nek xinetd -nek
#  vagy valami tcpwrappernek kell indítania a
#  vsftpd -t
listen=YES

A publikus kulcs egyelőre a /etc/vsftpd/ssl/vsftpd.pub.key .
De most hogyan tovább, arra keresem a választ, hogy hogyan tudok csatlakozni a serverhez mondjuk gFTP -vel, vagy Total Commander -rel, akármivel

Ez szerint: http://www.gftp.org/readme.html#AEN179 csináltam egy linket a /usr/lib/ssl/certs könyvtárba a publikus kulcsra de ennek ellenére, sem gFTP-vel sem sftp -vel sem megy a csatlakozás.

Persze az üdvözítő az lenne, ha csatlakozáskor ezt a publikus kulcsot elküldené a vsftpd a kliensnek ezután ezzel történne a titkosítás, eddig erre megoldást nem találtam, kérlek segítsetek!

Hozzászólások

Emberek, ez tényleg ennyire keménydió? Vagy csak (remélem) nagyon Jan.1. van

Nos a megfejtés pofon egyszerű:
A fentebbi konfig tökéletesen működőképes, a kulcsokat így hoztam létre:


openssl req -x509 -nodes -days 1825 -newkey rsa:1024 -keyout /etc/vsftpd/ssl/vsftpd.key -out /etc/vsftpd/ssl/vsftpd.pem

Ott csúsztam meg, hogy a gFTP -ben nem volt SSL támogatás, így azt újra kellett fordítani, valamint gftprc -ben a verify_ssl_peer=1 sort át kell írni verify_ssl_peer=0 -ra, valamint a /etc/ssl/cert mappába be kellett linkelnem a vsftpd.pem -et (a tanusítványt)