Data Networking/Fall 2015/ZZTL

From Wikiversity
Jump to navigation Jump to search

Group Members[edit | edit source]

Xiao TAN
Bohan ZHONG
Junjie LI
Xiyu ZHAO

Motivations[edit | edit source]

The project aims to establish a network and provide relative functions for a company. The key concepts used in the project are highly related to our Data Networking class. While configuring those protocols, we met several problems and had deeper understanding of DHCP, DNS, VPS and Web server. We are more familiar with Ubuntu System, which is fast, secure and stylishly simple. Ubuntu System has a lot difference between Windows System. The ultimately solution basically solve the problems we might meet in engineering practice.

Understanding the Protocol[edit | edit source]

DHCP[edit | edit source]

Dynamic Host Configuration Protocol – a network service that enables host computers to be automatically assigned settings from a server as opposed to manually configuring each network host. DHCP Servers are very often used in enterprise networks to reduce configuration. All IP addresses of all computers are stored in a database that resides on a DHCP server machine.

DNS[edit | edit source]

Domain Name Service – is a service that maps IP addresses and fully qualified domain names to one another. DNS alleviates the need to remember IP addresses and make people easy to remember website names. Ubuntu ships with BIND9 (Berkley Internet Naming Daemon), which is the most widely deployed DNS server.

WEB SERVER[edit | edit source]

Web Server is a web pages requested by clients. Clients typically request and view Web Pages using Web Browser applications, like Firefox.

FIREWALL[edit | edit source]

Firewall is setup on web server for secure matters. If the fire wall is enabled, no one would have the accessibility to servers except some clients and some kinds of services specified by firewall rules. Firewall can divide, filter and forward the data coming in or going out the network.

BACKUP[edit | edit source]

Backup is a very useful way to protect and recover lost data. It will copy all data of daily works in current server and send it to another server in remote. As server is a busy machine as clients increases ad it is possible for the server to crashed by heavy work. Back up is necessary to protect both server and data it generated.

VPN[edit | edit source]

VPN- virtual private network (VPN) extend a private network that can run over the public network.

NIS[edit | edit source]

NIS-network information service(NIS) produces a network lookup service including the service of databases and process.

NFS[edit | edit source]

Network File System allows hosts to access a directory located on one networked computer in the same network. The computer be accessed by other computer is called the server and the computers or devices connecting to that server are called clients. When a client get enough, it becomes part of their own directory structure.

NTP[edit | edit source]

NTP-network time protocol(NTP) is a kind of protocol which is used to synchronize the clocks of computers to some time reference.

MAIL SERVER[edit | edit source]

A mail server is a server that handles and delivers e-mail over a network, usually over the Internet. A mail server can receive e-mails from client computers and deliver them to other mail servers. A mail server can also deliver e-mails to client computers.

The Requirements[edit | edit source]

DNS[edit | edit source]

  1. Assign a set of IP addresses that have to be used for this project.
  2. Create any 5 DNS records.
  3. Use IPv4 and IPv6 addresses in your implementation of records.
  4. Create reverse domains in in-addr.arpa and ipv6.arpa for the addresses.
  5. Configure a Master DNS server as well as a Slave DNS server, the Slave DNS should automatically update with Master DNS server.
  6. Test plan and implementation with examples.

DHCP[edit | edit source]

  1. Assigned a set of IP addresses that have to be used for this project.
  2. Use IPv4 and IPv6 addresses in your implementation of DHCP.
  3. Dynamic allocation of network addresses.
  4. The Client-Server Protocol.

Web Server & Firewall[edit | edit source]

  1. Use only command line tools and packages.
  2. Provide all the commands that you have used and also give a brief description in one line.
  3. Provide the changes you have made to the files/folders for configuring the webserver as well as the firewall.
  4. Create a basic page to be server by this web server.
  5. Make this page accessible to the clients in your network using a web browser.
  6. Make your server the most secured one in all possible ways.

Back Up[edit | edit source]

  1. Automate the process of backing up the data.
  2. The backup file should be zipped and sent to a different server.
  3. Describe briefly about how you backup automatically and also how file transfer is made.
  4. Mention which protocol you are using to complete this task.
  5. Provide the commands and configurations for sending the zipped file to a different location.

