Use HTTP:// instead of FTP://

Hello i use FTP (vsftpd) on my My Cloud and linked it to a domain. the problem is it shows as a FTP:// link . My uni blocks FTP access however they do not block http access.

Does anyone know of a simple guide on how i can host a HTTP server using the existing FTP server ?

Not sure what you’re trying to do…

Is your MyCloud within, or outwith your university’s network? i.e. are you trying to access your MyCloud FTP server (located at home) from within the university, or access your MyCloud FTP server (located within the university), whilst at home?

Does a web-based FTP client such as Filezilla not work, or is all FTP traffic blocked?

all direct FTP access is blocked (its shoddy work not active blocking) and its from my home using a registered domain

Is the ISP blocking all FTP inbound access or just the inbound access on the FTP port 21?

Typically an ISP, if they do block inbound access, will only block the specific port, in this case port 21 for FTP. One, if their router/gateway supports it, can configure “port forwarding” within the router to forward another port inbound port to port 21 on the My Cloud. See your router’s administration page and documentation to setup port forwarding if it is supported by the router.

to be honest im not sure how they are blocking it.
I know they have the cisco firewal (ASA) but a short backstory, they fired 90% of the IT staff so no one is really looking to make changes to how things are done and no one knows how the system works anymore.
I can access some FTP sites as long as they use http (http://ftp.example.com) but i can access my own (ftp://ftp.example.com)
they could just be blocking port 21 or they could be checking the content.

did you try to change the FTP port? you can set it to anything it doesnt have to be 21… also you could try to use SFTP or FTPS…

EDIT: also you can use proxy
EDIT2: if you are looking for access to the files you can use http://web2ftp.com/

FTP is not a secure protocol. Not recommended over the internet. All passwords will be in clear text.

The secure option is a bit more advanced; enabling SSH and then using SFTP or SCP protocols.
However, for this one, it is recommended to not allow remote access for root.

Nevertheless, all useless if your company also blocks SSH.

having problems with ports.
Set vsftpd.conf listen port to 50501 and restarted the service however it wont connect should i use a specific port ?

I’m not too worried about the security. there’s little to no personal data on there, its mainly for my work so i can work between uni, work and home without a million USB drives (also with USB blocking).

I think there is an issue of the FTP not working due to no prompting if the password.

I am trying to connect using a web browser and going to (ip)123.45.66.7:50501
It works in filezilla but i do need the browser version working due to software not installed on uni PCs

Using ftp URI in the browser won’t work, think it was removed long ago (since XP?) not sure why. Do it in windows explorer instead if you don’t have ftp client. You’ll get a permission denied error prompt, click ok then r-click on the blank area, login as.

The above should work provided port 50501 isn’t blocked as well. I used to work very closely with the IT security department to troubleshoot firewall, routes and stuffs. Usually only port 80/443 is open for outgoing and requires you to route via the company’s proxy. Proxy will not work in windows explorer.

A side note, you don’t have to change the MyCloud FTP daemon port, as pointed out by Bennor, route port 50501 from your router to MyCloud’s 21.

messing with the PCs in anyway including adding network drives is not an option (they even disable right click on most PCs) browser based is my only option at this point which brings me back to my original question. is there a simple way to host the FTP using a HTTP webserver ?

Nothing to mess, just type ftp://123.45.66.7:50501 in windows explorer. If you can’t right click then include the username and password in the URI i.e. ftp://user:pass@123.45.66.7:50501.

There’s no easy way for you to host FTPD as HTTPD. If you have some CGI (PHP) knowledge, then you could apply this Monsta FTP into the existing Apache server.

I’m very interested in this but don’t know how to integrate in the My Cloud. Could you give us some hints or a small howto?

The screenshot was from Nginx web server running on v4 firmware, look for my webhosting mods thread [APP] WebHosting for firmware V4+ (10/2015) if you want Nginx, MySQL and other CGI stuffs.

I haven’t tested but if you want to try on the existing Apache2 web server (from what I see it should work), as per-norm warranty void disclaimer applies, extract the zip into /var/www/htdocs/ftp then access it from http://wdmycloud/ftp or http://192.168.1.x/ftp or even your DDNS or public IP (provided you did the port forward).

1 Like

It is really simple to setup and integration is automatic. Note: Use the following at your own risk!

General Monsta FTP Install Steps:

  1. Make sure to enable FTP in the WD My Cloud Dashboard > Settings > Network > Network Services > FTP Access = On.
  2. Next, ensure SSH is on by activating it on the WD My Cloud Dashboard > Settings > Network > Network Services > SSH = On.
  3. Next, using SSH (Putty is a popular SSH terminal program) log into the My Cloud. Note: If you don’t know how to use SSH or even basic Linux commands please perform a Google search to learn how to use SSH and enter basic Linux commands.
  4. Once logged into the My Cloud via SSH, type: cd /var/www/htdocs/
  5. In the /var/www/htdocs/ folder type: mkdir ftp
  6. Next, type: cd ftp
  7. In the /var/www/htdocs/ftp folder type:
    wget http://www.monstaftp.com/download/monsta_ftp_v1.6.4_install.zip
  8. Next, type: unzip monsta_ftp_v1.6.4_install.zip
  9. Once the file has finished unzipping access the Monsta UI on your My Cloud by using your web browser and going to: http://<mycloudname or ip address>/ftp
  10. On the Monsta FTP UI page, for the “FTP Host” enter your My Cloud name or IP address. Then use your My Cloud User name and password in the Username and Password fields. Then click the Login button and you should be logged into your My Cloud and can use the Monsta FTP UI page to upload files to your My Cloud.

Update 1: Once port forwarding (http port 80) was setup and configured within the router/gateway to forward http port 80 to the My Cloud, I was able to remotely access the Monsta FTP UI at my public IP address (for example http://12.345.678.900/ftp). One word of note when accessing remotely, use the local network name or IP address for the My Cloud in the Monsta FTP UI’s FTP Host field.

Unknown how secure this UI is, in other words are the login information sent as plain text. There is an option on the Monsta FTP UI to “Connect using SSL (if available)” but unknown how this is setup (port forward HTTPS or SSH?) .

Update 2: Removing the Monsta FTP program/UI should be as simple as just deleting the /var/www/htdocs/ftp folder and its contents via SSH. If removing the Monsta FTP program/UI remember to remove the port mappings to the My Cloud within one’s router/gateway as well. Note: Take care when deleting the /var/www/htdocs/ftp folder, make sure to remove ONLY the ftp folder and no others within the /var/www/htdocs/ directory.

Post edited and updated.

1 Like

This is TLS/SSL Explicit Encryption (FTPS), by default not enabled on MyCloud’s vsftpd. No point trying to enable FTPS on MyCloud and using this on the app if you’re only connecting to internal MyCloud via this app. It will make things slower.

If you’re concerned about security especially the plain text credential, switch to TLS(preferred)/SSL, in simpler terms, HTTPS/443 instead of HTTP/80. You can also add HTTP authentication realm to the path for private use, the HTTP user/pass will be sent encrypted in HTTPS (see my webhosting mods, links below->how to secure wdmycloud or Google).

1 Like

Thank you Nazar78 and Bennor for your work and the very helpful informations.

Thanks very much guys. this is going to make my life a million times easier :smiley:

No problem enjoy (-: Wonderful things you could do with this low-end NAS :stuck_out_tongue: My up-coming project is upgrading to PHP7 (lower resources and x2 the performance of PHP5), the Dashboard is snappy with PHP7.0.2 :slightly_smiling:

If you start to play around with PHP, take note about Opcache cause it’s enabled in MyCloud. Any changes to the codes/settings needs you to reload them, in this case Apache itself service apache2 reload;

1 Like

The traffic from the computer to the UI, if one is outside their home network is where the security is a potential issue for some. Those folks will want a more secure path which will entail some more work, as you point out, on their part beyond just unzipping the app and port forwarding one port.

This is a good easy to setup and use solution for those who don’t or can’t use a stand alone FTP app on the remote side.