Frequently Asked FTP Interview Questions
1. What is File Transfer Protocol (FTP)?
FTP (File Transfer Protocol) is a standard network protocol used to copy a file from one host to another over a TCP/IP-based network, such as the Internet. FTP is built on a client-server architecture and utilizes separate control and data connections between the client and server applications, which solves the problem of different end host configurations (i.e., Operating System, file names).
File Transfer Protocol is used with user-based password authentication or with anonymous user access.
2. Explain security concerns of FTP?
The original FTP specification has many security concerns. In May 1999, the following flaws were addressed:
? Bounce Attacks
? Spoof Attacks
? Brute Force Attacks
? Sniffing
? Username Protection
? Port Stealing
3. Explain Anonymous FTP?
A host that provides an FTP service may additionally provide anonymous FTP access. Users typically log into the service with an anonymous account when prompted for user name. Although users are commonly asked to send their email address in lieu of a password, no verification is actually performed on the supplied data, examples of anonymous FTP servers can be found here.
4. Explain Remote FTP or FTPmail?
Where FTP access is restricted, a remote FTP or FTPmail service can be used to circumvent the problem. An email containing the FTP commands to be performed is sent to a remote FTP server, which is a mail server that parses the incoming email, executes the FTP commands, and sends back an email with any downloaded files as an attachment.
Obviously this is less flexible than an FTP client, as it is not possible to view directories interactively or to modify commands, and there can also be problems with large file attachments in the response not getting through mail servers. As most internet users these days have ready access to FTP, this procedure is no longer in everyday use.
5. What is NAT traversal?
The representation of the IP addresses and port numbers in the PORT command and PASV reply poses a challenge to FTP in traversing Network address translators (NAT). The NAT device must alter these values, so that they contain the IP address of the NAT ed client, and a port chosen by the NAT device for the data connection.
The new address and port will probably differ in length in their decimal representation from the original address and port. Such translation is not usually performed in most NAT devices, but special application layer gateways exist for this purpose.
6. Explain FTP bounce attack?
FTP bounce attack is an exploit of the FTP protocol whereby an attacker is able to use the PORT command to request access to ports indirectly through the use of the victim machine as a middle man for the request.
This technique can be used to port scan hosts discreetly, and to access specific ports that the attacker cannot access through a direct connection.
nmap is a port scanner that can utilize an FTP bounce attack to scan other servers.
7. Explain FTP Spoofing attack?
In the context of network security, a spoofing attack is a situation in which one person or program successfully masquerades as another by falsifying data and thereby gaining an illegitimate advantage.
8. What is Brute force attack?
In cryptography, a brute force attack is a strategy used to break the encryption of data. It involves traversing the search space of possible keys until the correct key is found.
The selection of an appropriate key length depends on the practical feasibility of performing a brute force attack. By obfuscating the data to be encoded, brute force attacks are made less effective as it is more difficult to determine when one has succeeded in breaking the code.
9. How to deny specific users access to the FTP server ?
To deny specific users access to the FTP server, add their usernames to the /etc/vsftpd/ ftpusers file. By default, system users such as root and nobody are included in this list.
10. Can we create logs for ftp authenticated sessions ?
Yes, If the xferlog_enable directive in vsftpd.conf is set to YES, file transfers using the FTP protocol are logged to /var/log/xferlog. Information such as a time stamp, IP address of the client, the file being transferred, and the username of the person who authenticated the connection is included in the log entry.
11. What is meaning of max_clients parameter ?
Maximum number of clients that can connect at one time. If set to 0, the number of clients is unlimited.
12. Is there any way to monitor clients connected to vsftpd?
Yes. We actually have two slightly different methods to monitor vsftpd clients. First, make sure you have enabled the config option, “setproctitle_enable=YES” like in our example above and restart your vsftpd server. Then run the command “watch ps -Cvsftpd -o user, pid, stime, cmd” to watch the processes including ip, username and actions like idle or data retrieval.
13. I want to copy multiple files with out prompting for any info, how can I do that one?
ftp -i ftpserver
14. Local users cannot log in. How to resolve this issue?
Check “local_enable=YES” in your /etc/vsftpd/vsftpd. conf to allow local users to log in.
15. For Redhat Linux or Fedora which package is required for FTP service ?
Red Hat Enterprise Linux 5 or FEDORA includes the vsftpd FTP service.
vsftpd-2.0.5-12.el5 (For Redhat)
16. Important Configuration file for vsftp server ?
The FTP server uses the /etc/vsftpd/vsftpd.conf configuration file. Using this file, you can set options for displaying a custom banner message after users log in, setting the default file permissions for uploaded files, and setting the port on which to listen for incoming connections.
17. On which port VSFTP server works ?
FTP uses two ports, 20 and 21. By default, the FTP server listens for requests on port 21. After a connection is established, the client sends commands to the server on port 21. However, port 20 is used when the server sends data back to the client.
18. How to restart VSFTP server ?
service vsftpd restart
19. How to allow Anonymous FTP ?
Anonymous FTP is enabled by default by setting the anonymous_enable directive in /etc/vsftpd/vsftpd.conf to YES.
20. What is Passive mode?
Passive mode, like active mode, is initiated by the FTP client application. When requesting data from the server, the FTP client indicates it wants to access the data in passive mode and the server provides the IP address and a random, unprivileged port (greater than 1024) on the server. The client then connects to that port on the server to download the requested information.
21. Explain directive “session_support”?
When enabled, vsftpd attempts to maintain login sessions for each user through Pluggable Authentication Modules (PAM).
22. How to deny specific users access to the FTP server ?
To deny specific users access to the FTP server, add their usernames to the /etc/vsftpd/
ftpusers file. By default, system users such as root and nobody are included in this list.
23. Can we create logs for ftp authenticated sessions ?
Yes, If the xferlog_enable directive in vsftpd.conf is set to YES, file transfers using the FTP protocol are logged to /var/log/xferlog. Information such as a time stamp, IP address of the client, the file being transferred, and the username of the person who authenticated the connection is included in the log entry.
24. What is meaning of max_clients parameter ?
Maximum number of clients that can connect at one time. If set to 0, the number of clients is unlimited.