669 672




Linux Unleashed, Third Edition:SLIP and PPP





-->















Previous
Table of Contents
Next




dip
The dip program greatly simplifies the connection to a SLIP server. To use it, you need a chat script that contains all the commands used to establish communications with the SLIP server during login. The chat script usually includes your login and password, too, automating the login process.
A sample dip chat script is included in the man pages for dip, so display the man page and read the contents, then save the file (by redirection or copying the man page source) and edit the script. Here’s a sample chat script that you can enter by hand if necessary, making sure, of course, that you put in your own data:


# Connection script for SLIP
# Fetch the IP address of our target host.
main:
# Set the desired serial port and speed.
port /dev/cua0
speed 38400
# Reset the modem and terminal line.
reset
# Prepare for dialing.
send ATZ1\r
wait OK 4
if $errlvl != 0 goto error
dial 666-0999 ## Change to your server’s number!
if $errlvl != 0 goto error
wait CONNECT 60
if $errlvl != 0 goto error
# We are connected. Log in to the system.
login:
sleep 3
send \r\n\r\n
wait merlin> 20 ## Change to your server’s prompt
if $errlvl != 0 goto error
send login\n
wait name: 10 ## Wait username: prompt
if $errlvl != 0 goto erro
send login_name\n ## Change to your own
wait ord: 10 ## Wait password prompt
if $errlvl != 0 goto error
send my_password\n ## Change to your own!
wait merlin> 10
if $errlvl != 0 goto error
send slip\n ## Change to suit your server
wait SLIP 30 ### Wait for SLIP prompt
if $errlvl != 0 goto error
get $local remote 10 ## Assumes the server sends your IP..
if $errlvl != 0 goto error ## address as soon as you enter slip.
get $remote merlin ## slip server address from /etc/hosts
done:
print CONNECTED to $remote with address $rmtip we are $local
default
mode SLIP
goto exit
error:
print SLIP to $host failed.
exit:
# End dip script


Several different variations of the chat scripts are currently available, including a few on most CD-ROM distributions. If you have access to the Internet, you can find them on some FTP sites or posted on a Linux newsgroup.

Setting Up PPP
PPP is a more powerful protocol than SLIP and is preferable for most uses. PPP functions are divided into two parts; one for the High-Level Data Link Control (HLDC) protocol, which helps define the rules for sending PPP datagrams between the two machines, and one for the PPP daemon called pppd, which handles the protocol once the HLDC system has established communications parameters.
As with SLIP, PPP establishes a modem link between two machines, then hands over the control of the line to PPP. Prior to establishing a PPP link, you must have a loopback driver established. You should also have a name resolution system in operation, even if it’s the /etc/hosts file or a simple DNS cache-only name server. (See the section called “Using DNS for SLIP and PPP” later in this chapter.)
Setting Up a PPP Account
If you are letting people dial in to your system using PPP, for security reasons it is best to use PPP with a special user account called PPP. This is not necessary if you are dialing out only, and you can easily use PPP from any user account; but for more secure operation, consider creating a new user just for PPP, especially when allowing dial-ins. First, you need to add a new user to the system. You can use whatever script your operating system normally uses (such as newuser, adduser, or simple editing of the /etc/passwd file).
A sample /etc/passwd entry for the PPP account (with UID set to 201 and GID set to 51) looks like this:


ppp:*:201:51:PPP account:/tmp:/etc/ppp/pppscript


In this case, the account is set with no password (so no one can log in to the account) and because no files are created, a home directory of /tmp is used. The startup program is set to /etc/ppp/pppscript, a file you create with configuration information in it. (You can use any filename instead of pppscript.)
A sample of the pppscript file looks like this:


#!/bin/sh
mesg n
stty -echo
exec pppd -detach silent modem crtscts


The first line forces execution of the script to the Bourne (or bash) shell, regardless of which shell you’re running (see Chapter 14, “Shell Programming,” for more details). The second line turns off all attempts to write to the PPP account’s tty. The stty command on the third line is necessary to stop everything the remote sends from being echoed to the screen again. Finally, the exec command on the last line runs the pppd daemon (which handles all PPP traffic). You will see the pppd daemon and its options later in this section.



Previous
Table of Contents
Next














Wyszukiwarka

Podobne podstrony:
669 672
670 672
Nuestro Circulo 669 COMENTA LEONTXO, 20 de junio de 2015
672,39,artykul
669 Tworzymy zakładowy plan kont cz III
672 674
672 675
669 (2)

więcej podobnych podstron