Két új CentOS 7 dobozt egyszerre állítottam fel, így a konfigurációknak azonosaknak, csak különbözőeknek kell lenniük ip címek és hosztnevek.

Telepítettem a VSFTPD-t és konfiguráltam a passzív portokra. Az egyik doboz jól összekapcsolódik, nincs probléma, azonban a második doboz folyamatosan dobja el ezt a hibát:

GnuTLS error -15: An unexpected TLS packet was received. 

Itt található a FileZilla hibakereső nyomkövetése:

Status: Connecting to 192.168.20.68:21... Status: Connection established, waiting for welcome message... Trace: CFtpControlSocket::OnReceive() Response: 220 (vsFTPd 3.0.2) Trace: CFtpControlSocket::SendNextCommand() Command: AUTH TLS Trace: CFtpControlSocket::OnReceive() Response: 234 Proceed with negotiation. Status: Initializing TLS... Trace: CTlsSocket::Handshake() Trace: CTlsSocket::ContinueHandshake() Trace: CTlsSocket::OnSend() Trace: CTlsSocket::OnRead() Trace: CTlsSocket::ContinueHandshake() Trace: CTlsSocket::OnRead() Trace: CTlsSocket::ContinueHandshake() Trace: CTlsSocket::OnRead() Trace: CTlsSocket::ContinueHandshake() Trace: TLS Handshake successful Trace: Protocol: TLS1.2, Key exchange: ECDHE-RSA, Cipher: AES-256-GCM, MAC: AEAD Status: Verifying certificate... Status: TLS connection established. Trace: CFtpControlSocket::SendNextCommand() Command: USER datamover Trace: CTlsSocket::OnRead() Trace: CFtpControlSocket::OnReceive() Response: 331 Please specify the password. Trace: CFtpControlSocket::SendNextCommand() Command: PASS ******* Trace: CTlsSocket::OnRead() Trace: CTlsSocket::Failure(-15) Error: GnuTLS error -15: An unexpected TLS packet was received. Trace: CRealControlSocket::OnClose(106) Trace: CControlSocket::DoClose(64) Trace: CFtpControlSocket::ResetOperation(66) Trace: CControlSocket::ResetOperation(66) Error: Could not connect to server 

A hiba mindig a jelszó ellenőrzése után következik be.

Tudom, hogy a probléma NEM SELinux, mivel ezt letiltottam. A probléma nem is a tűzfal, mivel megpróbáltam letiltani a tűzfal démonot (tűzfal).

Itt található az /etc/vsftpd/vsftpd.conf fájl megfelelő része.

listen=YES listen_ipv6=NO pasv_enable=YES pasv_max_port=10100 pasv_min_port=10090 pasv_address=192.168.20.88 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 ssl_ciphers=HIGH require_ssl_reuse=NO rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem 

Google-keresést végeztem, de nem láttam 15 hibakódot.

Gondolatok?

Válasz

Ugyanaz a hibám volt a PASS parancs után a CENTOS 7-ben. (GnuTLS -15 hiba: váratlan TLS csomag érkezett.)

Megoldásom a következő:

A következőt kellett felvennem a vsftpd.conf fájlba:

allow_writeable_chroot=YES chroot_local_user=YES local_root=/ftphome/$USER user_sub_token=$USER 

Megjegyzések

  • Köszönöm, az /etc/vsftpd.conf fájlomhoz hozzáadom: user_sub_token = $ USER, és most nincs meg a GNUTLS -15 hiba
  • megoldottam az /etc/vsftpd.conf fájlomra, ugyanazt az értéket tettem fel a ” listen_address = 192.168.1.2 ” & ” pasv_address = 192.168.1.2 ” ezt utoljára adom hozzá, és működik, szükségem van rá: D
  • Esetemben I a local_root hiányzó könyvtárra mutatott – amikor módosítottam ezt a változót, a 15. hiba eltűnt.

Válasz

Abban a reményben teszem közzé ezt a választ, hogy a jövőben segíthet valakinek, esetleg nekem, mivel szenvedtem ennek a problémának a megoldásában.

Nem volt local_root a /etc/vsftpd/vsftpd.conf fájl megfelelően van beállítva. A beállítás egy mappára mutatott, amely nem létezett.

Ami rajtam keresztül volt, hogy a FileZilla jelszóparancsának hibáját láttam, úgy gondoltam, hogy nem tetszik neki a jelszó. Ami jó irányba gondolt, az az volt, hogy időt szántam arra, hogy megvizsgáljam, miért nem kapok részletes naplókat. Nem kaptam naplót. Miután elkezdtem kapni a hibakeresési naplókat, ahol láttam az FTP protokollokat, láttam, hogy az FTP szerver rendben van a jelszóval. Sajnos nem volt semmiféle naplózás, de találkoztam azzal a gondolattal, hogy a helyi gyökér tárgyalása lesz a következő lépés a jelszó hitelesítése után. Igazam volt, és ez vezetett a problémához.

Itt található a kódrészlet a /etc/vsftpd/vsftpd.conf fájlban, amely a helyi gyökeret tartalmazza.

# You may specify an explicit list of local users to chroot() to their home # directory. If chroot_local_user is YES, then this list becomes a list of # users to NOT chroot(). # (Warning! chroot"ing can be very dangerous. If using chroot, make sure that # the user does not have write access to the top level directory within the # chroot) chroot_local_user=YES #local_root=/mnt/raid1 local_root=/ftproot #chroot_list_enable=YES # (default follows) #chroot_list_file=/etc/vsftpd/chroot_list 

