duesentriebchen schrieb:
Frage 1: Wie kann ich in der Konsole diesen Patch herunterladen?
Frage 2: Wie kompilier ich das?
Bitte mir erklären wie das funtzt... 😬
Das Problem ist, dass Du nicht genau weißt welcher source code mit welchem Patch verändert werden soll. Der von dir möglicherweise verlinkte Patch, funktioniert nicht mit der Version 2.3.5 von vsftpd:
xx@YYYYY:~> cd vsftpd-2.3.5
xx@YYYYY:~/vsftpd-2.3.5> patch -p0 < 1_ssl_userlist.patch
patching file twoprocess.c
patching file tunables.c
Hunk #1 succeeded at 36 (offset -1 lines).
Hunk #2 succeeded at 122 (offset -21 lines).
Hunk #3 succeeded at 176 (offset -32 lines).
Hunk #4 FAILED at 318.
1 out of 4 hunks FAILED -- saving rejects to file tunables.c.rej
patching file tunables.h
Hunk #2 succeeded at 125 (offset -20 lines).
patching file parseconf.c
Hunk #2 succeeded at 159 (offset -18 lines).
patching file vsftpd.conf.5
Hunk #1 succeeded at 499 (offset -136 lines).
Hunk #2 succeeded at 992 with fuzz 2 (offset -228 lines).
patching file prelogin.c
Hunk #1 FAILED at 235.
1 out of 1 hunk FAILED -- saving rejects to file prelogin.c.rej
patching file main.c
Hunk #1 succeeded at 52 with fuzz 2 (offset -4 lines).
patching file session.h
Hunk #1 succeeded at 60 (offset -5 lines).
D. h., um welchen source code und um welchen Patch geht es hier?
EDIT:
Es gibt einen source code (Archiv aus RU http://vsftpd.devnet.ru/files/2.3.5/ext.1/vsFTPd-2.3.5-ext1.tgz) mit dem der Patch funktioniert:
wget http://vsftpd.devnet.ru/files/2.3.5/ext.1/vsFTPd-2.3.5-ext1.tgz
tar xzvf vsFTPd-2.3.5-ext1.tgz
cd vsFTPd-2.3.5-ext.1
wget http://vsftpd.devnet.ru/files/2.3.5/ext.1/patch/1.%20ssl_userlist.patch
patch -p0 < "1. ssl_userlist.patch"
patching file twoprocess.c
patching file tunables.c
patching file tunables.h
patching file parseconf.c
patching file vsftpd.conf.5
patching file prelogin.c
patching file main.c
patching file session.h
make
...
...
gcc -o vsftpd main.o utility.o prelogin.o ftpcmdio.o postlogin.o privsock.o tunables.o ftpdataio.o secbuf.o ls.o postprivparent.o logging.o str.o netstr.o sysstr.o strlist.o banner.o filestr.o parseconf.o secutil.o ascii.o oneprocess.o twoprocess.o privops.o standalone.o hash.o tcpwrap.o ipaddrparse.o access.o features.o readwrite.o opts.o ssl.o sslslave.o ptracesandbox.o ftppolicy.o sysutil.o sysdeputil.o charconv.o pasvrules.o usersip.o http.o http_msg.o http_str.o -Wl,-s -lcap -ldl -lcrypt -lwrap -lnsl -lssl -lcrypto
file ./vsftpd
./vsftpd: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.4, stripped
xx@YYYYY:~/vsFTPd-2.3.5-ext.1> ldd ./vsftpd
linux-vdso.so.1 => (0x00007fff3cfff000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007ffe3992b000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007ffe39727000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007ffe394ed000)
libwrap.so.0 => /lib64/libwrap.so.0 (0x00007ffe392e2000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007ffe390ca000)
libssl.so.1.0.0 => /lib64/libssl.so.1.0.0 (0x00007ffe38e6e000)
libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0 (0x00007ffe38abf000)
libc.so.6 => /lib64/libc.so.6 (0x00007ffe3875f000)
/lib64/ld-linux-x86-64.so.2 (0x00007ffe39b30000)
libz.so.1 => /lib64/libz.so.1 (0x00007ffe38549000)
xx@YYYYY:~/vsFTPd-2.3.5-ext.1> ./vsftpd -?
vsFTPd version 2.3.5+ (ext.1)
Type 'vsftpd -v' to see the program version
Usage: vsftpd <config> [options]
<config> - full path to configuration file
Options:
-o<parameter>=<value>
parameter and value you can look in vsftpd configuration file manual