26.1 Chapter 26 Remote Logging, Electronic Mail, and File Transfer Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
REMOTE LOGGING It would be impossible to write a specific client/server program for each demand. The better solution is a general-purpose client/server program that lets a user access any application program on a remote computer. TELNET SSH Topics discussed in this section:
TELNET is a general-purpose client/server application program. Remote virtual terminal One server supports multiple VTs Note
26.4 Example of Telnet (Character mode) Image from Dr. Wang’s course at:
26.5 Some Common Features of Telnet Telnet is on a single TCP connection to port 23 Telnet connection is unencrypted So easy for eavesdropper! In most cases, telnet is a remote terminal. Each character is transmitted in a separated packet The same is true for SSH login stage A feature that could be exploited for “timing attack”.
26.6 Telnet Commands telnet longwood.eecs.ucf.edu setup a remote shell to the server telnet longwood.eecs.ucf.edu 25 Setup a TCP connection to port 25 ( service) We will show this usage in lecture
26.7 SSH – Secure Shell Replacement of old unsecure Telnet program Both ends authenticate with each other Rely on public key cryptography Will introduce PK in last chapter All communication messages are encrypted SSH is used also as a secure tunneling channel for other applications File transfer Port forwarding (such as X window) Virtual private network (VPN)
26.8 SSH – Secure Shell Under Unix machine: Hidden directory.ssh saves all configuration files “known_hosts” saves public keys of all previous connected SSH servers Attacker cannot impersonates as a known SSH server anymore Have to trust what you get in the first connection attempt
26.9 SSH Programs and Usages Many open source ssh client software PuTTY SSH uses TCP connection on port 22 Login methods: Password private key kept on client, public key stored on server (come to this in later security chapter)
ELECTRONIC MAIL One of the most popular Internet services is electronic mail ( ). The designers of the Internet probably never imagined the popularity of this application program. Its architecture consists of several components that we discuss in this chapter. Architecture User Agent Message Transfer Agent: SMTP Message Access Agent: POP and IMAP Web-Based Mail Topics discussed in this section:
26.11 Figure 26.6 First scenario in electronic mail MUA: mail user agent
When the sender and the receiver of an are on the same system, we need only two user agents. MUA:Outlook Express, Netscape Messenger, Mozilla Thunderbird, Eudora, Foxmail,…… Note
26.13 When the sender and the receiver of an are on different systems, Wikipidia shows a good example of operation (next page) Note
26.14 Typical Operation (from Wikipidia) server’s DNS name and IP DNS query for MX RR Could also be IMAP4
26.15 Client’s Operation Mode Remote terminal using SSH to server directly Then uses MUA on server Such as Pine, Elm on Unix machines Use MUA on a client’s own computer The MUA formats and sends to sender’s server Web-based systems using web browser Gmail, yahoo mail, hotmail,…. Spammer: program a simple code sending to servers via SMTP protocol
26.16 Figure Services of user agent
26.17 Some examples of command-driven user agents are mail, pine, and elm (under Unix). Note
26.18 Some examples of GUI-based user agents are Eudora, Outlook, and Netscape. Note
26.19 Figure Format of an
26.20 Figure address Sender uses DNS query for MX record on the domain name in order to find the name and IP of the target server
26.21 Figure MIME (Multipurpose Internet Mail Extensions) NVT: network virtual terminal (telnet) SMTP protocol only this data
26.22 MIME User agents makes the translation between non-ASCII data and ASCII message If you check the source file of an that has attachment, you will find the MIME usage This is the main reason why your with an attachment becomes bigger?
26.23 Figure MIME header
26.24 Table 26.5 Data types and subtypes in MIME
26.25 Table 26.6 Content-transfer-encoding
26.26 Figure SMTP (Simple Mail Transfer Protocol) range POP3 or IMAP4
26.27 Figure Commands and responses
26.28 Figure Command format
26.29 Table 26.7 Commands
26.30 Table 26.8 Responses
26.31 Table 26.8 Responses (continued)
26.32 Let us see how we can directly use SMTP to send an and simulate the commands and responses we described in this section. We use TELNET to log into port 25 (the service port for SMTP). We then use the commands directly to send an . Through this process, you can see why you cannot trust the “sender” or any part of a received , why spam is so easy to be generated. Example 26.3
Sample sending using telnet “telnet longwood.cs.ucf.edu 25” C: HELO fake.domain S: 250 Hello crepes.fr, pleased to meet you C: MAIL FROM: S: 250 Sender ok C: RCPT TO: S: 250 Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: from: “fake man” C: to: “dr. who” C: subject: who am I? C: Do you like ketchup? C: How about pickles? C:. S: 250 Message accepted for delivery C: QUIT S: 221 longwood.cs.ucf.edu closing connection
Try SMTP interaction for yourself: telnet servername 25 see 220 reply from server enter HELO, MAIL FROM, RCPT TO, DATA, QUIT commands “mail from” the domain may need to be existed “rcpt to” the user needs to be existed A mail server may or may not support “relay” CS server supports relay from inside campus Enable you send without using user agent
26.35 NOTES: Ethnical Issue on Manual Sending Do not try to use telnet on department server except for the homework! Do not try to use it to spam your friends without upfront notice!
26.36 Figure POP3 (Post Office Protocol) and IMAP4 (Internet Mail Access Protocol)
26.37 Figure The exchange of commands and responses in POP3
26.38 POP3 and IMAP4 IMAP4 provides more functionalities Both POP3 and IMAP4 have corresponding encrypted protocols
26.39 Web-based clients use web browser for all interactions A user can access his/her at any where, via any computer that has Internet access provider may provide more functions Gmail has very good search capability Gmail has the message grouping function Many provide bundled services with their other products Voice/video, photo sharing, ….
FILE TRANSFER Transferring files from one computer to another is one of the most common tasks expected from a networking or internetworking environment. As a matter of fact, the greatest volume of data exchange in the Internet today is due to file transfer. File Transfer Protocol (FTP) Anonymous FTP Topics discussed in this section:
26.41 FTP uses the services of TCP. It needs two TCP connections. The well-known port 21 is used for the control connection and the well-known port 20 for the data connection. Note
26.42 Figure FTP
26.43 Figure Using the control connection
26.44 Figure Using the data connection
26.45 Example 26.4 (continued)
26.46 We show an example of anonymous FTP. We assume that some public data are available at internic.net. Example 26.5 We show an example of anonymous FTP. We assume that some public data are available at internic.net. continued on next slide
26.47 Example 26.5 (continued)
26.48 Dying of FTP People seldom use FTP nowadays Replaced with two ways: Web-based file upload/download Browser shows a directory content if the directory does not have a default html file SSH-based file transfer