UNIX Virtualization and High Availability course description This course covers administering UNIX enterprise-wide with an emphasis on virtualization and high availability. What will you learn Manage Virtual Machines. Manage containers. Manage HA clusters. Manage HA cluster storage. UNIX Virtualization and High Availability course details Who will benefit: Enterprise-level UNIX professional. UNIX professionals working with virtualization and/or High availability. Prerequisites: Linux network administration 2 (LPIC-2) Duration 5 days UNIX Virtualization and High Availability course contents VIRTUALIZATION Virtualization concepts and theory Terminology, Pros and Cons of virtualization, variations of Virtual Machine monitors, migration of physical to VMs, migration of VMs between host systems, cloud computing. Xen Xen architecture, networking and storage, Xen configuration, Xen utilities, troubleshooting Xen installations, XAPI, XenStore, Xen Boot Parameters, the xm utility. KVM KVM architecture, networking and storage, KVM configuration, KVM utilities, troubleshooting KVM installations. Other virtualization solutions OpenVZ and LXC, other virtualization technologies, virtualization provisioning tools. Libvirt and Related Tools libvirt architecture, networking and storage, basic technical knowledge of libvirt and virsh, oVirt. Cloud Management Tools Basic feature knowledge of OpenStack and CloudStack, awareness of Eucalyptus and OpenNebula. Containers Containers versus VMs, Docker, Kubernetes. Load balanced clusters of LVS/IPVS, VRRP, configuration of keepalived, configuration of ldirectord, backend server network configuration. HAProxy, configuration of HAProxy. Failover clusters Pacemaker architecture and components (CIB, CRMd, PEngine, LRMd, DC, STONITHd), Pacemaker cluster configuration, Resource classes (OCF, LSB, Systemd, Upstart, Service, STONITH, Nagios), Resource rules and constraints (location, order, colocation), Advanced resource features (templates, groups, clone resources, multi-state resources), Pacemaker management using pcs, Pacemaker management using crmsh, configuration and management of corosync in conjunction with Pacemaker, other cluster engines (OpenAIS, Heartbeat, CMAN). HIGH AVAILABILITY CLUSTER STORAGE DRBD/cLVM DRBD resources, states and replication modes, configuration of DRBD resources, networking, disks and devices, configuration of DRBD automatic recovery and error handling, management of DRBD using drbdadm. drbdsetup and drbdmeta, Integration of DRBD with Pacemaker, cLVM, integration of cLVM with Pacemaker. Clustered File Systems Principles of cluster file systems. Create, maintain and troubleshoot GFS2 file systems in a cluster, create, maintain and troubleshoot OCFS2 file systems in a cluster, Integration of GFS2 and OCFS2 with Pacemaker, the O2CB cluster stack, other commonly used clustered file systems.
Advanced Python training course description This course caters to network engineers aiming to enhance both their Python proficiency and network automation skills. Delving deeper into key areas such as netmiko, Nornir, and ncclient, we also focus on automating network testing and validation. Participants gain greater confidence working with Python functions, classes, objects, and error handling. The course additionally introduces more libraries like Scrapli, TTP, pyATS, Genie, pybatfish, and Suzieq, which cover parsing strategies, automation testing, validation, network analysis, observability, and telemetry. The curriculum also encompasses concurrency techniques. What will you learn Write Python modules and functions. Evaluate techniques to parse unstructured data. Use NETCONF filters. Handle Python errors effectively (try, assertâ¦). Use postman. Automate testing and validation of the network. Use scrapli, Genie, batfish and Suzieq. Advanced Python training course details Who will benefit: Network engineers. Prerequisites: Python for network engineers Duration 5 days Advanced Python training course contents Review CLI, NETCONF, RESTCONF, structured versus unstructured data, gNMI and when to use which. PEP 8. Naming conventions. Packages, modules, Classes and methods. The scrapli library. Netmiko versus scrapli. Hands on: scrapli, Dictionaries versus Regular Expressions. Modules and Functions Writing your own modules, containers versus packages, virtual environments. Best practices, calling functions, writing your own functions. Parameters, arguments. Named arguments, dictionaries as arguments. Builtins. Docstrings. Main. __name__, __main__ . Program arguments. Hands on: Getting interfaces, showing interface status using Netmiko and functions. Using dictionaries as arguments. Writing your own modules. Parsing strategies Turning unstructured data into structured data. textfsm, PyATS Genie parser, NAPALM getters, Template Text Parser. Hands on: Genie parser, TTP. Accessing structured data with lists and dictionaries. Classes, objects and Python Python classes in Genie, PyEZ and others . Hands on: studying network automation classes, objects, methods and attributes. Configuration management - more nornir, ncclient, requests Nornir tasks. Nornir results, Nornir functions, Nornir plugins. Nornir processors. YANG, YANG models, pyang. NETCONF hello. Capabilities. Schemas. Filters. Subtrees. XPATH. Exploring available YANG data models. NETCONF and network wide transactions. Asserting NETCONF capabilities. Configuration types. Locking configurations, commits. NETCONF data stores. Netconf-console. RESTCONF differences from NETCONF. URI construction. Postman. More XML and JSON. Git and configuration versions. Hands on: Nornir and Jinja2. Exploring available models, NETCONF filters. Using postman. Python error handling and debugging Context handlers, try, assert, logging, pdb, pytest, unit testing, chatgpt. Hands on: Writing code with each of the error handling methods, investigating what happens on an error. Use chatgpt to debug your code. Python Automation Testing Testing and validation. pyATS, Genie. Testbed file. Genie parse, genie learn, genie diff. Genie conf, Genie ops, Genie SDK, Genie harness. Xpresso. Hands on: Using Genie for state comparisons of the network. Network analysis Batfish, pybatfish, configuration analysis, analysing routing, analysing ACLs. Pandas. Pandas dataframe. Filtering and selecting values of interest. Hands on: Use Batfish to analyse network snapshots, find network adjacencies, flow path analysis. Network observability Suzieq, using docker, using as a package. Sqpoller, suzieq-gui, suzieq-cli, sq-rest-server. Namespaces and seeing devices, network state and Asserts. Time based analysis, snapshots and changes. Hands on: Suzieq: Gathering data from the network, analysing data from the network. Network state assertion. Telemetry gRPC, gNMI. CAP, GET, SET. Subscriptions. Model Driven telemetry. Hands on: Analysing telemetry data with Python. Concurrency asyncio, threads, processes. Nornir concurrency. Scrapli and netmiko concurrency. Hands on: Multiple SSH connections to devices at same time. Scarpli asyncio.
Hyper V for engineers training course description This five day course will provide you with the knowledge and skills required to design and implement Microsoft Server Virtualization solutions using Hyper-V and System Center. Please note that due to the nature of the lab / environment build delegates may be required to work in pairs. What will you learn Install and configure the Hyper-V server role. Create virtual machines, create and manage virtual hard disks and work with snapshots. Create and configure virtual machine networks in a Hyper-V environment. Provide high availability for Hyper-V environment by implementing failover clustering. Use System Center 2012 R2 Virtual Machine Manager. Create and manage virtual machines by using VMM. Hyper V for engineers training course details Who will benefit: Anyone designing, implementing, managing and maintaining a virtualization infrastructure. Prerequisites: Supporting Windows server 2012 Duration 5 days Hyper V for engineers training course contents Evaluating the environment for virtualization Overview of Microsoft virtualization, Overview of system center 2012 R2 components, Evaluating current environment for virtualization, Extending virtualization to the cloud environment. Selecting the appropriate virtualization method, Assessing the environment by using MAP. Installing and configuring the Hyper-V role Installing the Hyper-V role, Managing Hyper-V, Configuring Hyper-V settings, Hyper-V Host storage and networking, Installing the Hyper-V server role, Configuring Hyper-V settings, Accessing and managing Hyper-V remotely. Creating and managing virtual hard disks, virtual machines, and checkpoints Creating and configuring virtual hard disks, Creating and configuring virtual machines, Installing and Importing virtual machines, Managing virtual machine checkpoints, Monitoring Hyper-V, Designing virtual machines for server roles and services, Creating and managing virtual hard disks, Creating and managing virtual machines, Importing virtual machines and working with checkpoints monitoring Hyper-V. Creating and configuring virtual machine networks Creating and using Hyper-V virtual switches, Advanced Hyper-V networking features, Configuring and using Hyper-V network virtualization, Creating and using Windows Server 2012 R2 Hyper-V virtual switches, Configuring and using advanced virtual switch features, Configuring Hyper-V Network virtualization. Virtual machine movement and Hyper-V replica Providing high availability and redundancy for virtualization, Implementing virtual machine movement, Implementing and managing Hyper-V replica, Moving Hyper-V storage and virtual machines, Configuring and managing Hyper-V replica. Implementing failover clustering with Hyper-V Overview of failover clustering, Configuring and using shared storage, Implementing and managing failover clustering with Hyper-V, Creating a Hyper-V failover cluster, Managing a Hyper-V failover cluster. Installing and configuring System Center 2012 R2 virtual machine manager Integrating system center and server virtualization, Overview of VMM, Installing VMM, Adding hosts and managing host groups, Installing and configuring System Center 2012 R2 VMM, Managing hosts and host groups. Managing the Networking and storage infrastructure in System Center 2012 R2 VMM Managing networking infrastructure managing storage infrastructure, Managing infrastructure updates, Implementing a network infrastructure, Implementing a storage infrastructure, Managing infrastructure updates. Creating and managing VM using MS System Center 2012 R2 VMM VMM tasks in VMM, Creating, cloning, and converting VMs, Overview of VM updating, Creating a VM and modifying it's properties, Cloning a VM. Configuring and managing the MS System Center 2012 R2 VMM library and library objects Overview of the VMM library, Working with profiles and templates, Configuring and managing the VMM library, Creating and managing profiles and templates. Managing clouds in MS System Center 2012 R2 VMM Introduction to clouds, Creating and managing a cloud, Working with user roles in VMM, Creating a cloud, Working with user roles, Deploying VMs to a private cloud. Managing services in MS System Center 2012 R2 VMM and app controller Understanding services in VMM, Creating and managing services in VMM, Using app controller Creating a service template, Deploying a service and updating a service template, Configuring app controller, Deploying a VM in app controller. Protecting and monitoring virtualization infrastructure Overview of backup and restore options for VM, Protecting virtualization Infrastructure using DPM, Using Operations Manager for monitoring and reporting, Integrating VMM with Operations Manager, Implementing MS System Center 2012 R2 Operations Manager agents, Configuring Operations Manager monitoring components, Configuring Operations Manager integration with System Center 2012 R2 VMM.
Advanced C++ training course description The course will give a broad overview of the C++ Programming language, focusing on modern C++, up to C++17. This course will cover the use of the Standard Library, including containers, iterator, function objects and algorithms. From the perspective of application development, a number of design patterns will be considered. What will you learn Write C++ programs using the more esoteric language features. Utilise OO techniques to design C++ programs. Use the standard C++ library. Exploit advanced C++ techniques Advanced C++ training course details Who will benefit: Programmers needing to write C++ code. Programmers needing to maintain C++ code. Prerequisites: C++ programming foundation. Duration 5 days Advanced C++ training course contents Study of a string class Create a string class as a means to investigate many issues, involving the use of operator overloading and including overloading new and delete. Creation of the class will also require consideration of 'const correctness'. Exception handling Consider the issues involved in exception handling including the concept of exception safety. Templates Review definition of template functions, including template parameter type deduction. Introduction to template metaprogramming. Newer features including template template parameters and variadic templates. Creation of template classes. Design patterns Introduction to Design Patterns and consideration of a number of patterns, such as, factory method, builder, singleton and adapter. The standard C++ library (STL) Standard Library features, such as, Containers, Iterator, Function Objects and Algorithms. Introduction to Lambda expressions. C++ and performance The writing of code throughout the course will be oriented towards performant code, including use of R Value references and 'move' semantics. Pointers The use of pointers will be considered throughout the course. Smart pointers will be considered to improve program safety and help avoid the use of 'raw' pointers. Threading This section will consider the creation of threads and synchronisation issues. A number of synchronisation primitives will be considered. Async and the use of Atomic will also be considered. New ANSI C++ features Summarising some of the newer features to be considered are: Auto, Lambdas expression, smart pointers, variadic templates and folds, R Value references and tuple together with structured binding.
Complete VB.Net training course description A hands on introduction to programming in Visual BASIC .Net. What will you learn Build Visual BASIC applications. Build simple components Debug Visual BASIC programs. Examine existing code and determine its function. Complete VB.Net training course details Who will benefit: Anyone wishing to program in Visual BASIC. Anyone wishing to build Windows based applications. Prerequisites: None although experience in another high level language would be useful. Duration 5 days Complete VB.Net training course contents Writing your first program Visual Studio, forms designer, running VB programs, the UI, properties, writing the code. Toolbox Controls Basic use, input controls, ActiveX controls. Menus and Dialog Boxes Menus, Dialog Box controls, event procedures. Visual Basic .NET variables and operators Variables, I/O, data types, constants, operators, Math Methods, precedence. Decision Structures and Loops and Timers Event-Driven programming, Ifâ¦Then, Select Case, Forâ¦Next Loops, Timer Control. Debugging Visual Basic .NET Programs Break Mode, watch & command windows. Structured Error Handling Try...Catch, Finally, Err Object, retry periods. Modules and Procedures Standard modules, public variables, procedures. Arrays and Collections to Manage Data Fixed-Size & dynamic Arrays, ReDim Preserve, object collections, Controls Collection. Text Files and String Processing Text Box object, Text String methods, sorting. Automating Office Applications Application objects, automation in VB, the Object Browser, the Process Component. Deploying Visual Basic .NET Applications Planning a deployment, ways to deploy an application, deployment projects, options. Managing Windows Forms Forms, positioning, manipulation, adding controls, organizing controls, Startup Object. Adding Graphics and Animation Effects System.Drawing namespace, coordinates, SystemPaint Event, animation, transparency. Inheriting Forms and Creating Base Classes Inheriting forms, inheritance picker, base classes and inheritance, classes in projects. Working with Printers PrintDocument class, Text Box object, Print Preview and Page Setup Dialog Boxes. Database programming with ADO.NET Databases, ADO.NET, Data Adapters, Datasets, Bound & Navigation Controls. Displaying database records, formatting DataGrid cells, updating the database. Displaying HTML Documents Using IE IE Object, Internet Controls, IE Events. Web Forms for Interactive Web Applications ASP.NET, Web Forms vs. Windows Forms, HTML controls, web applications, event procedures for web forms controls.
Complete VBA programming training course description This course helps you extend the capabilities of the entire Office suite using Visual Basic for Applications (VBA). Even if you have no programming experience, you'll be automating routine computing processes quickly using the simple, yet powerful VBA programming language. We start at the beginning to get you acquainted with VBA so you can start recording macros right away. You'll then build upon that foundation to utilize the full capabilities of the language in Word, Excel, Outlook, and PowerPoint. What will you learn Record, write and run macros. Work with VBA Editor. Use the huge library of built-in functions. Create simple dialog boxes and complex forms. Customize Word, Excel, PowerPoint, Outlook, and Access. Program the Office 2016 ribbon. Complete VBA programming training course details Who will benefit: Anyone looking to extend the capabilities of the entire Office suite using VBA. Prerequisites: None. Duration 5 days Complete VBA programming training course contents Macros and getting started in VBA VBA syntax, variables, constants, and enumerations, array variables, finding objects, methods, and properties. Working with VBA 1 VBA syntax, variables, constants, and enumerations, array variables, finding objects, methods, and properties. Decisions, loops and functions Built-in functions, creating your own functions, making decisions in your code, using loops to repeat actions. Using message boxes, input boxes, and dialog boxes Getting user input with message boxes and input boxes, creating simple custom dialog boxes, creating complex forms. Creating effective code Building modular code and using classes, debugging your code and handling errors, building well-behaved code, exploring VBA's security features. Programming the Office applications The Word object model and key objects, working with widely used objects in Word, the Excel object model and key objects, working with widely used objects in Excel, the PowerPoint object, model and key objects, working with shapes and running slide shows, the Outlook object model and key objects, working with events in Outlook, the Access object model and key objects, manipulating the data in an Access database via VBA, accessing one application from another application, programming the Office 2016 ribbon.
Complete C programming training course description A hands-on introduction to programming in the ANSI C programming language. The course initially moves at a fast pace in order to spend as much time as possible on the subject of pointers - the area which cause the most bugs in C programs. What will you learn Write ANSI C programs Use the C libraries Debug C programs Examine existing code and determine its function. Complete C programming training course details Who will benefit: Programmers wishing to learn C. Programmers wishing to learn C++ or Java. Prerequisites: None, although experience in another high level language would be useful. Duration 5 days Complete C programming training course contents Getting started The compilation process, comments, main(), statement blocks, printf(). C data types and operators char, int, float and double, qualifiers, arithmetic and assignment operators, precedence, Associativity. Basic I/O C libraries, stdin and stdout, getchar(), putchar(), printf() formatting. Flow control if else, dangling elses, else if, while and for loops. switch statements, the null statement, break, continue and gotos. Functions Function calls, arguments and return types, function declarations (prototypes), function definitions, scope of variables. The preprocessor Preprocessor actions, macros, #include. Libraries and their relationship with header files. Conditional compilation. More data types and operators Logical, bitwise and other operators, type conversion, casting, typedefs and access modifiers. Arrays Declaring and handling arrays, common gotchas, multidimensional arrays. Pointers What are pointers? Why they are so important, declaring and using pointers,The three uses of the *,pointer example - scanf, pointers as arguments. More pointers Golden rules of pointers and arrays, pointers to arrays, pointer arithmetic, arrays of pointers, multiple indirection. Character/string manipulation Arrays of characters, string definition, working with strings, String library. Program arguments argc and argv, example uses,char *argv[] versus char ** argv. Program structure and storage classes Globals (externals), multi source programs, the look of a C program. Structures Declaration, the . and - operators, unions and bitfields. Library functions File handling, fopen and fclose, reading from and writing to files, fseek().calloc() and malloc()
Programming in HTML5 with CSS course description This course provides an introduction to HTML5, CSS3, and JavaScript. It is an entry point into both the Web application and Windows Store apps training paths. The course focuses on using HTML5 / CSS3 / JavaScript to implement programming logic, define and use variables, perform looping and branching, develop user interfaces, capture and validate user input, store data, and create well-structured application. What will you learn Create and style HTML5 pages. Use JavaScript. Style HTML5 pages by using CSS3. Use common HTML5 APLs in interactive Web applications. Create HTML5 Web pages that can adapt to different devices and form factors. Enhance the user experience by adding animations to the HTML5 page. Programming in HTML5 with CSS course details Who will benefit: Website developers. Prerequisites: HTML5 development fundamentals. Duration 5 days Programming in HTML5 with CSS course contents Overview of HTML and CSS Overview of HTML, Overview of CSS, Creating a Web Application by Using Visual Studio 2012. Hands on Exploring the Contoso Conference Application. Creating and Styling HTML5 Pages Creating an HTML5 Page, Styling an HTML5 Page. Hands on Creating and Styling HTML5 Pages. Introduction to JavaScript Overview of JavaScript Syntax, Programming the HTML DOM with JavaScript, Introduction to jQuery. Hands on Displaying Data and Handling Events by Using JavaScript. Creating Forms to Collect and Validate User Input Overview of Forms and Input Types, Validating User Input by Using HTML5 Attributes, Validating User Input by Using JavaScript. Hands on Creating a Form and Validating User Input. Communicating with a Remote Data Source Sending and Receiving Data by Using XMLHTTPRequest, Sending and Receiving Data by Using jQuery AJAX operations. Hands on Communicating with a Remote Data Source. Styling HTML5 by Using CSS3 Styling Text, Styling Block Elements, CSS3 Selectors, Enhancing Graphical Effects by Using CSS3. Hands on Styling Text and Block Elements using CSS3. Creating Objects and Methods by Using JavaScript Writing Well-Structured JavaScript, Creating Custom Objects, Extending Objects. Hands on Refining Code for Maintainability and Extensibility. Creating Interactive Pages using HTML5 APIs Interacting with Files, Incorporating Multimedia, Reacting to Browser Location and Context, Debugging and Profiling a Web Application. Hands on Creating Interactive Pages by Using HTML5 APIs. Adding Offline Support to Web Applications Reading and Writing Data Locally, Adding Offline Support by Using the Application Cache. Hands on Adding Offline Support to a Web Application. Implementing an Adaptive User Interface Supporting Multiple Form Factors, Creating an Adaptive User Interface. Hands on Implementing an Adaptive User Interface. Creating Advanced Graphics Creating Interactive Graphics by Using Scalable Vector Graphics, Programmatically Drawing Graphics by Using a Canvas. Hands on Creating Advanced Graphics. Animating the User Interface Applying CSS Transitions, Transforming Elements, Applying CSS Key-frame Animations. Hands on Animating User Interface Elements. Web Sockets for Real-Time Communications Introduction to Web Sockets, Sending and Receiving Data by Using Web Sockets. Hands on Implementing Real-Time Communications by Using Web Sockets. Creating a Web Worker Process Introduction to Web Workers, Performing Asynchronous Processing by Using a Web Worker. Hands on Creating a Web Worker Process.
Java training course description A comprehensive introduction of the Java language and environment. It is important to note that the course will assume that the delegates are already familiar with the C language as this enables more advanced features of the Java language to be covered in the course. The course will also give an overview of areas related to programming in Java. What will you learn Describe the Java architecture. Write Java applets and applications. Debug Java programs. Examine existing code and determine its function. Use multimedia extensions, the awt, multithreading, exceptions within Java Java training course details Who will benefit: Those wishing to program in Java. Prerequisites: Complete C programming Duration 5 days Java training course contents Review of UNIX fundamentals What is Java? What Java is, history of Java, reasons for success. The Java Virtual Machine, Bytecodes, getting up and running with Java, Java resources. Simple Java applications. C features in Java Java data structures, Java flow control, differences from C, arrays, strings and packages. OO features in Java Java classes and objects, inheritance, overloading, packages. Differences from C++. Java applets Applications vs. applets, HTML, the applet tag, applet methods, life cycle, testing and debugging. Multimedia applets Images, sounds, fonts, colours and animation. Java products The JDK in detail, other development environments. Javabeans and JDBC overviews. Abstract Window Toolkit JFC and Swing versus AWT. Event handling (JDK 1.1), GUIs, panels, buttons, lists, scrollbars, text areas, frames⦠Exception handling and multithreading Handling exceptions. Starting, pausing, stopping threads, producers, consumers, monitoring. More standard classes Java file I/O, Streams, The system class. The networking model, java.net classes. Security and Java Types of attack, the security manager, craplets, securing the network. Integrating legacy code with Java
Cyber security training course description This cyber security course focusses on the network side of security. Technologies rather than specific products are studied focussing around the protection of networks using firewalls and VPNs. What will you learn Describe: - Basic security attacks - RADIUS - SSL - VPNs Deploy firewalls and secure networks Explain how the various technologies involved in an IP VPN work. Describe and implement: - L2TP - IPsec - SSL - MPLS, L3, VPNs. Cyber security training course details Who will benefit: Anyone working in the security field. Prerequisites: TCP/IP foundation for engineers Duration 5 days Cyber security training course contents Security review Denial of service, DDOS, data manipulation, data theft, data destruction, security checklists, incident response. Security exploits IP spoofing, SYN attacks, hijacking, reflectors and amplification, keeping up to date with new threats. Hands on port scanning, use a 'hacking' tool. Client and Server security Windows, Linux, Log files, syslogd, accounts, data security. Hands on Server hardening. Firewall introduction What is a firewall? Firewall benefits, concepts. HAnds on launching various attacks on a target. Firewall types Packet filtering, SPI, Proxy, Personal. Software firewalls, hardware firewalls. Firewall products. Hands on Simple personal firewall configuration. Packet filtering firewalls Things to filter in the IP header, stateless vs. stateful filtering. ACLs. Advantages of packet filtering. Hands on Configuring packet filtering firewalls. Stateful packet filtering Stateful algorithms, packet-by-packet inspection, application content filtering, tracks, special handling (fragments, IP options), sessions with TCP and UDP. Firewall hacking detection: SYN attacks, SSL, SSH interception. Hands on SPI firewalls. Proxy firewalls Circuit level, application level, SOCKS. Proxy firewall plusses and minuses. Hands on Proxy firewalls. Firewall architectures Small office, enterprise, service provider, what is a DMZ? DMZ architectures, bastion hosts, multi DMZ. Virtual firewalls, transparent firewalls. Dual firewall design, high availability, load balancing, VRRP. Hands on Resilient firewall architecture. Testing firewalls Configuration checklist, testing procedure, monitoring firewalls, logging, syslog. Hands on Testing firewalls. Encryption Encryption keys, Encryption strengths, Secret key vs Public key, algorithms, systems, SSL, SSH, Public Key Infrastructures. Hands on Password cracking. Authentication Types of authentication, Securid, Biometrics, PGP, Digital certificates, X.509 v3, Certificate authorities, CRLs, RADIUS. Hands on Using certificates. VPN overview What is a VPN? What is an IP VPN? VPNs vs. Private Data Networks, Internet VPNs, Intranet VPNs, Remote access VPNs, Site to site VPNs, VPN benefits and disadvantages. VPN Tunnelling VPN components, VPN tunnels, tunnel sources, tunnel end points, tunnelling topologies, tunnelling protocols, which tunnelling protocol? Requirements of tunnels. L2TP Overview, components, how it works, security, packet authentication, L2TP/IPsec, L2TP/PPP, L2 vs L3 tunnelling. Hands on Implementing a L2TP tunnel. IPsec AH, HMAC, ESP, transport and tunnel modes, Security Association, encryption and authentication algorithms, manual vs automated key exchange, NAT and other issues. Hands on Implementing an IPsec VPN. SSL VPNs Layer 4 VPNs, advantages, disadvantages. SSL. TLS. TLS negotiation, TLS authentication. TLS and certificates. Hands on Implementing a SSL VPN. MPLS VPNs Introduction to MPLS, why use MPLS, Headers, architecture, label switching, LDP, MPLS VPNs, L2 versus L3 VPNs. Point to point versus multipoint MPLS VPNs. MBGP and VRFs and their use in MPLS VPNs. Hands on Implementing a MPLS L3 VPN. Penetration testing Hacking webservers, web applications, Wireless networks and mobile platforms. Concepts, threats, methodology. Hands on Hacking tools and countermeasures.