Proftpd update

It doesn't install from the ./build script but manually it works.

If you get the gmake errror, press ctrl+z to put the script in the background, cd into the proftpd-1.3.3e directory, run ./configure, cd up 1 directory, 'fg' + enter to get the script back to the foreground, type 'y' + enter (You won't see a prompt as the script is still waiting on the y/n input to retry the build.
 
It doesn't install from the ./build script but manually it works.

If you get the gmake errror, press ctrl+z to put the script in the background, cd into the proftpd-1.3.3e directory, run ./configure, cd up 1 directory, 'fg' + enter to get the script back to the foreground, type 'y' + enter (You won't see a prompt as the script is still waiting on the y/n input to retry the build.

run ./configure
run: Command not found.
 
run ./configure
run: Command not found.

Yeah, well... you should run './configure' ;)
At least on FreeBSD, on CentOS you can skip the './configure'. Actually you can skip everthing after the './build proftpd' on CentOS as it seems to work on that OS without problems.

# ./buildd proftpd
/* wait for error and prompt 'y/n retry stuff'
press [CTRL] + z
# cd proftpd-1.3.3e
# ./configure
# cd ..
# fg
press 'y' + [ENTER]
 
If you get the gmake errror, press ctrl+z to put the script in the background, cd into the proftpd-1.3.3e directory, run ./configure, cd up 1 directory, 'fg' + enter to get the script back to the foreground, type 'y' + enter (You won't see a prompt as the script is still waiting on the y/n input to retry the build.


Thanks sysdev. This trick work perfectly. :)


Regards
 
If you would like to disable nls (it was added about a month ago):
Code:
cd /usr/local/directadmin/custombuild
mkdir custom/proftpd
cp -pf configure/proftpd/configure.proftpd custom/proftpd/configure.proftpd
perl -pi -e 's|--enable-nls \\\n||' custom/proftpd/configure.proftpd

Also, for those who did not know, pure-ftpd support is now available:
Code:
cd /usr/local/directadmin/custombuild
./build update
./build set proftpd no
./build set pureftpd yes
./build pureftpd
 
Hello,

I tested on both 32-bit and 64-bit systems, and got the same error, but only on FreeBSD.
I tried some quick port reinstalls of gettext, but the proftpd configure still couldn't find it. I'm not sure if it's a proftpd bug, library issue (not likely) or a configure option we're missing (I didn't notice any for nls).

So for the time being I've updated custombuild to do a perl regex to swap enable-nls with disable-nls if the OS is freebsd. This only applies to the main configure/proftpd/configure.proftpd file. If you're running a custom/proftpd/configure.proftpd file, the swap won't happen (in case you made it work.. in which case, do share)

So for anyone affected, just type:
Code:
./build update
./build proftpd
should sort it out, then the custom configure.proftpd won't be required, so you can remove it.

John
 
...So for the time being I've updated custombuild to do a perl regex to swap enable-nls with disable-nls if the OS is freebsd. This only applies to the main configure/proftpd/configure.proftpd file. If you're running a custom/proftpd/configure.proftpd file, the swap won't happen (in case you made it work.. in which case, do share)

It is important that we keep enable-nls, if not everyone that is uploading files with file names with special characters (like æ and ø and å), will get problems that those files do not work in a web browser.

Lucky me I am not on FreeBSD, but using CentOS, so I am not affected. But it is not a good solution to disable enable-nls - and if so happen, you must let us know about it in advance.
 
Hello,

It wasn't my first choice. After about an hour of debugging with it, I gave up and turned it off. The issue isn't closed though, if we find a fix, it will be enabled again.

John
 
Hi,

is anything new about that? Im on freebsd 9.1 and still the same. It was also the same on 8.2. Any tip?
 
This is clearly a bug in the proftpd configure script, after I find a fix I will file the fix on github for them to fix.
 
I was able to compile ProFTP with --enable-nls by doing this addition to the configure script:

Code:
#!/bin/sh
install_user=ftp \
install_group=ftp \
./configure \
--prefix=/usr/local \
--sysconfdir=/etc \
--localstatedir=/var/run \
--mandir=/usr/share/man \
--without-pam \
--disable-auth-pam \
--enable-nls \
--enable-dso \
--with-modules=mod_ratio:mod_readme:mod_tls \
[B]--with-libraries=/usr/local/lib[/B]

The addition is the final line. I fetched it from the proftpd FreeBSD port.
 
I was able to compile ProFTP with --enable-nls by doing this addition to the configure script:

Code:
#!/bin/sh
install_user=ftp \
install_group=ftp \
./configure \
--prefix=/usr/local \
--sysconfdir=/etc \
--localstatedir=/var/run \
--mandir=/usr/share/man \
--without-pam \
--disable-auth-pam \
--enable-nls \
--enable-dso \
--with-modules=mod_ratio:mod_readme:mod_tls \
[B]--with-libraries=/usr/local/lib[/B]

The addition is the final line. I fetched it from the proftpd FreeBSD port.
This still works and I notified DA to add this last line in to the configure script. also to add

you need
Code:
pkg install gettext

Without SFTP
Code:
cat configure.proftpd
Code:
#!/bin/sh
install_user=ftp \
install_group=ftp \
./configure \
--prefix=/usr/local \
--sysconfdir=/etc \
--localstatedir=/var/run \
--mandir=/usr/share/man \
--without-pam \
--disable-auth-pam \
--enable-dso \
--with-modules=mod_ratio:mod_readme:mod_tls

With SFTP
Code:
cat configure.proftpd
Code:
#!/bin/sh
install_user=ftp \
install_group=ftp \
./configure \
--prefix=/usr/local \
--sysconfdir=/etc \
--localstatedir=/var/run \
--mandir=/usr/share/man \
--without-pam \
--disable-auth-pam \
--enable-dso \
--with-modules=mod_ratio:mod_readme:mod_tls:mod_sftp

Without SFTP and nls
Code:
cat configure.proftpd
Code:
#!/bin/sh
install_user=ftp \
install_group=ftp \
./configure \
--prefix=/usr/local \
--sysconfdir=/etc \
--localstatedir=/var/run \
--mandir=/usr/share/man \
--without-pam \
--disable-auth-pam \
--enable-nls \
--enable-dso \
--with-modules=mod_ratio:mod_readme:mod_tls \
--with-libraries=/usr/local/lib

With SFTP and nls
Code:
cat configure.proftpd
Code:
#!/bin/sh
install_user=ftp \
install_group=ftp \
./configure \
--prefix=/usr/local \
--sysconfdir=/etc \
--localstatedir=/var/run \
--mandir=/usr/share/man \
--without-pam \
--disable-auth-pam \
--enable-nls \
--enable-dso \
--with-modules=mod_ratio:mod_readme:mod_tls:mod_sftp \
--with-libraries=/usr/local/lib
 
Last edited:
Please also note the location of keys are in the wrong place in /etc/proftpd.sftp.conf
These are not the location of the keys on Centos, Debian or Freebsd.
SFTPHostKey /etc/ssh_host_rsa_key
SFTPHostKey /etc/ssh_host_ecdsa_key
SFTPHostKey /etc/ssh_host_ed25519_key

The correct location is
SFTPHostKey /etc/ssh/ssh_host_rsa_key
SFTPHostKey /etc/ssh/ssh_host_ed25519_key
SFTPHostKey /etc/ssh/ssh_host_ecdsa_key

Please correct file.

While you are correcting it proftpd supports all of the big 3 algorithms
SFTPHostKey /etc/ssh/ssh_host_ecdsa_key
SFTPHostKey /etc/ssh/ssh_host_ed25519_key

<IfModule mod_sftp.c>
<VirtualHost 0.0.0.0>
# The SFTP configuration
Port 23

AuthUserFile /etc/proftpd.passwd
TransferLog /var/log/proftpd/xferlog.legacy
ExtendedLog /var/log/proftpd/|IP|.bytes WRITE,READ userlog

SFTPEngine on

SFTPLog /var/log/proftpd/sftp.log
SFTPHostKey /etc/ssh_host_rsa_key
SFTPHostKey /etc/ssh_host_ecdsa_key
SFTPHostKey /etc/ssh_host_ed25519_key
SFTPAuthorizedUserKeys file:~/.sftp/authorized_keys

SFTPClientMatch ".*WS_FTP.*" channelWindowSize 1GB #WS_FTP initial window size
SFTPClientMatch ".*ClientSftp" sftpProtocolVersion 3 #CuteFTPPro8
SFTPClientMatch ".*WinSCP.*" sftpProtocolVersion 3 #upload/download fix for WinSCP
SFTPClientMatch ".*SecureBlackbox.*" sftpProtocolVersion 3
SFTPClientMatch "1.0" sftpProtocolVersion 3 channelWindowSize 1GB
SFTPClientMatch ".*J2SSH_Maverick.*" channelWindowSize 1GB
SFTPClientMatch ".*WeOnlyDo.*" sftpProtocolVersion 3 channelWindowSize 1GB
SFTPClientMatch ".*EldoS.SSHBlackbox.3.*" sftpProtocolVersion 3 channelWindowSize 1GB
SFTPClientMatch ".*IP.Works.*" channelWindowSize 1GB
</VirtualHost>
</IfModule>
 
Last edited:
Everyone sorry Proftpd is not broken on Debian it was my FTP client Transmit 5 for Mac

I am happy to report Filezilla for mac works fine for both TLS and SFTP.
 
Last edited:
Everyone sorry Proftpd is not broken on Debian it was my FTP client Transmit 5

I am happy to report Filezilla works fine.
Try winscp .. ;)

Also with .. key's in combi with putty i find it way better.
 
Back
Top