Így kapcsoltam be végül a részletes naplózást, bár ezt most kikapcsolom a lemezterület megőrzése és a teljesítmény javítása érdekében.

# Activate logging of uploads/downloads. xferlog_enable=YES # # If you want, you can have your log file in standard ftpd xferlog format. # Note that the default log file location is /var/log/xferlog in this case. xferlog_std_format=NO log_ftp_protocol=YES # # Activate logging of uploads/downloads. xferlog_enable=YES 

IMHO, hibának tartanám a megjegyzést, mivel az xferlog_enable több, mint a fájlok tényleges feltöltése és letöltése. Ez a tulajdonság bekapcsolja a naplózást is. Egy Google-kutatás igazolja, hogy a log_ftp_protocol=YES xferlog_enable=YES szükséges.

Megjegyzések

  • Csak egy elírás miatt futott be ugyanabba a csapdába. Érvényes local_root könyvtár beállítása megoldotta a problémát.

Válasz

Pont ugyanazzal a hibával szembesültem (Hiba: GnuTLS hiba -15: Váratlan TLS csomag érkezett.) És egy órán át megütötte a fejem, de aztán rájöttem, hogy az ftp felhasználók Gluster köteten lévő otthoni könyvtárát nem csatlakoztatták. A felszerelt Gluster kötet és a probléma megoldódott.

Válasz

Engedélyeznie kell az írható chroot-t a konfigurációs fájlban:

sudo nano /etc/vsftpd.conf 

Ezután adja hozzá ezt a sort alul:

allow_writeable_chroot=YES 

És indítsa újra a szolgáltatást:

sudo service vsftpd restart 

Válasz

Furcsa módon számomra ez a probléma felvetődött, amikor ls bejelentkezés után.

Kiderült, hogy eltávolítottam a httpd alkalmazást a nginx javára. Az általam használt mappa a apache:apache tulajdona volt, és a felhasználó eltávolításra került, amikor eltávolítottam a következőt: httpd. chcon “a könyvtárakat nginx:nginx -re helyeztem, majd kicseréltem a felhasználót a konfigurációs fájlom következő soraiba: guest_username=nginx nopriv_user=nginx

Remélhetőleg ez segít valakinek odakinn, mert a hibaüzenetek egyáltalán nem voltak hasznosak.

Válasz

Szeretném hozzáadni az Ndianabasi-hoz:

Ha:

allow_writeable_chroot=NO 

és engedélyezte a chroot funkciót, a Chroot könyvtárat nem írhatja le az a felhasználó, akinek bejelentkezni próbál. Ez az én esetem volt, és ugyanaz a hiba merült fel. A root (root) könyvtárat a root: root-ra gondoltam, és ez kijavította nekem.

P.S. Megnéztem, hogy a man oldalakon már nem találom az említett opciót, de régebbi verziókban elérhető lehet.

Megjegyzések

  • Ha a válasz az, hogy engedélyezned kell az írható chroot-t, hogyan segíthet ez bárkinek, akinek ilyen problémája van?

Válasz

ellenőrizze, hogy a könyvtár és annak szülőkönyvtárai olvashatók-e és végrehajthatók-e az sftp felhasználó számára.

Megjegyzések

  • Felhívjuk figyelmét, hogy ez egy adott kérdésre van egy elfogadott válasz , vagyis a problémájuk már megoldódott.
  • köszönöm, de csak azt akartam hozzáadni, hogyan oldottam meg ezt a problémát az én esetemben. vagy szerinted még mindig nem megfelelő hozzáadni valamit?
  • Azért említettem a meglévő választ, mert úgy hangzott, hogy ennek a problémának nagyon konkrét válasza volt. Ugyanezen tünetekkel találkozott? nem, mindig megkérdezheted & a saját problémád megválaszolását a konkrét válaszoddal.
  • Igen, pontosan ugyanazok a tünetei voltak.

Válasz

Még nem tudok hozzászólásokat küldeni, így ez részben válasz Scott válaszára és a Mr.Fantastic válaszának tisztázására …


Ugyanezen problémába ütköztem és néhány kísérlet és hiba kitalálta, hogy ez valójában mit jelent, és jobb megoldás (IMHO), mint az allow_writeable_chroot = YES beállítása.

Ez azt jelenti, hogy a vsftpd lehetővé teszi azt a helyzetet, amikor a felhasználó saját könyvtárát az adott felhasználó írja . Ehelyett biztonsági okokból megváltoztattam a felhasználó gyökérmappájának engedélyeit 555-re. Egy másik szál szerint ez enyhíti a “ROARING BEAST ATTACK” -t.

Esetemben az eredeti beállítás a következő volt: (777) drwxrwxrwx / home / ftpuser /

A felhasználó könyvtárának megváltoztatása erre: (555) dr-xr-xr-x / home / ftpuser /

a felhasználó saját könyvtárát NEM tette meg írható a felhasználó által, ezért nem kellett használnom az allow_writeable_chroot = IGEN parancsot. Ez jó (és biztonságosabb) a helyzetem szempontjából, mivel előre beállított könyvtárstruktúrám van, és nem akarom, hogy a felhasználó mindenképpen új fájlokat vagy könyvtárakat készítsen a gyökérmappájukba.

Ezt rájöttem, amikor váltottam az otthoni könyvtár a / var / ftp fájlra a vsftpd local_root = paraméterén keresztül, és úgy működött, hogy nem kellett volna beállítanunk az allow_writeable_chroot = IGEN parancsot. Ez a / var / ftp mappa (755), de a root tulajdonában van, így az ftpuser nem írható.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük