You are on page 1of 52

AGNI COLLEGE OF TECHNOLOGY

(Approved by AICTE & Affiliated to AnnaUniversity)


Old Mahabalipuram Road, Thalambur, Chennai –600 130

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

CCS354-NETWORK SECURITY
YEAR: 2023 – 2024 [ODD SEM]

NAME OF THE STUDENT :

REGISTER NUMBER :

COURSE : B.E - CSE

YEAR : III

SEMESTER : V
AGNI COLLEGE OF TECHNOLOGY
(Approved by AICTE & Affiliated to AnnaUniversity)
Old Mahabalipuram Road, Thalambur, Chennai –600 130

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

REGISTER NUMBER:

Certified that this is the Bonafide Record of work done by Mr. / Ms.

Of III Year B.E (COMPUTER SCIENCE AND ENGINEERING) in CCS354-NETWORK

SECURITY LABORATORY during the year 2023 – 2024 [ ODD Semester].

Staff in-charge Head of the Department

Submitted for the University Practical Examination held on……………………….

Internal Examiner External Exam


LIST OFLAB EXPERIMENTS
SL.NO DATE EXPERIMENTS MARKS SIGNATURE
1. Implement the Symmetric key
Algorithms
2. Implement the Asymmetric key and
key exchange algorithms
3. Implement the digital signature
schemes
4. Installation of wire shark, TCPDUMP
and observe data transferred in
clientserver communication using
UDP/TCP and identify the UDP/TCP
datagram
5. Check message integrity and
confidentiality using SSL
6. Experiment Eavesdropping,
Dictionary attacks, MITM attacks

7. Experiment with Sniff Traffic using


ARP Poisoning

8. Demonstrate intrusion detection system


using any tool(ids)
9. Explore network monitoring tools
Study to configure Firewall , VPN
10.
ExNo:1 Implement the Symmetric key algorithms

Aim:
To write a Python program to implement the Symmetric key algorithms,

Algorithms:

1. Enter the plain text and key for encryption.


2. Itundergoes10 rounds.
3. Each rounds consists of four steps: Substitute Bytes, ShiftRows, MixColumns, Add
Round Key.
4. Eachs teps under goes two types of transformations: one is forward and the other is
inverse..
5. Encryption starts with a Add Round Key and Ends with Add Round Key to produce
cipher text in encryption.
3. 10thround consist of only three steps: Substitute Bytes,ShiftRows,MixColumns.
4. In decryption both the cipher text and key undergoes 10rounds to produce a plain text..
5. It also consists of four steps but inreverse order.
6. Each steps under goes two types of transformations: one is forward and the other is
inverse..
7. Decryption starts with a AddRoundKey and Ends with AddRoundKey to produce Plain
Text .

Program:

from Crypto.Cipher import AES from


Crypto.Util.Padding import pad, unpad from
Crypto.Random import get_random_bytes

def generate_key():
return get_random_bytes(16) # AES-128 requires a 16-byte key

def encrypt(plain_text, key):


cipher = AES.new(key, AES.MODE_CBC)
padded_text = pad(plain_text.encode('utf-8'), AES.block_size)
encrypted_text = cipher.encrypt(padded_text) return cipher.iv
+ encrypted_text

def decrypt(cipher_text, key):


iv = cipher_text[:AES.block_size]
cipher = AES.new(key, AES.MODE_CBC, iv)
decrypted_text = unpad(cipher.decrypt(cipher_text[AES.block_size:]), AES.block_size)
return decrypted_text.decode('utf-8')

# Example usage:
secret_key = generate_key()
message = "Hello, symmetric encryption!"
encrypted_message = encrypt(message, secret_key)
print("Encrypted:", encrypted_message)

decrypted_message = decrypt(encrypted_message, secret_key)


print("Decrypted:", decrypted_message)

Output:

Encrypted:
b'\x8d\xf3S\x85\xc0\xc4#\xd2\xa6O\xbc\x08D\xc6m\xed\xabQ&\x03\xf5C5\xf4\xe8\x95\xd9r\
xbd\xf5K'
Decrypted:
Hello, symmetric encryption!

Result:

The python program for the symmetric key algorithm was implemented and executed successfully.

ExNo:2 Implement the Asymmetric key algorithms and key exchange algorithms
Aim:
To write a Python program to implement the Asymmetric key algorithms and key exchange algorithms.

Algorithms:
Key generation:
1. Select random prime numbers p and q, and check that p! =q
2. Compute modulus n=pq
3. Compute phi, ¢=(p-1)(q-1)
4. Select public exponente,1< e<¢. Such that gcd(e,¢)= 1
5. Compute private exponent d=e-1mod¢
6. Publickey is{n,e},private key is d
Encryption&Decryption
1.Encryption:c=memodn,
2.Decryption:m=cdmodn
3.Displaytheciphertextandplaintext.
Program:

