About FTP and Shared Hosting

From XMission Wiki
Revision as of 23:55, 7 December 2022 by Jab (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Plesk Shared Hosting: About FTP and Shared Hosting

What is FTP?

The File Transfer Protocol or FTP, is a protocol used to transfer files over a TCP/IP network (Internet, UNIX, etc.). For example, after developing the HTML pages for a website on a local machine, the new files are typically uploaded to the Web server using FTP.

FTP includes functions to log onto the network, list directories, and copy files. FTP operations can be performed by typing commands at a command prompt or via an FTP client running under a graphical interface such as Windows.

We highly recommend using an FTP client, such as Filezilla.

As there are many FTP clients out there, the interface for each will differ slightly. The screenshots used in the instructions below are from Filezilla but the basic settings should be the same no matter what FTP client you choose.

Secure FTP Methods

FTPS (also known FTP-SSL, and FTP Secure) is an extension to the commonly used File Transfer Protocol (FTP) that adds support for the Transport Layer Security (TLS) and, formerly, the Secure Sockets Layer (SSL, which is now prohibited by RFC7568) cryptographic protocols.

Explicit FTPS is an extension to the FTP standard that allows clients to request FTP sessions to be encrypted. This is done by sending the "AUTH TLS" command. The server has the option of allowing or denying connections that do not request TLS. This protocol extension is defined in RFC 4217. Implicit FTPS is an outdated standard for FTP that required the use of a SSL or TLS connection. It was specified to use different ports than plain FTP.

The SSH File Transfer Protocol (or SFTP) transfers files and has a similar command set for users, but uses the Secure Shell Protocol (SSH) to transfer files. Unlike FTP, it encrypts both commands and data, preventing passwords and sensitive information from being transmitted openly over the network.

NOTE: For added security and to protect against vulnerabilities, XMission only supports authenticated encryption. Using the most current SFTP client will ensure you are connecting to your server and our network with the highest security.

XMission supports the following, in order of preference:

  • Ciphers: chacha20-poly1305@openssh.com, aes128-gcm@openssh.com, and aes256-gcm@openssh.com
  • MACs: hmac-sha2-256-etm@openssh.com, hmac-sha2-512-etm@openssh.com, hmac-sha2-256, and hmac-sha2-512.
  • KexAlgs: curve25519-sha256@libssh.org, ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, and diffie-hellman-group-exchange-sha256.

How does FTP work with my Shared Hosting?

FTP is the recommended way to upload the files you have created for your website to our server. In general, FTP, both as a command-line function and as utility, is more reliable than uploading files via your web browser. This is because does it not have many restrictions on file sizes that web browsers have, in addition to the FTP client being able to better handle interrupted connections to avoid data corruptions. It is also a useful tool in making files available to friends, family, or clients without sending bulky attachments via email.

How do I connect to XMission's Plesk Shared Hosting FTP server via an FTP Client?

Every FTP client has a slightly different interface. However, the three pieces below are typically all that is necessary to create an FTP connection:

Host Address = Most commonly your domain with the “ftp.” prefix. Example: ftp.yourdomain.com
UserID or Username = Either the same username used at hosting.xmission.com or a custom one created later. For more information on creating and managing FTP users, please see Managing_FTP_Access/Users
Password = Your FTP password for the primary username can sometimes be the same as the hosting.xmission.com password, but is not inherently. For more information on creating and managing FTP user passwords, please see Managing_FTP_Access/Users
Port = Our servers will not accept plain text authentication, so you will want to use port 22 with SFTP primarily. If you are having issues connecting over this port, use FTPS with Explicit SSL over port 21 is also accepted.

For example, using Filezilla, a common connection would look like this, where ftp.yourdomain.tld is the example host and username is the example username:

NOTE: If your nameservers are not pointing to XMission, please use the IP address for your shared server for your host name. This can be found in your Websites and Domains tab.

Filezilla ftp updated.png

  • If you are connecting to a server for the first time, Filezilla will ask you to confirm the connection. Simply click OK to progress.

Filezilla OK button.png

  • Once the connection is complete, you will see both the local site (your computer or device) and the remote site (the web server).

FTP connect2.png

  • In most cases, the root folder for your website is going to httpdocs and you will want to upload the files for your website to this directory. This can be done a variety of ways. You can select the files you want to upload, and right click them for uploading options, or you can also simply drag them to the remote site and folder you would like them to be uploaded to.

FTP connect3.png

SFTP doesn't work for me. How do I connect over FTPS?

If for some reason you are not able to connect with SFTP over port 22, there is the option to connect with FTPS over port 21. These instructions are specific for Filezilla, but the settings themselves should work in any client.

  • First, open up the Site Manager.

Filezilla connection manager.png

  • In here, click on New Site.

Filezilla connection manager new site.png

  • This will allow you to edit the connection details for a new site. Input your credentials (username, password, host name), and otherwise match the settings to what you see below.

Filezilla connection manager ftps settings.png

  • Once you're all done, click Connect.

Additional Development Help


Domain Management