website annotate en/doc/handbook/network-config.html @ rev 314

en: Start to update website (V2)
author Paul Issott <paul@slitaz.org>
date Sun Mar 22 16:02:03 2009 +0000 (2009-03-22)
parents 3c4edaebb9b5
children 5ea4a83c8f7a
rev   line source
paul@15 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
paul@15 2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
paul@15 3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
paul@15 4 <head>
paul@15 5 <title>SliTaz Handbook - Network configuration</title>
paul@15 6 <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
paul@15 7 <meta name="description" content="slitaz English handbook network config pppoe ppp eth dhcp" />
paul@15 8 <meta name="expires" content="never" />
MikeDSmith25@117 9 <meta name="modified" content="2008-07-17 22:30:00" />
paul@15 10 <meta name="publisher" content="www.slitaz.org" />
paul@15 11 <meta name="author" content="Paul Issot, Christophe Lincoln"/>
paul@15 12 <link rel="shortcut icon" href="favicon.ico" />
paul@15 13 <link rel="stylesheet" type="text/css" href="book.css" />
paul@15 14 </head>
paul@15 15 <body bgcolor="#ffffff">
paul@15 16
paul@15 17 <!-- Header and quick navigation -->
paul@15 18 <div id="header">
paul@15 19 <div align="right" id="quicknav">
paul@15 20 <a name="top"></a>
paul@63 21 <a href="system-admin.html">System administration</a> |
paul@15 22 <a href="index.html">Table of contents</a>
paul@15 23 </div>
paul@15 24 <h1><font color="#3E1220">SliTaz Handbook (en)</font></h1>
paul@15 25 </div>
paul@15 26
paul@15 27 <!-- Content. -->
paul@15 28 <div id="content">
paul@15 29 <div class="content-right"></div>
paul@15 30
paul@15 31 <h2><font color="#DF8F06">Network configuration</font></h2>
paul@15 32
paul@15 33 <ul>
paul@15 34 <li><a href="#eth">Ethernet connection</a> - DHCP or static IP.</li>
paul@15 35 <li><a href="#driver">Install network card driver</a> - Find and load Kernel
paul@15 36 modules.</li>
paul@63 37 <li><a href="#netbox">Netbox</a> - Configure network.</li>
paul@15 38 <li><a href="#pppoe">PPPoE kernel-mode</a> - Dial-up modem connection in
paul@15 39 Kernel mode.</li>
paul@15 40 <li><a href="#rp-pppoe">PPPoE with rp-pppoe</a> - Dial-up modem.</li>
paul@64 41 <li><a href="#firewall">Firewall</a> - Manage the Firewall (Iptables).</li>
paul@15 42 </ul>
paul@15 43
paul@15 44 <a name="eth"></a>
paul@314 45 <h3>About the Network</h3>
paul@15 46 <p>
paul@15 47 By default SliTaz starts a DHCP client (udhcpc) on eth0 at boot time. If your
paul@15 48 network card has been identified as an <code>eth0</code> interface and you use
paul@15 49 a router, your connection should already be working. DHCP is dynamically
paul@15 50 configured, on each boot the client asks for a new IP address from
paul@15 51 the DHCP server, which is integrated into the router, or on another computer.
paul@15 52 If you need a static IP, you can directly edit config files or use the GUI
paul@15 53 <code>netbox</code> available from JWM menu --&gt; System tools. In a terminal
paul@15 54 or a Linux console, you can list all available network interfaces with the
paul@15 55 command <code>ifconfig</code> followed by the <code>-a</code> option:
paul@15 56 </p>
paul@15 57 <pre>
paul@15 58 $ ifconfig -a
paul@15 59 </pre>
paul@15 60 <p>To display the Kernel's IP routing table, you can use the <code>route</code> command
paul@15 61 without any arguments:
paul@15 62 </p>
paul@15 63 <pre>
paul@15 64 $ route
paul@15 65 </pre>
paul@15 66 <p>
MikeDSmith25@117 67 The system wide network configuration file is <code>/etc/network.conf</code>.
MikeDSmith25@117 68 It can be graphically configured with <code>netbox</code> or directly edited by
paul@15 69 the root administrator.
paul@15 70 </p>
paul@15 71
paul@314 72 <a name="netbox"></a>
paul@314 73 <h3><font color="#6c0023">Netbox - Configure the network</font></h3>
paul@314 74 <p>
paul@314 75 Netbox is a small GTK+ application to configure a network interface using
paul@314 76 DCHP or a fixed (static) IP address. The tabs can be used to start/stop the
paul@314 77 connections and automatically change the values in the system files. Netbox
paul@314 78 also provides a system wide tab from which you can directly edit network
paul@314 79 configuration files.
paul@314 80 </p>
paul@314 81
paul@314 82 <img
paul@314 83 src="images/screenshots/netbox.png"
paul@314 84 alt="Slitaz Netbox"
paul@314 85 style="width: 536px; height: 357px;" />
paul@314 86
paul@314 87 <p>
paul@314 88 You can start netbox from the system tools menu or via a terminal:
paul@314 89 </p>
paul@314 90 <pre>
paul@314 91 $ subox netbox
paul@314 92 </pre>
paul@314 93
paul@314 94 <a name="wifibox"></a>
paul@314 95 <h3><font color="#6c0023">Wifibox - Graphical configuration of the wireless network</font></h3>
paul@314 96 <p>
paul@314 97 Wifibox is small interface to configure a network connection (Wifi,
paul@314 98 WLAN, or Wireless). The 'Networks' tab displays a list of available
paul@314 99 networks, just double click on a network name to connect. If the network
paul@314 100 is secure, the key will then be sought.
paul@314 101 </p>
paul@314 102
paul@314 103 <img
paul@314 104 src="images/screenshots/wifibox.png"
paul@314 105 alt="SliTaz Wifibox"
paul@314 106 style="width: 533px; height: 330px;" />
paul@314 107
paul@314 108 <p>
paul@314 109 The 'Favorites' tab allows you to set your preferred networks. Once a
paul@314 110 network is added, just double click on the network name to connect. The
paul@314 111 'Configuration' tab lets you configure a connection manually using the
paul@314 112 advanced settings such as the mode or channel. The 'Drivers' tab allows
paul@314 113 you to configure a network card; there are 3 options:
paul@314 114 </p>
paul@314 115 <ol>
paul@314 116 <li>The card is supported directly by the kernel via a module.</li>
paul@314 117 <li>The card needs a module and non-free firmware that can be installed
paul@314 118 automatically via the auto-detect tool (tazhw).</li>
paul@314 119 <li> The card is not supported by Linux and a Windows driver must be
paul@314 120 installed via the Windows driver manager (tazndis).</li>
paul@314 121 </ol>
paul@314 122
paul@15 123 <a name="driver"></a>
paul@15 124 <h3>Install network card driver</h3>
paul@15 125 <p>
MikeDSmith25@117 126 In case you need a network card driver and don't know the driver name, you can
paul@15 127 use the command <code>lspci</code> to find your card and then <code>modprobe</code>
paul@15 128 to load a module. In Live mode you can use the SliTaz boot option
paul@15 129 <code>modprobe=modules</code> to automatically load Kernel modules. To get a
paul@15 130 list of all available network card drivers, display PCI eth cards and load a
paul@15 131 module:
paul@15 132 </p>
paul@15 133 <pre>
paul@15 134 # modprobe -l | grep drivers/net
paul@15 135 # lspci | grep [Ee]th
paul@15 136 # modprobe -v module_name
paul@15 137 </pre>
paul@15 138 <p>
paul@15 139 On an installed system you just need to add the module_name to the variable
paul@15 140 <code>LOAD_MODULES </code> in <code>/etc/rcS.conf</code> to load your module
paul@15 141 on each boot.
paul@15 142 </p>
paul@15 143
paul@314 144 <a name="hostname"></a>
paul@314 145 <h3><font color="#6c0023">/etc/hostname - The hostname</font></h3>
paul@63 146 <p>
paul@314 147 The file /etc/hostname sets the machine name. This is loaded at system
paul@314 148 startup with the command 'hostname', without an argument this
paul@314 149 command returns the current machine name:
paul@63 150 </p>
paul@63 151 <pre>
paul@314 152 $ hostame
paul@314 153 </pre>
paul@314 154 <p>
paul@314 155 To change the hostname, you can use the <code>echo</code> command or a text
paul@314 156 editor available on SliTaz (you must be root). Example using <code>echo </code>
paul@314 157 and the machine name <code>kayam</code>:
paul@314 158 </p>
paul@314 159 <pre>
paul@314 160 # echo "kayam" > /etc/hostname
paul@63 161 </pre>
paul@63 162
paul@15 163 <a name="pppoe"></a>
paul@15 164 <h3><font color="#6c0023">PPPoE connection kernel-mode</font></h3>
paul@15 165 <p>
paul@15 166 PPPoE connection in kernel-mode needs 2 files. The first file is
paul@15 167 <code>/etc/ppp/options</code> where you must specify your login name:
paul@15 168 </p>
paul@15 169 <pre class="script">
paul@15 170 plugin rp-pppoe.so
paul@15 171 name &lt;your provider connection ID&gt;
paul@15 172 noipdefault
paul@15 173 defaultroute
paul@15 174 mtu 1492
paul@15 175 mru 1492
paul@15 176 lock
paul@15 177 </pre>
paul@15 178 <p>
paul@15 179 Now you have to configure /etc/ppp/pap-secrets or /etc/ppp/chap-secrets:
paul@15 180 </p>
paul@15 181 <pre class="script">
paul@15 182 # client server secret IP addresses
paul@15 183 "your_login" * "your_password"
paul@15 184 </pre>
paul@15 185 <p>
paul@15 186 The config file /etc/resolv.conf will be automatically loaded up. Finished, you can
paul@15 187 now connect to the internet with <code>pppd</code>:
paul@15 188 </p>
paul@15 189 <pre>
paul@15 190 pppd eth0
paul@15 191 </pre>
paul@15 192 <p>
paul@15 193 On an installed system you can start pppd on each boot using the local startup
paul@15 194 script: <code>/etc/init.d/local.sh</code>
paul@15 195 </p>
paul@15 196
paul@15 197 <a name="rp-pppoe"></a>
paul@15 198 <h3><font color="#6c0023">Enable Dial-up Modem - PPPoE with rp-pppoe</font></h3>
paul@15 199 <p>
MikeDSmith25@117 200 To set an ASDL protocol via PPPoE, SliTaz provides the utilities
paul@15 201 package <code>rp-pppoe</code>. Using <code>pppoe-setup</code> is a snap and you
paul@15 202 can quickly configure the network. If you use DCHP it's even easier, because
paul@15 203 the server from your ISP will take care of everything. If you do not have DHCP,
MikeDSmith25@117 204 you must first disable its use via <code>DHCP="no"</code> from the
paul@15 205 configuration file <code>/etc/network.conf</code>. It should be noted that to
MikeDSmith25@117 206 modify configuration files and system logs you must first become <code>root</code>.
paul@15 207 To install and change the variable DHCP with Nano (ctrl + x to save &amp; exit):
paul@15 208 </p>
paul@15 209 <pre>
paul@15 210 $ su
paul@15 211 # tazpkg get-install rp-pppoe
paul@15 212 # nano /etc/network.conf
paul@15 213 </pre>
paul@15 214 <h4>Configure with pppoe-setup</h4>
paul@15 215 <p>
paul@15 216 To begin to configure your PPPoE connection, you must first open an Xterm or
MikeDSmith25@117 217 Linux console and launch <code>pppoe-setup</code> and then begin to answer
paul@15 218 the following questions:
paul@15 219 </p>
paul@15 220 <pre>
paul@15 221 # pppoe-setup
paul@15 222 </pre>
paul@15 223 <ol>
paul@15 224 <li>Enter your username, please note that this is the username with which you
paul@15 225 communicate with your ISP.</li>
paul@15 226 <li>Internet interface, default is eth0 unless you have more than one,
paul@156 227 in which case you will have eth1, eth2, etc. Usually the Enter key is
paul@15 228 sufficient.</li>
paul@15 229 <li>If you have a permanent ASDL link answer
MikeDSmith25@117 230 <strong>yes</strong>, otherwise answer <strong>no</strong> (default).</li>
MikeDSmith25@117 231 <li>Specify the primary and secondary DNS your ISP uses (you may have to ask).</li>
paul@15 232 <li>Enter the password with which you communicate with your ISP (you need
MikeDSmith25@117 233 to enter it twice).</li>
MikeDSmith25@117 234 <li>Choose the firewall settings depending on your hardware. If you
paul@15 235 have a router you can enter 1 or 2. If in doubt enter 1.</li>
paul@15 236 </ol>
paul@15 237 <h4>Start and Stop the connection</h4>
paul@15 238 <p>
paul@15 239 Still using the command line, simply type <code>pppoe-start</code> to start
paul@15 240 the connection. A few seconds later the system tells you that it is connected.
paul@159 241 If it gives you a message like TIMED OUT, you may have poorly configured or
paul@15 242 the connection is defective. Please check the wiring and repeat the installation
paul@15 243 from the beginning. To start the connection:
paul@15 244 </p>
paul@15 245 <pre> # pppoe-start
paul@15 246 </pre>
paul@15 247 <p>
paul@129 248 To stop the connection, you can type
paul@128 249 <code>pppoe-stop</code>.
paul@15 250 </p>
paul@15 251
paul@15 252 <a name="firewall"></a>
paul@15 253 <h3><font color="#6c0023">Manage the Firewall (<em>firewall</em>) using Iptables</font></h3>
paul@15 254 <p>
paul@15 255 SliTaz provides a very basic firewall, the kernel security rules are launched
paul@15 256 at boot time and iptables rules are disabled by default. You can
paul@15 257 activate/disable these at startup by using the configuration file:
paul@15 258 /etc/firewall.conf.
paul@15 259 </p>
paul@15 260 <p>
paul@155 261 The default <em>firewall</em> script begins with its own set options for the
paul@15 262 Kernel ie. ICMP redirects, source routing, logs for unresolved addresses and
paul@15 263 spoof filters. The script then launches the rules defined in the
paul@15 264 <code>iptables_rules()</code> function of the configuration file:
paul@15 265 /etc/firewall.conf.
paul@15 266 </p>
paul@15 267 <p>
paul@15 268 The <em>firewall</em> uses Iptables, it consists of two files, the
paul@15 269 /etc/firewall.conf and /etc/init.d/firewall, you shouldn't need to modify
paul@15 270 these. Note Iptables has lots of options, for more infomation see the official
paul@15 271 documentation available online:
paul@15 272 <a href="http://www.netfilter.org/documentation/">www.netfilter.org/documentation/</a>.
paul@15 273 </p>
paul@15 274 <h4>Start, stop, restart the firewall</h4>
paul@15 275 <p>
paul@15 276 The script /etc/init.d/firewall lets you start/restart, stop or display the
paul@15 277 status of the firewall. The restart option is often used to test new rules
paul@15 278 after editing the configuration file. Example:
paul@15 279 </p>
paul@15 280 <pre>
paul@15 281 # /etc/init.d/firewall restart
paul@15 282 </pre>
paul@15 283 <h4>Enable/Disable the firewall at boot</h4>
paul@15 284 <p>
MikeDSmith25@117 285 To enable/disable options specific to the Kernel place "yes"
paul@15 286 or "no" in the variable KERNEL_SECURITY= :
paul@15 287 </p>
paul@15 288 <pre class="script">
paul@15 289 # Enable/disable kernel security at boot time.
paul@15 290 KERNEL_SECURITY="yes"
paul@15 291 </pre>
paul@15 292 <p>
paul@15 293 and to activate/deactivate the iptables rules, it is necessary to modify the
paul@15 294 variable IPTABLES_RULES= :
paul@15 295 </p>
paul@15 296 <pre class="script">
paul@15 297 # Enable/disable iptables rules.
paul@15 298 IPTABLES_RULES="yes"
paul@15 299 </pre>
paul@15 300 <h4>Add, delete or modify the iptables rules</h4>
paul@15 301 <p>
MikeDSmith25@117 302 At the bottom of the configuration file: /etc/firewall.conf, you will find a
MikeDSmith25@117 303 function named: <code>iptables_rules()</code>. This function contains all of
MikeDSmith25@117 304 the iptables commands to launch when the firewall starts. To delete a rule, It
MikeDSmith25@117 305 is advisable to comment out the corresponding line with a <code>#</code>. It is
MikeDSmith25@117 306 <em>not</em> advisable to leave the function completely empty, if you want to disable the
paul@15 307 iptables rules just add "no" to the variable IPTABLES_RULES= in the
paul@15 308 configuration file.
paul@15 309 </p>
paul@15 310 <p>
MikeDSmith25@117 311 Here's an example of using iptables rules. It only allows connections on the
MikeDSmith25@117 312 localhost and the local network, and ports 80, 22, and 21 used by the web server
MikeDSmith25@117 313 HTTP, the SSH secure server and FTP respectively. All other incoming and
MikeDSmith25@117 314 outgoing connections are refused, so it's fairly restrictive.
paul@15 315 </p>
paul@15 316 <pre class="script">
paul@15 317 # Netfilter/iptables rules.
MikeDSmith25@117 318 # This shell function is included in /etc/init.d/firewall.sh
paul@15 319 # to start iptables rules.
paul@15 320 #
paul@15 321 iptables_rules()
paul@15 322 {
paul@15 323
MikeDSmith25@117 324 # Drop all connections.
paul@15 325 iptables -P INPUT DROP
paul@15 326 iptables -P OUTPUT DROP
paul@15 327
paul@15 328 # Accept all on localhost (127.0.0.1).
paul@15 329 iptables -A INPUT -i lo -j ACCEPT
paul@15 330 iptables -A OUTPUT -o lo -j ACCEPT
paul@15 331
paul@15 332 # Accept all on the local network (192.168.0.0/24).
paul@15 333 iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT
paul@15 334 iptables -A OUTPUT -d 192.168.0.0/24 -j ACCEPT
paul@15 335
paul@15 336 # Accept port 80 for the HTTP server.
paul@15 337 iptables -A INPUT -i $INTERFACE -p tcp --sport 80 -j ACCEPT
paul@15 338 iptables -A OUTPUT -o $INTERFACE -p tcp --dport 80 -j ACCEPT
paul@15 339
paul@15 340 # Accept port 22 for SSH.
paul@15 341 iptables -A INPUT -i $INTERFACE -p tcp --dport 22 -j ACCEPT
paul@15 342 iptables -A OUTPUT -o $INTERFACE -tcp --sport 22 -j ACCEPT
paul@15 343
paul@15 344 # Accept port 21 for active FTP connections.
paul@15 345 iptables -A INPUT -i $INTERFACE -p tcp --dport 21 -j ACCEPT
paul@15 346 iptables -A OUTPUT -i $INTERFACE -p tcp --sport 21 -j ACCEPT
paul@15 347
paul@15 348 }
paul@15 349
paul@15 350 </pre>
paul@15 351
paul@15 352 <!-- End of content -->
paul@15 353 </div>
paul@15 354
paul@15 355 <!-- Footer. -->
paul@15 356 <div id="footer">
paul@15 357 <div class="footer-right"></div>
paul@15 358 <a href="#top">Top of the page</a> |
paul@15 359 <a href="index.html">Table of contents</a>
paul@15 360 </div>
paul@15 361
paul@15 362 <div id="copy">
paul@15 363 Copyright &copy; 2008 <a href="http://www.slitaz.org/en/">SliTaz</a> -
paul@15 364 <a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>;<br />
paul@15 365 Documentation is under
paul@15 366 <a href="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation License</a>
paul@15 367 and code is <a href="http://validator.w3.org/">valid xHTML 1.0</a>.
paul@15 368 </div>
paul@15 369
paul@15 370 </body>
paul@15 371 </html>
paul@15 372