VMware Cloud Community
koester20111014
Contributor
Contributor

vSphere (ESXi) 5.0 - Enable FTP - is that possible?

Hi Everybody.

I use FTP for transferring Data from and to my ESXi 4.1 and 3.5 - Servers.

Does anybody know a possibility to activate ftp on an ESXi 5.0?

I just installed one (5.0).

I cannot find a oem.tgz or something like that to activate proftpd permanently like it is documented on several websites.

It seems much changed in ESXi 5.0!?

What changes have to be made?

Thanks alot for your help

M. Koester

Tags (4)
16 Replies
0mra0
Contributor
Contributor

Maybe, sftp will help you? In 5.0, it seems like sftpd is already on board. Check /usr/lib/vmware/openssh/bin/

0 Kudos
hsamayoa
Contributor
Contributor

Too bad only SFTP is an option now. Hopefully somebody can release an oem.tgz file. Proftpd is so much faster

0 Kudos
koester20111014
Contributor
Contributor

Hello.

If you want to activate FTp you can use this stuff.

First copy the proftpd and proftpd.conf to a place at Datastore (for example a folder ftp).

In rc.local add the following lines:

#copy ftp to directories and activate ftp
cp /vmfs/volumes/Data/ftp/service.xml /etc/vmware/firewall/service.xml
esxcli network firewall refresh 
cp /vmfs/volumes/Data/ftp/proftpd.conf /etc/proftpd.conf
cp /vmfs/volumes/Data/ftp/proftpd /sbin/proftpd
chmod 775 /sbin/proftpd
/sbin/proftpd &

Some things to recognize:

- In proftpd.conf you have to say standalone System

- FTP-Clients are not allowed to use passive mode

firewall.xml:

<service id="xxxx"> <-- Hier die Nummer anpassen.
<id>ftp-Server</id>
<rule id='0000'>
<direction>inbound</direction>
<protocol>tcp</protocol>
<porttype>dst</porttype>
<port>21</port>
</rule>
<rule id='0001'>
<direction>outbound</direction>
<protocol>tcp</protocol>
<porttype>dst</porttype>
<port>
<begin>0</begin>
<end>65535</end>
</port>
</rule>
<rule id='0002'>
<direction>inbound</direction>
<protocol>udp</protocol>
<porttype>dst</porttype>
<port>21</port>
</rule>
<rule id='0003'>
<direction>outbound</direction>
<protocol>udp</protocol>
<porttype>dst</porttype>
<port>
<begin>0</begin>
<end>65535</end>
</port>
</rule>
<enabled>true</enabled>
<required>true</required>
</service>

Finished. Of course this way is not supported.

HTH
MK

0 Kudos
Mouhamad
Expert
Expert

ESXi 5.0 Doesn't have FTP. However, you can have SCP (Secure Copy Protocol).

I'd suggest you use this freeware.. http://www.veeam.com/vmware-esxi-fastscp.html 

Good luck

VCP-DCV, VCP-DT, VCAP-DCD, VSP, VTSP
koester20111014
Contributor
Contributor

Hello.

> ESXi 5.0 Doesn't have FTP. However, you can have SCP (Secure Copy Protocol).

Not out of the box. But you can activate it with my how to.

I reach now 50 MB/s!

> I'd suggest you use this freeware.. http://www.veeam.com/vmware-esxi-fastscp.html

This is to slow. Only 5MB/s.

MK

0 Kudos
caraboy
Contributor
Contributor

Is this really working in ESXi 5.0? If so, where can I find proftpd and proftpd.conf you mentioned. I would really like to have FTP enabled, in esxi 4.1 it used to be faster than any SCP solution I could find.

With FastSCP I cannot reach more than 12MB upload speed, on a gigabit network with an IBM ServeRaid M1015 controller. Maybe I am doing something wrong.

0 Kudos
koester20111014
Contributor
Contributor

Hello.