from Crypto.PublicKey import RSA


from Crypto.Cipher import PKCS1_OAEP

# Generate key pair key


= RSA.generate(2048)
private_key = key.export_key()
public_key = key.publickey().export_key()

# Encryption def
encrypt_asymmetric(plain_text, public_key):
key = RSA.import_key(public_key) cipher =
PKCS1_OAEP.new(key)
encrypted_text = cipher.encrypt(plain_text.encode('utf-8'))
return encrypted_text

# Decryption def
decrypt_asymmetric(cipher_text, private_key):
key = RSA.import_key(private_key) cipher =
PKCS1_OAEP.new(key)
decrypted_text = cipher.decrypt(cipher_text).decode('utf-
8') return decrypted_text # Example usage:
message = "Hello, asymmetric encryption!"
encrypted_message = encrypt_asymmetric(message, public_key)
print("Encrypted:", encrypted_message)
decrypted_message = decrypt_asymmetric(encrypted_message, private_key)
print("Decrypted:", decrypted_message)

Output:
Encrypted: b'\xb8\x05CJ\xf1\x12M\xb4\xc5\xf5\x0cV\xbf\xa5-
\xf1h!\xec\xb1\xb1S\xd3;\xd4Z\xe2\xe4y\xfe\xbe&Q\x1e\xf5\xa8\xd7Rq[\xf9\xf3\xa3\x9dV\xf3\xaa\xd6\x8a\x1c
\xb1r\x1cN\xbc\x8e\x1b\x8f\x8d\x97\xd7\xc8\xb6\xed\xa8\xaa\xd0\xa2\x05\x16S\xfd\xe3~1\xc7D\xc6/\xf1\xd9\xdb\xfc

Result:

The python program for the Asymmetric key algorithm and key exchange algorithm
was implemented and executed successfully.

ExNo:3 Implement the digital signature schemes


Aim:
To write a java program to implement the Digital Signature Schemes.
Algorithm:

1. Input the plaintext


2. Calculate the hash value.
3. Create the signature with components private key and global public key.
4. Send the message along with signature.
5. Verify the signature by calculating hash value and public key and global public key.
6. If the hash value matches signature is verified.

Program:

import
java.security.KeyPairGenerator;
import java.security.KeyPair; import
java.security.PublicKey; import
java.security.PrivateKey; import
java.security.Signature; import
java.io.*; //importjava.util;
Public class Signature
Test{ privatestaticbyte[]sign(Stringdatafile,PrivateKeyprvKey,StringsigAlg)throwsException{ Signature sig =
Signature.getInstance(sigAlg);
sig.initSign(prvKey);
FileInputStreamfis=newFileInputStream(datafile);
byte[] dataBytes = new byte[1024]; int nread =
fis.read(dataBytes); while (nread > 0)
{ sig.update(dataBytes, 0, nread); nread =
fis.read(dataBytes);
}; returnsig.sign();
}

Private static Boolean verify(Stringdatafile,PublicKeypubKey,StringsigAlg,byte[]sigbytes) throws Exception {


Signature sig=Signature.getInstance(sigAlg); sig.initVerify(pubKey);
FileInputStreamfis=newFileInputStream(datafile);
byte[] dataBytes = new byte[1024]; int nread =
fis.read(dataBytes); while (nread > 0)
{ sig.update(dataBytes, 0, nread); nread =
fis.read(dataBytes);
}; returnsig.verify(sigbytes);
}

publicstaticvoidmain(String[]unused)throwsException{
//Generateakey-pair
KeyPairGeneratorkpg=KeyPairGenerator.getInstance("RSA");
kpg.initialize(512); // 512 is the keysize.
KeyPair kp = kpg.generateKeyPair();
PublicKey pubk = kp.getPublic();
PrivateKey prvk = kp.getPrivate(); Stringdatafile="SignatureTest.java";
byte[]sigbytes=sign(datafile,prvk,"MD5withRSA");
//System.out.println("Signature(inhex)::"+Util.byteArray2Hex(sigbytes)); boolean
result = verify(datafile, pubk, "MD5withRSA", sigbytes); System.out.println("Signature
Verification Result = " + result);
//writegeneratedkeypairtofile String filename
= "keypair";
FileOutputStreamfos=null;
ObjectOutputStreamout= null;
try{
fos=newFileOutputStream(filename); out
= new ObjectOutputStream(fos);
out.writeObject(kp); out.close();
} catch(IOExceptionex){
ex.printStackTrace();
}
//nowtrytorecoveritfromthefile FileInputStream
fis = null;
ObjectInputStreamin=null
; KeyPair newkp = null;
try
{ fis=newFileInputStream(filename); in
= new ObjectInputStream(fis); newkp
=
(KeyPair)in.readObject(); in.close();
} catch(Exception ex)
{
ex.printStackTrace();
}

PrivateKeynewprvk=newkp.getPrivate();

System.out.println(prvk.toString());
System.out.println(newprvk.toString());
}}

Output:
Signature Verification Result = true
PrivateKeyInfo [ algorithm: RSA
PrivateKeyFormat: PKCS#8
...
]
PrivateKeyInfo [ algorithm:
RSA PrivateKeyFormat:
PKCS#8
...
]

Result:
Thus the DSA algorithm was executed successfully.
EX:NO: 4 Installation of wire shark, TCPDUMP and observe data
transferred in client-server communication using
UDP/TCP and identify the UDP/TCP datagram

Aim:
To observe the data transferred in client server communication using TCP/UDP and UDP
/ TCP data gram identification.

Steps:
• After downloading and installing wire shark, you can launch it and click the name of
an interface under Interface List to start capturing packets on that interface.
• For example, if you want to capture traffic on the wireless network , click your
wireless interface. You can configure advanced features by clicking Capture
Options.

• As soon as you click the interface‘s name , you‘ll see the packets start to appear in
real time. Wireshark captures each packet sent to or from your system.
• If you‘re capturing on a wireless interface and have promiscuous mode enabled in
your capture options, you‘ll also see other the other packets on the network.
• Click the stop capture button near the top left corner of the window when you want to
stop capturing traffic.
• Wire shark uses colors to help you identify the types of traffic a tag lance.
• By default, green is TCP traffic, dark blue is DNS traffic, light blue is UDP traffic,
and black identifies TCP packets with problems —for example, they could have been
delivered out-of-order.
OBSERVATIONOFCLIENTSERVERCOMMUNICATIONUSINGTCP/UDP:
By typing the ip address of client in filter box at top of the window in server’s
system and ip address of server in client system we can monitor the client server
communication
UDP/ TCPDATAGRAMIDENTIFICATION:

• If you‘re trying to inspect something specific, such as the traffic a program sends
when phoning home, it helps to closed own all other applications using the network
so you can narrow down the traffic.
• Still, you‘ll likely have a large amount of packets to sift through. That‘s where
Wireshark‘s filters come in.
• The most basic way to apply a filter is by typing it into the filter box at the top of the
window and clicking Apply(or pressing Enter). For example, type ―TCP‖ and you‘ll
see only TCP packets. , type ―DNS‖ and you‘ll see only DNS packets.
• When you start typing, Wire shark will help you auto complete your filter.
You‘ll see the full conversation between the client and the server.

Close the window and you‘ll find a filter has been applied automatically—Wire shark is
showing you the packets that make up the conversation.
Inspecting Packets Click a packet to select it and you can dig down to view its details

You can also create filters from here — just right-click one of the details and use the Apply
as Filter submenu to create a filter based on it.
Result:
Thus we observed the data transferred in client server communication using TCP/
UDP and UDP / TCP data gram was identified.
Ex:No:5 Check message integrity and confidentiality using SSL

Aim:
To write a program for check message integrity and confidentiality using SSL.

Alogrithm:
### Ensuring Message Integrity:

1. *Hash Functions:*
- SSL/TLS uses cryptographic hash functions (e.g., SHA-256) to generate a message digest (hash) of the
transmitted data.
- The hash is sent along with the data.
- The recipient computes the hash of the received data and compares it with the received hash to ensure
integrity.

2. *HMAC (Hash-Based Message Authentication Code):*


- HMAC is often used in conjunction with a shared secret key.
- A combination of the data and a secret key is hashed, providing a unique tag.
- The tag is sent with the data.
- The recipient uses the same key to generate a tag and compares it with the received tag.

### Ensuring Message Confidentiality:


1. *Symmetric Encryption:*
- SSL/TLS uses symmetric-key encryption to protect data confidentiality.
- A shared key is established between the client and server during the SSL/TLS handshake. - The shared
key is then used for encrypting and decrypting the data.

2. *Public Key Cryptography:*


- SSL/TLS also employs public-key cryptography for key exchange and authentication during the handshake.
- The server's public key is used to encrypt a pre-master secret, which is sent to the server.
- Only the server, possessing the corresponding private key, can decrypt the pre-master secret.

### Overview of SSL/TLS Protocol (Simplified):

1. *Handshake:*
- ClientHello: The client initiates communication and provides supported cryptographic algorithms.
- ServerHello: The server selects a cipher suite and shares its digital certificate.
- Key Exchange: ServerKeyExchange (for DHE or ECDHE) or ServerKeyExchange (for RSA) is performed. -
Finished: Both parties confirm the handshake is complete.

2. *Key Derivation:*
- A pre-master secret is exchanged and used to derive encryption keys.

3. *Data Transfer:*
- Using the derived keys, data is encrypted and decrypted using symmetric encryption.
4. *Message Authentication Code (MAC):*
- HMAC is used for message integrity verification.

Program:
import requests

# Replace 'your_url' with the actual URL you want to request


url = 'https://your_url'
# Make a GET request using HTTPS
response = requests.get(url)

# Check if the request was successful


if response.status_code == 200:
print("Request successful!")

# Access the response content (decrypted)


print("Response Content:", response.text)

else:
print("Request failed with status code:", response.status_code)

Output:

Request successful!
Response Content: ... (the content of the response)

Result:
The python program for check message integrity and confidentiality using SSL was executed
Successfully.
Ex:No:6(i) Experiment Eavesdropping

Aim:
To write a python program for simulating dictionary attack on password.
Algorithm:
• Python program that simulates a dictionary attack on a password by trying
out a list of commonly used passwords and their variations.
• We first define a list of commonly used passwords and their variations.
• We then define the hash of the password we want to attack (in this
example, "mypass12#@"is hashed using SHA-256).
• We then use a nested loop to try out all possible combinations of common
passwords and their variations.
For each combination, we hash the password using SHA-256 and check if it matches the hashed
password we want to attack.
• If a match is found, we print the password and exit the loop. If no match is
found, we print a message indicating that the password was not available.

Program:
def
eavesdrop_conversation(conversation): for message in
conversation:
print(message)

conversation = ["Hey, how's it going?", "Not bad, you?", "I'm good, thanks!"]
eavesdrop_conversation(conversation)

Output:

Hey, how's it going?


Not bad, you?
I'm good, thanks!

Result:

Thus python program for simulating dictionary attack on password was executed
and output was verified successfully.
Ex:No:6(ii) Experiment Dictionary Attack

Aim:
To write a python program for simulating dictionary attack on password.
Algorithm:
• Python program that simulates a dictionary attack on a password by trying
out a list of commonly used passwords and their variations.
• We first define a list of commonly used passwords and their variations.
• We then define the hash of the password we want to attack (in this
example, "mypass12#@"is hashed using SHA-256).
• We then use a nested loop to try out all possible combinations of common
passwords and their variations.
For each combination, we hash the password using SHA-256 and check if it matches the hashed
password we want to attack.
• If a match is found, we print the password and exit the loop. If no match is
found, we print a message indicating that the password was not available.

Program:

import hash lib


#List of commonly used passwords and variations.

common_passwords=[“password”,”password123”,”letmein”,”qwerty”,:123456”,”abc123”,”admin”,”
welcome”,”monkey”,”sunshine”]

password_variations=[“”,”123”,”1234”,”12345”,”123456”,”!”,”@”,”#”,”$”,”%”,”^”,”&”,”*”,”(“,”)”,”
-“,”_”,”+”,”=”,”/”,”\\”,”|”,”[“,”]”,”{“,”}”,”>”,”<”,]
#Hashofthepasswordtobeattacked hashed_password=
hashlib. sha256(b"mypass12#@").hexdigest()
#Try out all possible combinations of common passwords and their variations for password in
common_passwords:

for password in common_passwords:


for variation in password_variations:
possible_password = password + variation :
hashed_possible_password=hashlib.sha256(possible_password.encode()).hexdigest()
hashed_possible_password==hashed_password:
printf(“Password found:{possible_password}”)
break else:
continue
break else:
print(“Password not found”)

Output:
Password not found

Result:
Thus python program for simulating dictionary attack on password was executed
and output was verified successfully.
Ex:No:6(iii) Experiment MITM attacks

Aim:
To write a python program to implement Man In The Middle Attack

Algorithm:

Step 1: Selected public Key: P is a prime


number, called the “modulus” an dg is called the base. Step2:
Selecting private Keys.
Let Alice pick a private random number a and
Let Bob pick a private random number b, Malory picks 2 random numbers
and d.
Step3: Intercepting public Keys,
Malory intercepts Alice’s public key(g a(modp)), block it from reaching Bob,
and instead sends Bob her own public key (g c(modp)) and Malory intercepts Bob’s public
key (gb(mod p)), block it from reaching Alice, and instead sends Alice her own public key
(gd (modp))

Step4: Computing secret key


Alice will compute a keyS1=gda(modp), and Bob will compute a different
key,S2=gcb(modp)

Step5:
If Alice uses S1 as a key to encrypt a later message to Bob, Malory can decrypt it,
re-encrypt it using S2, and send it to Bob. Bob and Alice won’t notice any problem andmay
assume their communication is encrypted, but in reality, Malory can decrypt, read, modify,
and then re- encrypt all their conversations.

Program:
importr
andom

# public keys are


taken # p is a prime
number
#gisaprimitiverootof
p p = int(input('Enter a prime
number : ')) g = int(input('Enter a
number :
'))

classA:
definit(self):
# Generating a random private number selected by
alice self.n = random.randint(1, p)
defpublish(self): #
generating public
values return
(g**self.n)%p

def compute_secret(self,
gb): # computing
secret key return
(gb**self.n)%p

classB:
definit(self):
# Generating a random private number selected for
alice self.a = random.randint(1, p) #
Generating a random private number selected
for bob self.b = random.randint(1, p)
self.arr=[self.a,self.b]

defpublish(self,i): #
generating public
values return
(g**self.arr[i])%p

def compute_secret(self, ga,


i): # computing secret key
return (ga**self.arr[i])%p

alice=A(
) bob =
A()

eve=B()

# Printing out the private selected number by Alice and Bob


print(f'Alice selected (a) : {alice.n}')
print(f'Bobselected(b):{bob.n}') print(f'Eve selected
private number for Alice (c) : {eve.a}') print(f'Eve
selected private number for Bob
(d) : {eve.b}')

# Generating public
values ga =
alice.publish() gb =
bob.publish() gea =
eve.publish(0)
geb=eve.publish(1
)
print(f'Alice published (ga):
{ga}') print(f'Bob published
(gb): {gb}') print(f'Eve published value
for Alice (gc): {gea}') print(f'Eve
published value for Bob
(gd): {geb}')
#Computingthesecretkey
sa =
alice.compute_secret(gea) sea
= eve.compute_secret(ga,0)
sb =
bob.compute_secret(geb) seb
= eve.compute_secret(gb,1)
print(f'Alicecomputed(S1):
{sa
}')
print(f'Eve computed key for Alice (S1) : {sea}')
print(f'Bob computed (S2) : {sb}')
print(f'EvecomputedkeyforBob(S2):{seb}')

Output:

Enter a prime number: 17


Enter a number: 3
Alice selected (a) : 8
Bob selected (b): 10
Eve selected private number for Alice (c) : 6
Eve selected private number for Bob (d) : 12
Alice published (ga): 16
Bob published (gb): 12
Eve published value for Alice (gc): 13
Eve published value for Bob (gd): 7
Alice computed (S1): 14
Eve computed key for Alice (S1): 14
Bob computed (S2): 11
Eve computed key for Bob (S2): 11

Result:
Thus python program for simulating MITM attack on password was executed and
output was verified successfully.

Ex:No:8 Demonstrate intrusion detection system using tool(ids)


AIM:

To demonstrate intrusion detection system using Snort

INSTALLATION PROCEDURE:
1. Download SNORT fromsnort.org
2. Install snort with or without database support.
3. Select all the components and Click Next.
4. Install and Close.
5. Skip the Win P cap driver installation
6. Add the path variable in windows environment variable by selecting new class path.
7. Create a path variable and point it at snort .exe variable name path and variable value
c:\snort\bin.
8. Click OK button and then close all dialog boxes. 9. Open command prompt and type
the commands.

STEPS:

SNORT can be configured to run in three modes:


1. Sniffermode2.Packet Loggermode3.Network IntrusionDetectionSystemmode
Sniffer mode
i. snort–vPrint out the TCP/IP packets header on the screen
ii. snort–vdShow the TCP/IP ICMP header with application data in transit.
PacketLoggermode
i. snort –dev –l c:\log snort will automatically know to go into packet logger mode,it
collects every packet it sees and places it in log directory.
ii. snort –dev –l c:\log –h ipaddress/24 This rule tells snort that you want to print out
the data link and TCP/IP headers as well as application data into the log directory.
iii. snort–l c:\log–bThis is binary mode logs everything into a single file.
Network IntrusionDetectionSystemmode
i. snort–dc:\log–hipaddress/24 –csnort.confThis is a configuration file applies rule to
each packet to decide it an action based upon the rule type in the file.
ii. snort –d –h ipaddress/24 –l c:\log –c snort.conf This will configure snort to run inits
most basic NIDS form, logging packets that trigger rules specifies in the snort.conf C:\
Snort\bin\snort–v

C:\Snort\bin\snort–vd
C:\Snort\bin\snort –dev–l c:\log

C:\Snort\bin\snort–dev–lc:\log–hipaddress/24

C:\Snort\bin\snort–lc:\log–b
snort–d–hipaddress/24–lc:\log–csnort.conf

Result:
Thus intrusion detection system was studied using snort.
Ex:No:9 Explore network monitoring tools

Aim:
To explore network monitoring tools.

The best network monitoring tools:

1. Manage Engine Op Manage Platform


2. Windows, Linux, iOS, and Android
OpManageris an end-to-end network management software. It enables you to screen
network availability, traffic, performance metrics of various devices, including routers,
servers, switches, etc Key features:
• Allow system monitor multi-vendor network devices’ performance.
• It offers real time monitoring.
• Actively manage the physical servers like VMs , RAID, storage arrays, etc.
• Over9500built-inmonitoringtemplatesfornetworkdevices.
• Advanced notifications and alerts are sent to you via E-mails and SMS.
• With100+performance widgets, you can custom dashboard
• Easily manage the network with your mobile app
• Contextual integrations for all-in-one network infrastructure monitoring  Effectively monitor WAN/Vo IP
for jitter, packet loss,and latency.
• It provides an automated troubleshooting feature.
• It has an SSL off load
• Freetrial:yes,30-daysfreeversion

Pros

• Up time reporting
• Real-time monitoring
• The network is accessible through mobile
• Multi-user collaboration

Cons

 It is a feature-rich tool that will require a time in vestment to learn properly.

3. Auvik
Platform:Web-based
Auvikis a faster, easy-to-use, cloud-based network monitoring software giving you
instant insight into the networks you manage with automated network discovery,
monitoring, documentation, and much more. This networking performance monitor
tool provides real- time network mapping and inventory, keeping you constantly
updated.

Key feature
• The software runs on Windows Server and Ubuntu Linux.
o This network performance monitoring tool provides a dashboard that displays all your activities.
o It gives alerts immediately when unusual activity occurs.
o The software contains a SaaS package that includes a processing power and storage area for monitoring
software and system logs as well.
• Provides secure SSH access via an in-app terminal


Pros

• It supports both Windows Server and Ubuntu Linux.


• Collects the data in real time
• Automatically back up all the activities, which can be accessed in the future.
• You can easily access It from anywhere via any standard web browser.
• It includes configuration management.
• It gives an unlimited number of end points.

Cons

 It is not compatible with any other auviks modules.


 No path capacity analysis across links.

4. NetworkBandwidthAnalyzer
Platform: Windows & Linux
Network Bandwidth Analyzeris a multi-vendor network monitoring tool that allows
you to monitor the network’s performance. Detecting, diagnosing, resolving the network
performance issues allows you to use the network more effortlessly
Key features:

• Quickly detects, diagnoses ,and resolves the network performance issues, reducing the
network outrages.
• Easily view IPv4 and IPv6 flow records.
• You can easily Monitor Cisco Net Flow,JuniperJ-Flow,sFlow,HuaweiNetStream,and IPFIX
flow data identifying the applications and protocols consuming the most bandwidth.
• Immediately shows alerts if there is any change in the application traffic activity.
• Easily set alerts if the network monitoring software stops sending you network performance
data.
• The Analyzer collects all the traffic data and converts it into a useable format by which you can
easily monitor the network traffic.
• VM ware Sphere distributed switch support, by which it can filter out east-west traffic on
specific hypervisors.
• Justdragginganddroppingthenetworkperformancemetricsonacommontimeline accelerates the
process of identifying the root cause.
• The software supports the Cisco NBAR2, which provides visibility into HTTP (port 80) and
HTTPS (port 443) traffic without additional probes, spanning ports, etc.
• Easilycreateaschedule,anddeliverin-depthnetworktrafficanalysisandbandwidthreports.
• Thisisoneofthebestfreenetworkmonitoringtoolswhichsupportswirelessnetwork monitoring and
management.
• With CBQoS policy optimization, you can measure the effectiveness of pre-and post-policy
traffic levels per class-map
• Freetrial:Yes,30daysfullyfunctionaltrial.

Pros

 IthasamobileversionsupportedbyAndroidand
iOS.  Networkmonitoringisdone24×7



Itsupportsover450vendorslikeCanon,HP,Cisco,D-
link,Dell,etc. Usesreal-timedatatodiscoverdevices.
User-friendlynetworkmonitoringtool

Cons

 Ithasmanyfeatures,makingittimecaptivatingtounderstanditfully.

5. NetworkPerformanceMonitor
Platform: Windows & Linux
TheNetwork Performance Monitor software helps in saving time and improving the
network security and reliability by managing configurations, compliance for routers,
switches, and other networks, etc.
Key features:
• Ensure high network reliability and uptime with automated backup schedules for routers,
firewalls, and switches.
• Offersfullyautomatedconfigurationformostmanagednetworkdevices.
• Youcan easily view, deploy,track, and backup all the network device configurations fromone
location.
• Providesafastanderror-freeexecutionofconfigurationchanges.
• Youcanidentifythedifferencesinlinesofcodewiththeconfigurationcomparisonfeature.
• Itmaintainstheconfigurationdatabase,whichcanhelpyouinthefuturewithsecurity
misconfigurations.
• Efficientlymanagetheroutersandavoidsecuritymisconfiguration.
• Easilycreatemulti-device-basedbaselineconfigurationsgivingyouareferencepoint.
• Throughtheproactivedriftmanagementfeature,youcanimproveoperationalefficiency.
• Withanetworkinventorytool,youcanincreaseproductivityandsave time.
• Import existing devices, irrespective of the device type, and automatically update your device
information whenever it changes.
• Freetrial:Yes,30-daysfreetrial

Pros

• Itisamulti-vendorinventorysoftware 
Itquicklyresolvesnetworkissues.
• Simplifyandimproveyournetworkcompliance
• Itautomaticallyidentifiesvulnerabilitiesandleveragesthem.
 ItiscompatiblewithotherSolarWindsmodules.

Cons
 Itischallengingtotrackallthechangesintools.

6. BetterStack
Platform:Web-basedandCloud-based

Better Stackoffers a radically better observability platform. It combines monitoring,


log management, observability dashboards, incident management, and status pages
into a single integrated product


Key features:

• Realtimeobservabilitydashboards
• Actionablethresholdalertingbasedondifferenthosts
• Simpleintegrationwithyourstack
• Out of the box integrations: Datadog, New Relic, Prometheus, Zabbix, AWS, Azure, Google
cloud platform, Slack, Microsoft Teams and more
Uptime,Ping,HTTPS,SSL&TLDexpiration,DNS,Cronjobschecksandmore
30-secondsmonitoringfrequency
Incidentmanagementandon-callalertingbuilt in
• Licensing:Cloud-based
• Price:Freeplanavailable  Freetrial:Yes(60daysfree trial)

Pros

• Integratedstatuspagesforincidentcommunication
• Unlimitedon-callalertingonallpaidplans
• Powerfuloutoftheboxintegrations

Cons

 LimitedDNSmonitoringoptions

7. Obkio
Platform:Linux,Windows,Mac iOS
Obkio’sNetwork performance monitoring and SaaS solution software helps you to
identify the issues and resolve them to deliver an improved end-user experience. It is one of the
best network monitoring tools that provide real-time network performance updates every 500ms
Key features:
• ContinuousmonitoringusingmonitoringAgents
• ExchangeofSyntheticTraffictomeasureperformance
• MonitoringfromtheEnd-User perspective
• Decentralizedmonitoringbetweenpairsofagentsindifferent locations
• Thisnetworkperformancemonitoringtoolprovideshistoricalperformancetotroubleshoot past
issues
• AutomaticSpeedTeststoassessnetworkhealth
• UserQualityofExperience(QoE)ismeasuredeveryminute


Enable SNMP device monitoring so that you can monitor firewalls, CPU, switches, routers, and
much more.
SaaSapplicationallowsstoringinformationinthecloud,makingitusefulandeasytosetup.
• Freetrial: 14-dayfreetrial

Pros

• Deploysinminutes
• Troubleshootintermittentperformanceissues.
• Themonitoringagentsaresupportedbyeverysystem,Windows,Linux, Hyper-V,and more.
• InplaceswithnoITservers,youcanusehardwareagentsavailableinplug-and-play. 
webandmobileappisavailable

Cons

 Doesnotofferawiderrangeof Integrations

8. Paessler PRTG
Platform:Windows,Mac,Linux,Android,andiOS
PRTGnetwork monitoring software is known for its advanced infrastructure
management capabilities. Its user interface is very powerful and is the best fit for
organizations with low experience in network monitoring. This is one of the best free
network monitoring tools that supervises the entire IT infrastructure using advanced
technologies like SNMP, WMI, HTTP requests, Pings, SSH, and much more.
Key features:
• Completelymonitorsallthedevices,systems,andtrafficinyourIT infrastructure.
• Thisfreenetworkingmonitoringsoftwaresupportsmulti-sitecapabilities. 
ComprisesofSNMPsensorsthatgatherdevicehealthinformation 
ThePingfeatureenablesyoutocheckthedevice’shealth information. 
Itcontainsextrasensorstomonitorserversand applications.
• Itmonitorsspecificdatasetsfromyourdatabasewith individuallyconfiguredPRTGsensors.
• Entirelymanagesandprovidesdetailedstatisticsofalltheapplicationsrunninginyour network.
• Monitorsalltheserversinreal-timewithregardtotheiraccessibility,availability,and capacity.
• SupervisingforLANsaswellasforwirelessnetworks.
• Itoffersauto-discoverybywhichyoucancreateandmaintainadeviceinventory.
• TheLivetopologymapsinarangeofformatsare available.
• Ithasaprotocolanalyzerthatidentifieshigh-trafficapplications.  Freetrial:30-dayfree trial.

Pros

• Thedashboardcontainscolor-codedgraphsoflivedatainyournetworkmonitoringsystem.
• Therearenoadditionalpluginsordownloads;everythingisincludedinPRTG.  Itisaneasy-to-
usesolutionforallbusinesssizes.
• ItmonitorsadiverserangeofdeviceswithSNMP
• Itoffersafreeversion
• IthasawiderangeofalertmediumslikeSMS,emails,andanythird-partyintegrations.
Cons

 Ithasanenormousrangeoffeaturesthatrequiretimetoclearlyunderstand.
Result:
Thus various network monitoring tool have been explored successfully

Ex:No:10(i) Study to configure Firewall

Aim:
To study the Configuration of firewall on windows.
Configuring Firewall Defender on Windows: Step1:LaunchStartfromthetaskbar.

Step2:Search“Settings”inthesearchbarifyoudonotfindtheSettingsiconinStartmenu.
Step3:IntheleftpaneofSettings,clickPrivacy&security.
Step4:ClickWindowsSecurityoptioninPrivacy&securitymenu.
Step5:SelectFirewall&networkprotection.

Step 6: Now Window’s Security window will pop up window’s. Here you can verify whether your
Defender firewall is active or not.
Step7: Nowtoconfigurethefirewallaccordingtoyourrequirement,click
Advancedsettings.
YouwillbepromptedbyUserAccountControltogiveAdministrativeaccesstoWindows Defender to
make changes. Click Yes to proceed.

Step 8: Windows Defender Firewall with Advanced Security window will launch after giving
administrative permission.
Step9:Theleftpanehasseveraloptions:
• Inboundrules:Programs,processes,portscanbeallowedordeniedtheincoming
transmission of data within this inbound rules.
• Outboundrules:Herewecanspecifywhetherdatacanbesentoutwardsbythat program,
process, or port.

Step 10: To add a new inbound rule, select Inbound Rules option, then click New Rule… from the
right panel.

Step11: Nowwewillconfigureaninboundruleforanetworkport.ANewInboundRule Wizard window


pops-up, select Port option and click next.
Step12:NowselectTCPandspecifyportnumber65000.

Step13: Nowwecanselecttheactionweneedtotakeonthisport.Wewillblocktheinbound connection by


selecting Block the connection option then click Next.
Step14: Herewecanspecifywhenshouldthisrulecomeintoaction.Wewillkeep only Public option
selected and move Next

Step15: Thisisthelaststep.Hereweprovideanametothisrulesothatwecankeeptrackofit later in the Inbound


rules list. Write the name “65000 Port Block (Public)”. Click Finish.
Step 16: The inbound rule is successfully created. We can find“65000 Port Block (Public)” in
theInbound rules list.

Step17: Right-clicktherulewejustcreatedandtherearemultipleoptionswithwhichitcanbe Disabled or


Deleted.
Result:

Thus the configuration of Firewall on windows was studied successfully.


Ex:No:10(ii) Configuring VPN Aim:
Study to Configure VPN (Virtual Private
Network)

Steps To Configure VPN


1. Click the Windows Start button and select the Settings cog.

2. Under Windows Settings, select Network & Internet

3. SelectVPNfromtheleftmenu,thenattheright,clickAddaVPNconnection.
4. Inthedialogboxthat opens

5. Inthedialogboxthat opens

6. SetConnectionname.Forexampleto"UWSPVPN"

7. SetServernameoraddress.ForExample"vpn.uwsp.edu"

8. ClickSave

9. SelectChangeadapteroptions

10. Right-clickUWSPVPNandselectProperties.
11. In the UWSP VPN Properties box select the Networking tab.Select Internet Protocol Version 6and click
Properties.

12. ClickAdvancedontheInternetProtocolVersion6Propertiesboxthatopens.

13. IntheAdvancedTCP/IPSettingsbox: uncheck“Usedefaultgateway…”ontheIPSettingstab.


Note: this step is needed only for privately owned computers; UWSP owned computers do not
needthisoption.SelecttheDNStab.Inthetextboxlabeled“DNSsuffixforthisconnection:”type,
“uwsp.edu”(noquotes).Note,"AppendtheseDNSsuffixes"mayinsteaddisplayhere.

14. Click OK.

15. Click OK to the Internet Protocol Version 6 Properties box. This returns you to the UWSP
VPNProperties box.

16. IntheUWSPVPNPropertiesboxnowselectInternetProtocolVersion4andclickProperties.

17. ClickAdvancedontheInternetProtocolVersion4Properties box.

18. IntheAdvancedTCP/IPSettingsboxontheIPSettingstab,uncheck“Usedefaultgateway…”.

19. Click OK.

20. ClickOKtotheAdvancedboxandOKtotheInternetProtocolVersion4Properties box.

21. Finally, click OK on the UWSP VPN Properties box.

You have now disabled the default gateway for both Internet Protocol Version 6 and version 4.Your
UWSP VPN should be configured.

TostartaUWSPVPN connection
1. ClicktheWindowsStartbuttonandselectSettings.

2. UnderWindowsSettings,selectNetwork& Internet.

3. SelectVPNfromtheleftmenu,thenattheright,click"UWSP VPN".

4. Click"Connect"andloginwithyourUWSPusernameandpassword.Youwillbeaskedto authenticate with


MFA.

Result:
Thus the configuration of VPN was studied successfully/.

You might also like