Implementation of Firewall in Corporate Environment
Implementation of Firewall in Corporate Environment
CORPORATE ENVIRONMENT
Submitted as partial fulfillment of the requirements for the Project work for
the degree of Bachelor of Technology in Computer Science and
Engineering
Submitted By
AISWARYA PRADEEP
(2113M1621103)
OCT/NOV - 2018
SCHOOL OF ENGINEERING AND TECHNOLOGY
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
PRIST UNIVERSITY
THANJAVUR - 613 403.
BONAFIDE CERTIFICATE
i
ACKNOWLEDGEMENT
Finally, I would like to convey my sincere thanks to all the teaching and non-
teaching faculties of the Department of Computer Science & Engineering, PRIST
University, Thanjavur. Without their cooperation, this venture would not have been a
success.
ii
ABSTRACT
With the increased demand in Network Security there is a need for devices and software's
which can provide reliable security in the Network. This paper gives a detailed
explanation of implementing a Firewall in various environments and their role in network
security. Firewall is a network security system that grants or rejects network access to
traffic flow between an un-trusted zone and a trusted zone. The main idea of this paper is
to define the role of firewall in network security and Implementation of firewall in
hardware and software or combination of both.
iii
ABBREVIATIONS
AS Autonomous Systems
iv
LIST OF FIGURES
v
TABLE OF CONTENTS
CHAPTER TITLE PAGE NO.
NO.
ACKNOWLEDGEMENT ii
SYNOPSIS iii
LIST OF ABBREVIATIONS iv
LIST OF FIGURES v
CHAPTER 1 INTRODUCTION 1
1.1.Advantages 2
CHAPTER 2 EXISTING SYSTEM 3
2.1 Introduction 3
2.2 Literature Survey 3
2.2.1 Implementation of firewall in DMZ 3
Environment
2.2.2 Implementation of firewall in VPN 3
2.2.3 Implementation of firewall in Intranet 3
2.2.4 Implementation of Firewall in Extranet 4
2.2.5 The firewall represents an indispensable 4
technical component for network security concepts.
2.3 Technique And Disadvantages 6
2.4 Summary 7
CHAPTER 3 PROPOSED SYSTEM 8
3.1. Introduction 8
3.2. Advantages 9
3.3. Summary 10
CHAPTER 4 SYSTEM REQUIREMENTS 11
4.1 Introduction 11
4.2. Hardware Requirements 11
4.3. Software Requirements 11
4.4. Software Description 12
4.5 Summary 15
CHAPTER 5 SYSTEM DESIGN 16
5.1 Architecture 16
5.2 Data Flow Diagram 17
CHAPTER 6 MODULES DESCRIPTION 22
6.1. Algorithm 22
6.2. Modules 23
6.2.1 Packet Filtering 23
6.2.2 Client/Server Access Lists 24
6.2.3 User Authentication 25
6.2.4 Address Obfuscation 27
6.3 Summary 30
CHAPTER 7 IMPLEMENTATION AND RESULTS 31
CHAPTER 8 CONCLUSION AND FUTURE ENHANCEMENT 32
8.1 Conclusion 32
8.2 Future Enhancements 32
REFERENCES 34
APPENDICES
Appendix A
Sample Screen Shots 36
Appendix B
Sample Source Code 42
Appendix C
Base Paper 48
CHAPTER-1
INTRODUCTION
A Firewall is a networking system that helps us in preventing unauthorized access of
one’s computer over the internet (ie, It acts as a protection barrier between the system and
the network). Firewall can enact both software and hardware appliances. Functionality
and Flow control of a Firewall Access the internet such that the internal networking
system LAN is secured such that no hacker can access or they cannot harm the internet.
For this purpose we use software or hardware or a combination of both in between the
LAN and Internet. Based on the pre-defined set of rules, the function of the firewall is to
check the data-packets coming from the Internet or any external networking system and
send it to the LAN if there no vulnerabilities are found
1.1 ADVANTAGES
There are different types of environments where a firewall can be implemented
ranging from a simple packet filter to combination of several firewalls. The choice of
firewalls [3] is very attractive. They come in every size, shape and capacity that is
designed according to the customer satisfaction. The type of firewall used to install
depends up on the size, protection and management of the network. We discuss
Implementation of firewall DMZ environment, VPN, Intranet, Extranet.
CHAPTER 2
EXISTING SYSTEM
2.1 INTRODUCTION
Firewalls are systems which protect networks or network devices, such as industrial PCs,
control systems, cameras, etc., from unauthorized access by preventing network traffic to
or from these systems. The first broad distinction here is the difference between host
firewalls and network firewalls. The first is installed on a computer (host) or already
provided by the operating system, as a software feature. Examples of these firewalls are
the Microsoft Windows system firewall or the iptables firewall provided with most Linux
systems. Network firewalls are devices which have been developed especially for use as a
firewall and are placed in the network, rather than on a PC. These network, or hardware,
firewalls are important elements in industrial facilities, especially when they are
connected to additional networks or when wired transmissions are combined with less
secure network technologies (e.g. wireless networks). In these situations, a network
firewall serves to set up the network boundary as the first line of defense against attacks
and only allows desired traffic into and out of the network.
2.2 LITERATURE SURVEY
2.2.1 Implementation of firewall in DMZ Environment
In Computer networks, a DMZ is a demilitarized zone or a neutral zone that is in between
a company’s private network and the outside public network. In the below figure the
Main Firewall provide the access control and protection to the server from being hacked
from the public network. A DMZ is an optional and more secure approach to a firewall
and effectively acts as a proxy server as well.
2.2.2 Implementation of firewall in VPN
A Virtual Private Network (VPN) is a private network that uses public network to connect
remote sites or users together. The VPN is created by establishing a virtual point-to-point
through the use of dedicated connections, virtual tunneling protocols, or traffic
encryption. The VPN firewall ensures that the systems are encrypted and also ensures that
only authorized users can use the network and data cannot be intercepted.
2.2.3 Implementation of firewall in Intranet
An Intranet is a network that employs the same types of applications, services, and
protocols that are present in an internet, without external connectivity. The Firewall
protects the intranet by checking the traffic flow from the interconnected intranets.
2.2.4 Implementation of Firewall in Extranet.
Extranet is usually a business to business intranet. The Control access is provided to the
remote user based on the authentication and authorization as provided by a VPN.
2.2.5 The firewall represents an indispensable technical component for network
security concepts today.
The various types of firewalls range from simple packet filters all the way up to powerful
solutions with the direct support of specialized industrial protocols. Firewall designs,
which range from software packages for PCs to industrially hardened products in metal
housings for use at the field level, are every bit as diverse. The current threat of attacks
plays a large role in this because it is significant in determining the correct technology
and deployment location.
2.3 TECHNIQUE AND DISADVANTAGES
The fundamental technical function of any firewall is to filter packets. Here, the firewall
inspects packets, which it is supposed to forward, to determine whether they correspond
to a desired template for traffic patterns. These templates are modeled in the form of
rules. A firewall at the boundary of a network can thus, for example, include rules in the
form of "A communication link within the network can only take place with a specified
server" or "Only the PCs for remote maintenance can be reached outside the network, not
any other devices." Creating special rules, such as for industrial protocols is also
possible.
2.4 SUMMARY
Firewalls are important basic components in today’s security concepts. They are used in
various locations within the network. On the one hand, they can secure a company
network against the outside. On the other, they can separate various devices within a
network from each other or permit only specified communications between devices.
This concept of precise limitations on communication between network participants in
internal networks, as well as partitioning of various network areas from each other,
known as defense in depth, is usually combined with zones and conduits: layered
defenses with multiple security levels, one behind the other.
CHAPTER 3
PROPOSED SYSTEM
3.1 INTRODUCTION
Communication from wireless to wired networks should also be controlled by firewalls.
For example, the communication of a tablet, which is connected to a device via a WLAN,
can be limited so that it can only access data through the user interface, but not additional
subsystems or other devices connected to it. If a client is integrated into a WLAN, it is
possible, in principle, to communicate directly with all other devices in the same
(sub)network. Thus, an attacker can extend a successful attack on a client that is
connected to the WLAN to any other device on the Ethernet network. This problem can
be solved by restricting the forwarding of messages between WLAN clients with a
firewall at the WLAN access point. Here, too, there is a need for a transparent layer 2
firewall which can filter communication within a network (directly between the WLAN
devices in a network). In order to do this, the firewall must be implemented directly at the
access point. Industrially hardened devices are important here as well.
In addition, it can also be practical to restrict communication to the desired patterns and
communication relationships at all other points in the network. But, because firewalls can
also have negative effects on transmission latency (delay in transmission) and network
throughput, the use of a dedicated firewall is not always possible. In such cases, high-
quality network switches can also use less powerful stateless filtering rules. These rules
are usually not referred to as firewall rules, rather as access control lists (ACL). ACLs are
suited for any situation where rapid filtering must take place within a network.
3.2 ADVANTAGES
Firewalls play various roles in the partitioning of network portions. For one, a firewall
can protect a company against threats from the outside. In many cases, this overall
protection is the domain of IT firewall solutions, which are placed in a company’s data
center. On the other hand, they can also be implemented, for instance, in production in
order to effectively separate the production network from the rest of the company
network.
3.3 SUMMARY
Industrial firewalls with router functions are perfect for smaller external branches or sites.
This allows, for example, distribution stations to be connected with the rest of the
company infrastructure via a WWAN network. The firewall controls the network traffic
coming out of and going into the external site’s local network. Since such a firewall for
connection of an external site represents the border between the company’s own network
(the external site) and an external network (a provider network or the Internet), the
firewall must possess full capabilities for packet filtering and filtering traffic between
various networks. Such a firewall is called an IP firewall since it processes Internet
Protocol (IP) traffic. Because these firewalls are often installed very near the actual
facility, industrial hardening must also be taken into consideration. Extended temperature
ranges and/or approval for use in special areas (e.g. energy supply and transportation) are
crucial.
CHAPTER 4
SYSTEM SPECIFICATION
4.1 INTRODUCTION
The purpose of the document is to collect and analyze all assorted ideas that have come
up to define the system, its requirements with respect to consumers. Also, we shall predict
and sort out how we hope this product will be used in order to gain a better understanding
of the project, outline concepts that may be developed later, and document ideas that are
being considered, but may be discarded as the product develops. In short, the purpose of
this SRS document is to provide a detailed overview of our software product, its
parameters and goals. This document describes the project's target audience and its user
interface, hardware and software requirements. It defines how our client, team and
audience see the product and its functionality. Nonetheless, it helps any designer and
developer to assist in software delivery lifecycle (SDLC) processes.
4.2 HARDWARE REQUIREMNETS
FEASIBILITY STUDY:
The feasibility of the project is analyzed in this phase and business proposal is put
forth with a very general plan for the project and some cost estimates. During system
analysis the feasibility study of the proposed system is to be carried out. This is to ensure
that the proposed system is not a burden to the company. For feasibility analysis, some
understanding of the major requirements for the system is essential.
Economical feasibility
Technical feasibility
Social feasibility
ECONOMICAL FEASIBILITY:
This study is carried out to check the economic impact that the system will have
on the organization. The amount of fund that the company can pour into the research and
development of the system is limited. The expenditures must be justified. Thus the
developed system as well within the budget and this was achieved because most of the
technologies used are freely available. Only the customized products had to be purchased.
TECHNICAL FEASIBILITY:
This study is carried out to check the technical feasibility, that is, the technical
requirements of the system. Any system developed must not have a high demand on the
available technical resources. This will lead to high demands on the available technical
resources. This will lead to high demands being placed on the client. The developed
system must have a modest requirement, as only minimal or null changes are required for
implementing this system.
SOCIAL FEASIBILITY:
The aspect of study is to check the level of acceptance of the system by the user.
This includes the process of training the user to use the system efficiently. The user must
not feel threatened by the system, instead must accept it as a necessity. The level of
acceptance by the users solely depends on the methods that are employed to educate the
user about the system and to make him familiar with it. His level of confidence must be
raised so that he is also able to make some constructive criticism, which is welcomed, as
he is the final user of the system.
SYSTEM TESTING
TYPES OF TESTS:
Testing is the process of trying to discover every conceivable fault or weakness in
a work product. The different type of testing are given below:
UNIT TESTING:
Unit testing involves the design of test cases that validate that the internal program
logic is functioning properly, and that program inputs produce valid outputs. All decision
branches and internal code flow should be validated. It is the testing of individual
software units of the application .it is done after the completion of an individual unit
before integration.
INTEGRATION TESTING:
SYSTEM TEST:
System testing ensures that the entire integrated software system meets requirements.
It tests a configuration to ensure known and predictable results. An example of system
testing is the configuration oriented system integration test. System testing is based on
process descriptions and flows, emphasizing pre-driven process links and integration
points.
WHITE BOX TESTING:
White Box Testing is a testing in which in which the software tester has knowledge
of the inner workings, structure and language of the software, or at least its purpose. It is
purpose. It is used to test areas that cannot be reached from a black box level.
BLACK BOX TESTING:
Black Box Testing is testing the software without any knowledge of the inner workings,
structure or language of the module being tested. Black box tests, as most other kinds of
tests, must be written from a definitive source document, such as specification or
requirements document, such as specification or requirements document. It is a testing in
which the software under test is treated, as a black box .you cannot “see” into it. The test
provides inputs and responds to outputs without considering how the software works.
UNIT TESTING:
Unit testing is usually conducted as part of a combined code and unit test phase of
the software lifecycle, although it is not uncommon for coding and unit testing to be
conducted as two distinct phases.
Test strategy and approach
Field testing will be performed manually and functional tests will be written in
detail.
Test objectives
All field entries must work properly.
Pages must be activated from the identified link.
The entry screen, messages and responses must not be delayed.
Features to be tested
Verify that the entries are of the correct format
No duplicate entries should be allowed
All links should take the user to the correct page.
INTEGRATION TESTING:
Software integration testing is the incremental integration testing of two or more
integrated software components on a single platform to produce failures caused by
interface defects.
The task of the integration test is to check that components or software
applications, e.g. components in a software system or – one step up – software
applications at the company level – interact without error.
Test Results: All the test cases mentioned above passed successfully. No defects
encountered.
ACCEPTANCE TESTING:
User Acceptance Testing is a critical phase of any project and requires significant
participation by the end user. It also ensures that the system meets the functional
requirements.
Test Results: All the test cases mentioned above passed successfully. No defects
encountered
CHAPTER-5
MODULUS DESCRIPTION
6.1 ANOMALY DETECTION ALGORITHM
Anomaly detection (also outlier detection) is the identification of rare items, events or
observations which raise suspicions by differing significantly from the majority of the
data. Typically the anomalous items will translate to some kind of problem such as bank
fraud, a structural defect, medical problems or errors in a text. Anomalies are also
referred to as outliers, novelties, noise, deviations and exceptions.
In particular, in the context of abuse and network intrusion detection, the interesting
objects are often not rareobjects, but unexpected bursts in activity. This pattern does not
adhere to the common statistical definition of an outlier as a rare object, and many outlier
detection methods (in particular unsupervised methods) will fail on such data, unless it
has been aggregated appropriately. Instead, a cluster analysis algorithm may be able to
detect the micro clusters formed by these patterns.
Three broad categories of anomaly detection techniques exist. Unsupervised anomaly
detection techniques detect anomalies in an unlabeled test data set under the assumption
that the majority of the instances in the data set are normal by looking for instances that
seem to fit least to the remainder of the data set. Supervised anomaly detection techniques
require a data set that has been labeled as "normal" and "abnormal" and involves training
a classifier (the key difference to many other statistical classification problems is the
inherent unbalanced nature of outlier detection). Semi-supervised anomaly
detection techniques construct a model representing normal behavior from a
given normal training data set, and then test the likelihood of a test instance to be
generated by the learnt model.
6.2. MODULES
Packet Filtering
Packet filtering is easily implemented and provides excellent security, but decreases
network functionality and versatility. In essence the firewall scans each packet.
Depending on the configuration of the firewall, it may allow HTTP, DNS, POP3, and
SMTP packets to pass through, but not FTP or Telnet packets. You can see how this now
limits your LAN.
Client/Server Access Lists
Client Access Lists work well in conjunction with Packet Filtering. The firewall grants
different rights to users based on IP address. This can be used to block E-mail from
certain annoying spammers. It can also be used to allow FTP communication between
your LAN and another LAN that is known to be secure. Remember, although another
company may be "trusted," you must consider the overall security implementation on
their system as well. By granting access to your network, you are potentially allowing
everyone they allow on their network to use your network.
Server Access Lists work in a similar manner as Client Access Lists except they prevent
users on your LAN from accessing insecure servers. This may also be used to prevent
employees from visiting "inappropriate" web sites during work hours. Clearly, an
electrical engineer designing nuclear submarine controls has no need to visit the URL
"www.freelotto.com".
The problem with Client/Server Access Lists is that it is quite easy to "spoof" an IP
address. In other words, a crafty outside user can make it appear as though his IP address
is actually originating from that secure LAN mentioned before, possible giving him FTP
access to your LAN. Fortunately, most firewall software/hardware is capable of detecting
IP spoofing, especially if the IP address being spoofed is inside your LAN. In this case, it
can tell by detecting what port is accessed (internal or external).
User Authentication
Sometimes legitimate users need to log in from home and use FTP facilities. This can be
accomplished using User Authentication. When implemented properly, an outside user
can dial into the LAN (passing through the firewall), and submit both a user name and a
password. This can be easily defeated if a listener simply records the raw packets the
legitimate user sends for authentication. Even if the user name and password are sent with
weak encryption, a simple playback of this recording at the appropriate time will breach
these security measures. Strong encryption algorithms such as public key encryption
should be used so the data is not encrypted the same way every time. Once the connection
is established, the degree of encryption can be lowered or eliminated. It is important to
regulate this practice very closely. If users are allowed to create their own passwords and
do not have to change them frequently, illegitimate users may be able to find these
passwords quite easily (for instance, trying the names of the users children).
Address Obfuscation
Address Obfuscation is another feature provided by firewalls. When implemented
properly in conjunction with other firewall features, it can greatly increase LAN security.
When inside the LAN, users see each other actual IP address. However, the outside world
sees different IP addresses, sometimes dynamic in nature. This prevents illegitimate users
from identifying resources behind the firewall.
6.3 Summary
We can conclude from that HSRP does not offer load balance service, because even with
increasing and decreasing levels of complexity of the links, the generated traffic remained
the same. By observing the result, we can conclude that after configuring the GLBP the
specific link was able to handle the generated traffic. In a complex AS, more traffic will
be generated to accommodate its complexity. Unlike HSRP, GLBP is seen to redirect
traffic accordingly to cater to the dynamic complexity of the link to the AS.
CHAPTER- 7
IMPLEMENTATION RESULTS
Part 1: Verify Connectivity and Explore the ASA Note: This Packet Tracer activity starts
with 20% of the assessment items marked as complete. This is to ensure that you do not
inadvertently change some ASA default values. For example, the default name of the
inside interface is “inside” and should not be changed. Click Check Results to see which
assessment items are already scored as correct.
Step 1: Verify connectivity. The ASA is not currently configured. However, all routers,
PCs, and the DMZ server are configured. Verify that PC-C can ping any router interface.
PC-C is unable to ping the ASA, PC-B, or the DMZ server.
Step 2: Determine the ASA version, interfaces, and license. Use the show version
command to determine various aspects of this ASA device.
Step 3: Determine the file system and contents of flash memory.
a. Enter privileged EXEC mode. A password has not been set. Press Enter when
prompted for a password.
b. Use the show file system command to display the ASA file system and determine
which prefixes are supported.
c. Use the show flash: or show disk0: command to display the contents of flash memory.
Part 2: Configure ASA Settings and Interface Security Using the CLI Tip: Many ASA
CLI commands are similar to, if not the same, as those used with the Cisco IOS CLI. In
addition, the process of moving between configuration modes and sub modes is
essentially the same.
Step 1: Configure the hostname and domain name. a. Configure the ASA hostname as
CCNAS-ASA. b. Configure the domain name as ccnasecurity.com.
Step 2: Configure the enable mode password. Use the enable password command to
change the privileged EXEC mode password to ciscoenpa55.
Step 3: Set the date and time. Use the clock set command to manually set the date and
time (this step is not scored).
Step 4: Configure the inside and outside interfaces. You will only configure the VLAN 1
(inside) and VLAN 2 (outside) interfaces at this time. The VLAN 3 (dmz) interface will
be configured in
Part 5 of the activity.
a. Configure a logical VLAN 1 interface for the inside network (192.168.1.0/24) and set
the security level to the highest setting of 100. CCNAS-ASA(config)# interface vlan 1
CCNAS-ASA(config-if)# name if inside CCNAS-ASA(config-if)# ip address 192.168.1.1
255.255.255.0 CCNAS-ASA(config-if)# security-level 100
b. Create a logical VLAN 2 interface for the outside network (209.165.200.224/29), set
the security level to the lowest setting of 0, and enable the VLAN 2 interface. CCNAS-
ASA(config-if)# interface vlan 2 CCNAS-ASA(config-if)# nameif outside
CCNAS-ASA(config-if)# ip address 209.165.200.226 255.255.255.248
CCNAS-ASA(config-if)# security-level 0
c. Use the following verification commands to check your configurations:
1) Use the show interface ip brief command to display the status for all ASA interfaces.
Note: This
command is different from the IOS command show ip interface brief. If any of the
physical or logical
interfaces previously configured are not up/up, troubleshoot as necessary before
continuing.
Tip: Most ASA show commands, including ping, copy, and others, can be issued from
within any
configuration mode prompt without the do command.
2) Use the show ip address command to display the information for the Layer 3 VLAN
interfaces.
3) Use the show switch vlan command to display the inside and outside VLANs
configured on the ASA
and to display the assigned ports.
Step 5: Test connectivity to the ASA.
a. You should be able to ping from PC-B to the ASA inside interface address
(192.168.1.1). If the pings fail,
troubleshoot the configuration as necessary.
b. From PC-B, ping the VLAN 2 (outside) interface at IP address 209.165.200.226. You
should not be able
to ping this address.
Part 3: Configure Routing, Address Translation, and Inspection Policy
Using the CLI
Step 1: Configure a static default route for the ASA.
Configure a default static route on the ASA outside interface to enable the ASA to reach
external networks.
a. Create a “quad zero” default route using the route command, associate it with the ASA
outside interface,
and point to the R1 G0/0 IP address (209.165.200.225) as the gateway of last resort.
CCNAS-ASA(config)# route outside 0.0.0.0 0.0.0.0 209.165.200.225
b. Issue the show route command to verify the static default route is in the ASA routing
table.
c. Verify that the ASA can ping the R1 S0/0/0 IP address 10.1.1.1. If the ping is
unsuccessful, troubleshoot
as necessary.
Step 2: Configure address translation using PAT and network objects.
a. Create network object inside-net and assign attributes to it using the subnet and nat
commands.
CCNAS-ASA(config)# object network inside-net
CCNAS-ASA(config-network-object)# subnet 192.168.1.0 255.255.255.0
CCNAS-ASA(config-network-object)# nat (inside,outside) dynamic interface
CCNAS-ASA(config-network-object)# end
b. The ASA splits the configuration into the object portion that defines the network to be
translated and the
actual nat command parameters. These appear in two different places in the running
configuration.
Display the NAT object configuration using the show run command.
c. From PC-B attempt to ping the R1 G0/0 interface at IP address 209.165.200.225. The
pings should fail.
d. Issue the show nat command on the ASA to see the translated and untranslated hits.
Notice that, of the
pings from PC-B, four were translated and four were not. The outgoing pings (echos)
were translated and sent to the destination. The returning echo replies were blocked by
the firewall policy. You will configure
the default inspection policy to allow ICMP in Step 3 of this part of the activity.
Step 3: Modify the default MPF application inspection global service policy.
For application layer inspection and other advanced options, the Cisco MPF is available
on ASAs.
The Packet Tracer ASA device does not have an MPF policy map in place by default. As
a modification, we
can create the default policy map that will perform the inspection on inside-to-outside
traffic. When configured
correctly only traffic initiated from the inside is allowed back in to the outside interface.
You will need to add
ICMP to the inspection list.
a. Create the class-map, policy-map, and service-policy. Add the inspection of ICMP
traffic to the policy map
list using the following commands:
CCNAS-ASA(config)# class-map inspection_default
CCNAS-ASA(config-cmap)# match default-inspection-traffic
CCNAS-ASA(config-cmap)# exit
CCNAS-ASA(config)# policy-map global_policy
CCNAS-ASA(config-pmap)# class inspection_default
CCNAS-ASA(config-pmap-c)# inspect icmp
CCNAS-ASA(config-pmap-c)# exit
CCNAS-ASA(config)# service-policy global_policy global
b. From PC-B, attempt to ping the R1 G0/0 interface at IP address 209.165.200.225. The
pings should be
successful this time because ICMP traffic is now being inspected and legitimate return
traffic is being
allowed. If the pings fail, troubleshoot your configurations.
Part 4: Configure DHCP, AAA, and SSH
Step 1: Configure the ASA as a DHCP server.
a. Configure a DHCP address pool and enable it on the ASA inside interface.
CCNAS-ASA(config)# dhcpd address 192.168.1.5-192.168.1.36 inside
b. (Optional) Specify the IP address of the DNS server to be given to clients.
CCNAS-ASA(config)# dhcpd dns 209.165.201.2 interface inside
c. Enable the DHCP daemon within the ASA to listen for DHCP client requests on the
enabled interface
(inside).
CCNAS-ASA(config)# dhcpd enable inside
d. Change PC-B from a static IP address to a DHCP client, and verify that it receives IP
addressing
information. Troubleshoot, as necessary to resolve any problems.
Step 2: Configure AAA to use the local database for authentication.
a. Define a local user named admin by entering the username command. Specify a
password of
adminpa55.
CCNAS-ASA(config)# username admin password adminpa55
b. Configure AAA to use the local ASA database for SSH user authentication.
CCNAS-ASA(config)# aaa authentication ssh console
Step 3: Configure remote access to the ASA.
The ASA can be configured to accept connections from a single host or a range of hosts
on the inside or
outside network. In this step, hosts from the outside network can only use SSH to
communicate with the ASA.
SSH sessions can be used to access the ASA from the inside network.
a. Generate an RSA key pair, which is required to support SSH connections. Because the
ASA device has
RSA keys already in place, enter no when prompted to replace them.
CCNAS-ASA(config)# crypto key generate rsa modulus 1024
WARNING: You have a RSA keypair already defined named <Default-RSA-Key>.
Do you really want to replace them? [yes/no]: no
ERROR: Failed to create new RSA keys named <Default-RSA-Key>
b. Configure the ASA to allow SSH connections from any host on the inside network
(192.168.1.0/24) and
from the remote management host at the branch office (172.16.3.3) on the outside
network. Set the SSH
timeout to 10 minutes (the default is 5 minutes).
CCNAS-ASA(config)# ssh 192.168.1.0 255.255.255.0 inside
CCNAS-ASA(config)# ssh 172.16.3.3 255.255.255.255 outside
CCNAS-ASA(config)# ssh timeout 10
c. Establish an SSH session from PC-C to the ASA (209.165.200.226). Troubleshoot if it
is not successful.
PC> ssh -l admin 209.165.200.226
d. Establish an SSH session from PC-B to the ASA (192.168.1.1). Troubleshoot if it is not
successful.
PC> ssh -l admin 192.168.1.1
Part 5: Configure a DMZ, Static NAT, and ACLs
R1 G0/0 and the ASA outside interface already use 209.165.200.225 and .226,
respectively. You will use
public address 209.165.200.227 and static NAT to provide address translation access to
the server.
Step 1: Configure the DMZ interface VLAN 3 on the ASA.
a. Configure DMZ VLAN 3, which is where the public access web server will reside.
Assign it IP address
192.168.2.1/24, name it dmz, and assign it a security level of 70. Because the server does
not need to
initiate communication with the inside users, disable forwarding to interface VLAN 1.
CCNAS-ASA(config)# interface vlan 3
CCNAS-ASA(config-if)# ip address 192.168.2.1 255.255.255.0
CCNAS-ASA(config-if)# no forward interface vlan 1
CCNAS-ASA(config-if)# nameif dmz
INFO: Security level for "dmz" set to 0 by default.
CCNAS-ASA(config-if)# security-level 70
b. Assign ASA physical interface E0/2 to DMZ VLAN 3 and enable the interface.
CCNAS-ASA(config-if)# interface Ethernet0/2
CCNAS-ASA(config-if)# switchport access vlan 3
c. Use the following verification commands to check your configurations:
1) Use the show interface ip brief command to display the status for all ASA interfaces.
2) Use the show ip address command to display the information for the Layer 3 VLAN
interfaces. 3) Use the show switch vlan command to display the inside and outside
VLANs configured on the ASA
and to display the assigned ports.
Step 2: Configure static NAT to the DMZ server using a network object.
Configure a network object named dmz-server and assign it the static IP address of the
DMZ server
(192.168.2.3). While in object definition mode, use the nat command to specify that this
object is used to
translate a DMZ address to an outside address using static NAT, and specify a public
translated address of
209.165.200.227.
CCNAS-ASA(config)# object network dmz-server
CCNAS-ASA(config-network-object)# host 192.168.2.3
CCNAS-ASA(config-network-object)# nat (dmz,outside) static 209.165.200.227
CCNAS-ASA(config-network-object)# exit
Step 3: Configure an ACL to allow access to the DMZ server from the Internet.
Configure a named access list OUTSIDE-DMZ that permits the TCP protocol on port 80
from any external
host to the internal IP address of the DMZ server. Apply the access list to the ASA
outside interface in the “IN”
direction.
CCNAS-ASA(config)# access-list OUTSIDE-DMZ permit icmp any host 192.168.2.3
CCNAS-ASA(config)# access-list OUTSIDE-DMZ permit tcp any host 192.168.2.3 eq
80
CCNAS-ASA(config)# access-group OUTSIDE-DMZ in interface outside
Note: Unlike IOS ACLs, the ASA ACL permit statement must permit access to the
internal private DMZ
address. External hosts access the server using its public static NAT address, the ASA
translates it to the
internal host IP address, and then applies the ACL.
Step 4: Test access to the DMZ server.
At the time this Packet Tracer activity was created, the ability to successfully test outside
access to the DMZ
web server was not in place; therefore, successful testing is not required.
Step 5: Check results.
Your completion percentage should be 100%. Click Check Results to see feedback and
verification of which
required components have been completed.
CHAPTER-8
CONCLUSION AND FUTURE ENHANCEMENT
8.1 CONCLUSION:
It is clear that some form of security for private networks connected to the internet is
essential. A firewall is an important and necessary part of that security, but cannot be
expected to perform all the required security functions.
8.2 FUTURE ENHANCEMENT
Firewalls will continue to advance as the attacks on IT industry and infrastructure become
more and more sophisticated. Firewalls that scan for viruses as they enter the network and
several firms are currently exploring this idea, but it is not yet in wide use.
REFFERENCES:
[1] Firewalls by Dr.Talal Alkharobi.
[2] Basic Firewall Functionality – Joel Snyder
[3] Implementing a Distributed Firewall-Sotiris
Loannidis, Angelos D.Keromytis, Steve M. Bellovin,
Jonathan M. Smith.
[4] DMZ (demilitarized zone)-Margaret Rouse
[5][6][7][8] Firewalls By Hareesh Pattipati.
[9] Network Security First-Step: Firewalls -
Donald Stoddard, Thomas M. Thomas.
APPENDICES
APPENDIX A
Sample Screen Shots
APPENDIX B
Sample Source Code
Router1>
Preliminary Configuration at Router1
Router1>enable
Router1(Config)#ip routing
Router1(Config)#router ospf 10
Router1(Config-router)#router-id 10.10.10.101
Router1(Config-router)#network 10.10.10.0 0.0.0.3 area 0
Router1(Config-router)#network 10.10.10.101 0.0.0.0 area 0
Router1(Config-router)#end
Router1#wr
MPLS configuration on Router 1
Router1# config t
Router1(config)# ip cef
Router1(config)# mpls ip
Router1(config)# mpls label protocol ldp
Router1(config)# mpls label range 100 199
Router1(config)# mpls ldp router-id loopback 0
Router 2
Router2>
Router2>enable
Router2(Config)#ip routing
Router2(Config)#router ospf 10
Router2(Config-router)#router-id 10.10.10.100
Router2(Config-router)#network 10.10.10.100 0.0.0.0 area 0
Router2(Config-router)#network 10.10.10.4 0.0.0.3 area 0
Router2(Config-router)#network 10.10.10.0 0.0.0.3 area 0
Router2(Config-router)#end
Router2#wr
Router2# config t
Router2(config)# ip cef
Router2(config)# mpls ip
Router2(config)# mpls label protocol ldp
Router2(config)# mpls label range 200 199
Router2(config)# mpls ldp router-id loopback 0
Router 3
Router3>
Router3>enable
Router3(Config)#ip routing
Router3(Config)#router ospf 10
Router3(Config-router)#router-id 10.10.10.103
Router3(Config-router)#network 10.10.10.4 0.0.0.3 area 0
Router3(Config-router)#network 10.10.10.103 0.0.0.0 area 0
Router3(Config-router)#end
Router3#wr
Router3# config t
Router3(config)# ip cef
Router3(config)# mpls ip
Router3(config)# mpls label protocol ldp
Router3(config)# mpls label range 300 399
Router3(config)# mpls ldp router-id loopback 0
Checking LDP
Run these show commands in privileged mode in all ISP routers to check LDP and
observe the outputs
Router # sh ip route
Router# sh mpls interfaces
Router# sh mpls ldp neighbor
Router#sh mpls ldp bindings
Router#sh mpls forwarding-table
Router#sh mpls ip binding
-------------------------------------------------------------------------------------
Customer Configuration
Router 4
Router4>
Router4>enable
Router 5
Router5>
Router5>enable
Router 6
Router6>
Router6>enable
Router7>enable
ROUTER1 #config t
ROUTER1 (config)#ip vrf CUST_A
ROUTER1 (config-vrf)#rd 1:100
ROUTER1 (config-vrf)#route-target both 1:100
ROUTER1 (config-vrf)#exit
ROUTER1 #config t
ROUTER1 (config)#ip vrf CUST_B
ROUTER1 (config-vrf)#rd 1:200
ROUTER1 (config-vrf)#route-target both 1:200
ROUTER1 (config-vrf)#exit
(IP address 172.16.1.1 on the interface will be removed as we configure the VRF routing
on an interface. Configure the IP once again)
(IP address 192.168.1.1 on the interface will be removed as we configure the VRF routing
on an interface. Configure the IP once again)
ROUTER1 # config t
ROUTER1 (config)# router bgp 1
ROUTER1 (config-router)#neighbor 10.10.10.102 remote-as 1
ROUTER1 (config-router)#neighbor 10.10.10.102 update-source loopback0
ROUTER3 #config t
ROUTER3 (config)#ip vrf CUST_A
ROUTER3 (config-vrf)#rd 1:100
ROUTER3 (config-vrf)#route-target both 1:100
ROUTER3 (config-vrf)#exit
ROUTER3 #config t
ROUTER3 (config)#ip vrf CUST_B
ROUTER3 (config-vrf)#rd 1:200
ROUTER3 (config-vrf)#route-target both 1:200
ROUTER3 (config-vrf)#exit
(IP address 192.168.2.1 on the interface will be removed as we configure the VRF routing
on an interface. Configure the IP once again)
Configuring MP-iBGP with other PE Router ( ROUTER 1) & eBGP with customer
router
ROUTER3 # config t
ROUTER3 (config)# router bgp 1
ROUTER3 (config-router)#neighbor 10.10.10.101 remote-as 1
ROUTER3 (config-router)#neighbor 10.10.10.101 update-source loopback0
To check Result
Check the end to end connectivity from the respective branches of the customer site by
connecting PCs to the customer routers and pinging PC IP Addresses end to end.
APPENDIX C
Base Paper