Data Networking/Fall 2015/ZZTL

Group Members

edit

Xiao TAN
Bohan ZHONG
Junjie LI
Xiyu ZHAO

Motivations

edit

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

DHCP

edit

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.

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

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

FIREWALL

edit

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

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- virtual private network (VPN) extend a private network that can run over the public network.

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

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-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

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
  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
  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
  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
  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

DHCP Server

edit

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

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
  • Install:
 sudo apt-get install apache2 
  • Setting sever name:
 Choosing an ip address from ip pool
Then restart
  • Then modify webpage.


Firewall

edit
  • 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

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

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
  • 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
  • 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
  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