Steps to perform the setup / installation[edit | edit source]

DHCP Server[edit | edit source]

IPv4

  • Install:
 sudo apt-get install isc-dhcp-server 
  • To Assign IP addresses dynamically, change the file:
 /etc/dhcp3/dhcpd.conf 
  • Then save and exit the file, restart the dhcp-server.
 sudo /etc/init.d/isc-dhcp-server restart
  • Setting several fixed ip address.
 Allocation ip address with specific MAC address

IPv6

  • Install:
 sudo apt-get install radvd

DNS Server[edit | edit source]

IPv4

  • Install DNS on local machine using Ubuntu & BIND9 package.
 sudo apt-get install bind9 
  • Edited Forward Zone File: To map domain names to IP address.
  • Used an existing zone file as a template to create the /etc/bind/db.www.wxl.com file.
  • Create 5 records for the base domain, wxl.com. Then restart BIND9.
  • Reverse Zone File:
 Map IP addresses to domain names.
  • Create the /etc/bind/db.192 file
  • After creating the reverse zone file then restart BIND9

IPv6

  • Install radvd.
 apt-get install radvd 
  • Edit the file:
 /etc/radvd.conf

Web Server[edit | edit source]

  • Install:
 sudo apt-get install apache2 
  • Setting sever name:
 Choosing an ip address from ip pool
Then restart
  • Then modify webpage.


Firewall[edit | edit source]

  • Install:
 sudo apt-get install ufw 
  • Configuration:
 sudo ufw default deny
sudo ufw enable
  • Checking firewall status.
 sudo ufw status
  • Shut down the firewall.
 sudu ufw disable

Back up[edit | edit source]

MYSQL

  • Install:
 sudo apt-get install mysql-server
  • Configuration:
 Edited the /etc/mysql/my.cnf file 
change bind-addresss
  • Copy the files in Web Server.
 mysqldump –uroot –p1234 –h localhost –all databases > home/lijunjie/all.sql 

Rsync with ssh

  • Install:
 sudo apt-get install openssh-server
  • Exchange keys to authorize the client to visit the server:
 sudo ssh-keygen
ssh-copy-id root@192.168.10.10

Cron

  • Install:
 sudo apt-get install gnome-schedule
  • Configuration:
 Edit the file crontab
crontab –e
12 00 * * * bash – x/home/lijunjie/backup.sh

Add-ons[edit | edit source]

VPN

  • Install:
 sudo apt-get install pptpd
  • Configuration:
 Edit the file /etc/pptpd.conf
localip 192.168.10.10 remoteip 192.168.10.50-70
  • Configuration:
 file /etc/sysctl.conf

NFS

  • Install:
 sudo apt-get install nfs-kernel-server
  1. NFS Server
 Configuration:
Edit file /etc/exports
  1. NFS client
 Install:
sudo apt-get install nfs-common
sudo mount web.pofei.com:/ubuntu /local/ubuntu

Testing[edit | edit source]

  • Test the network

To see if they can ping successfully.

  • Test DNS Server

Use Command nslookup Type in domain name to see if it could get the IP address it mapped Type in IPv4 address to see if it could get the domain name it mapped Type in IPv6 address to see if it could get the domain name it mapped

  • Test DHCP Server

Using ‘ifconfig’ to see if the client (or server) gets the IP addresses (including IPv4 and IPv6).

  • Test Web Server

Open the web browser, type in localhost to see if it can access the website.

  • Test MySQL

Type the command MySQL –uroot –ppassword to login the MySQL Database. Type the command show databases; to see if it can get the table of database.

Future Prospects[edit | edit source]

  • Implementing more security functions to protect the network.
  • Setting mail server in the network for better connection.
  • Better to start earlier and realize more add-ons in the future.

Citations[edit | edit source]

  1. https://help.ubuntu.com/lts/serverguide/network-file-system.html
  2. http://www.krizna.com/ubuntu/setup-mail-server-ubuntu-14-04/
  3. http://ju.outofmemory.cn/entry/39235
  4. https://www.youtube.com/watch?v=ML2xX64z6Q8
  5. https://help.ubuntu.com/10.04/serverguide/index.html
  6. https://help.ubuntu.com/10.04/serverguide/index.html