You do not make mistakes. The upload speed of SCP on ESXi is just bad.

You can use the proftd and proftpd.conf you already use on ESXi 4.1.

See at http://vm-help.com/esx/esx3i/ESXi_enable_FTP.php

HTH

MK

0 Kudos
caraboy
Contributor
Contributor

Just tested this now, it kinda works. I mean, through VPN, with active mode, from 10.10.10.0 subnet I can list directories, but from the same subnet as the server, no matter what I do, I get a "could not list directory" error.

Thanks for your try! It`s a step forward. Smiley Happy

Message was edited by: caraboy - spelling correction

0 Kudos
caraboy
Contributor
Contributor

OK, I got it to work! Was a firewall issue. Smiley Happy

Works ok, takes 5-10 seconds at first connection, but still, no big improvement on upload speed (starts at 20MB/s, then drops at about 7-8 :smileyconfused:).

I am thinking about my setup, it`s a raid1 config, on a Serveraid m1015 controller, with write cache disabled (just to be safe). I have to 2.5 inch standard IBM server hdd, 500GB.

At this speed, it takes forever to upload a backup, or to restore a machine.

Anywayz, your guide works, I now have FTP on ESXi 5. :smileylaugh:

PS: running on gigabit network, from the storage server I can copy with reasonable speeds.

0 Kudos
SzosszeNET
Contributor
Contributor

Hello,

/etc/inetd.conf does not exists on on esxi 5, how did you make work ftp on esxi 5?

Regards

0 Kudos
caraboy
Contributor
Contributor

You do not need inetd.

You can launch the binary by using:

/sbin/proftpd &
in console.
0 Kudos
koester20111014
Contributor
Contributor

Hello.

you have to add the lines in /etc/rc.local and to copy the files to the datastore (see howto) to make it "reboot save".

FTP is not already out of the box available for ESXi5.

So it is not possible to change something in /etc/inetd.conf as it was was in earlier version and ftp works.

HTH
MK

0 Kudos
SzosszeNET
Contributor
Contributor

Smiley Sad

~ # /sbin/proftpd &
~ # vmwaredev - fatal: Socket operation on non-socket

Also get refused :

Status: Connecting to 10.42.0.53:21...

Status: Connection attempt failed with "ECONNREFUSED - Connection refused by server".

Error: Could not connect to server

Could be because I missed this?

- In proftpd.conf you have to say standalone System

If yes could you please detail what to change?

0 Kudos
koester20111014
Contributor
Contributor

Hello.

I am not really sure but you have to take a look at proftpd.conf

There has to be the following Line:

ServerType     standalone

And you have to open the Ports in the ESXi-Firewall.

So you have to use firewall.xml changes (see above).

So if you use the howto.

- Create folder in datastore (e.g. ftp)

- Copy proftpd, proftpd.conf and firewall.xml into the folder

- Add Lines to /etc/rc.local:

#copy ftp to directories and activate ftp
cp /vmfs/volumes/Data/ftp/service.xml /etc/vmware/firewall/service.xml
esxcli network firewall refresh 
cp /vmfs/volumes/Data/ftp/proftpd.conf /etc/proftpd.conf
cp /vmfs/volumes/Data/ftp/proftpd /sbin/proftpd
chmod 775 /sbin/proftpd
/sbin/proftpd &

(Take care with directory names)

- Restart

Everything works fine I thing.

HTH
MK

0 Kudos
SzosszeNET
Contributor
Contributor

You mean service.xml, right? As you copy service.xml. Smiley Happy

"cp /vmfs/volumes/Data/ftp/service.xml /etc/vmware/firewall/service.xml"

- Copy proftpd, proftpd.conf and firewall.xml into the folder

0 Kudos
koester20111014
Contributor
Contributor

Hello.

Yes im sorry. My mistake.

service.xml = firewall.xml

You have to open the ports...

HTH
MK

0 Kudos