Zorp 3.4 LTS Installation Guide

This guide is published under the Creative Commons Attribution-Noncommercial-No Derivative Works (by-nc-nd) 3.0 license. See Appendix 3, Creative Commons Attribution Non-commercial No Derivatives (by-nc-nd) License for details. The latest version is always available at http://www.balabit.com/support/documentation.

This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/). This product includes cryptographic software written by Eric Young (eay@cryptsoft.com)

This documentation and the product it describes are considered protected by copyright according to the applicable laws.

The Zorp™ name and the Zorp™ logo are registered trademarks of BalaBit.

The BalaBit Shell Control Box™ name and the BalaBit Shell Control Box™ logo are registered trademarks of BalaBit.

The syslog-ng™ name and the syslog-ng™ logo are registered trademarks of BalaBit.

The BalaBit™ name and the BalaBit™ logo are registered trademarks of BalaBit.

Linux™ is a registered trademark of Linus Torvalds.

Debian™ is a registered trademark of Software in the Public Interest Inc.

Windows™ 95, 98, ME, 2000, XP, Server 2003, Vista, Server 2008 and 7 are registered trademarks of Microsoft Corporation.

CryptoCARD™ is a registered trademark of CryptoCARD Corporation.

ClamAV™ and Clam AntiVirus™ are registered trademarks of Tomasz Kojm (http://clamav.net).

VirusBuster™ is a registered trademark of VirusBuster Ltd. (http://vbuster.hu).

Nod32™ is a registered trademark of ESET, LLC (http://www.eset.com).

All other product names mentioned herein are the trademarks of their respective owners.

Some rights reserved.

May 16, 2012

Revision History

Abstract

This document is a step-by-step guide for installing Zorp Gateways.


Table of Contents

Preface
1. Summary of contents
2. Target audience and prerequisites
3. Products covered in this guide
4. Typographical conventions
5. Contact and support information
5.1. Sales contact
5.2. Support contact
5.3. Training
6. About this document
6.1. Summary of changes
6.2. Feedback
1. Introduction
1.1. Understanding firewalls
1.2. Product overview
1.2.1. Features
2. Preparing for the installation
2.1. System requirements
2.1.1. Hardware requirements for a Zorp Firewall host
2.1.2. Hardware requirements for a ZMS host, ZAS server or monitoring system
2.1.3. Hardware requirements for a ZCV host
2.1.4. Hardware requirements for a Zorp Management Console
2.1.5. Hardware compatibility
3. Installation and getting started
3.1. Stable and feature releases of Zorp
3.2. Overview of the installation process
3.3. Installing ZorpOS
3.3.1. Booting from the Zorp DVD
3.3.2. The Installer menu
3.3.3. End-User License Agreement
3.3.4. Using the installer
3.3.5. Selecting language
3.3.6. Selecting keyboard layout
3.3.7. Optical drive detection
3.3.8. Selecting installer components to load
3.3.9. Network setup
3.3.10. Configuring time zone
3.3.11. Hard disk detection and partitioning with Simple Installer (without software RAID 1)
3.3.12. Hard disk detection and partitioning with Simple Installer with software RAID 1
3.3.13. Configuring RAID devices (EXPERT ONLY)
3.3.14. Setting up the user account and password
3.3.15. Installing the ZorpOS base system
3.4. Configuring the Zorp modules
3.4.1. Installing Zorp modules
3.4.2. Configuring Postfix
3.4.3. Configuring the zorp-utils package
3.4.4. Configuring the NOD32 virus filtering modules
3.4.5. Configuring ZMS monitoring
3.4.6. Configuring Openswan (EXPERT ONLY)
3.4.7. Settings of ZMS
3.4.8. Installing the electronic license keys
3.5. Installing packages manually
3.5.1. Installing system components with apt-get install
3.6. Upgrading Zorp
3.6.1. Upgrading with apt tools
3.7. Installing the Zorp Management Console
3.7.1. Installing ZMC on Debian/GNU Linux
3.7.2. Installing ZMC on Microsoft Windows 2000/XP
3.8. Installing the Zorp Authentication Agent (Satyr)
3.8.1. Installing Satyr on Debian/GNU Linux
3.8.2. Installing Satyr on Microsoft Windows 2000/XP
3.9. Manual partitioning
3.9.1. Creating a partition
3.9.2. Modifying partitions
3.9.3. Configuring software RAID
1. Further readings
1.1. Zorp related material
1.2. General, Linux related material
1.3. Postfix documentation
1.4. BIND Documentation
1.5. NTP references
1.6. SSH resources
1.7. TCP/IP Networking
1.8. Netfilter/IPTables
1.9. General security related resources
1.10. syslog-ng references
1.11. Python references
1.12. Public key infrastructure (PKI)
1.13. Virtual Private Networks (VPN)
2. Zorp Application Level Gateway End-User License Agreement
2.1. 1. SUBJECT OF THE LICENSE CONTRACT
2.2. 2. DEFINITIONS
2.3. 3. LICENSE GRANTS AND RESTRICTIONS
2.4. 4. SUBSIDIARIES
2.5. 5. INTELLECTUAL PROPERTY RIGHTS
2.6. 6. TRADE MARKS
2.7. 7. NEGLIGENT INFRINGEMENT
2.8. 8. INTELLECTUAL PROPERTY INDEMNIFICATION
2.9. 9. LICENSE FEE
2.10. 10. WARRANTIES
2.11. 11. DISCLAIMER OF WARRANTIES
2.12. 12. LIMITATION OF LIABILITY
2.13. 13.DURATION AND TERMINATION
2.14. 14. AMENDMENTS
2.15. 15. WAIVER
2.16. 16. SEVERABILITY
2.17. 17. NOTICES
2.18. 18. MISCELLANEOUS
3. Creative Commons Attribution Non-commercial No Derivatives (by-nc-nd) License
Glossary
Index

List of Procedures

3.6.1.1. Upgrading Zorp hosts using apt

Preface

Welcome to Zorp 3.4 LTS Installation Guide!

This book is meant for system administrators getting started with Zorp. It describes what preparation and planning do you have to perform before starting to install Zorp gateways into your perimeter network, and guides you through the complete installation procedure, as well as the setup of the different Zorp components.

This book does not teach you basic Linux, IPTables, networking and firewall skills. There are numerous books exhaustively dealing with these topics, if you think you need additional information on these fields, please refer to Appendix B for a list of suggested additional readings.

Giving a complete theoretical background on modern networking concepts is out of the scope of this guide. However, technical support statistics of BalaBit who developed Zorp show that it cannot be completely avoided, so many of the chapters start with theory primers of various length.

You can safely ignore these primers if you consider them a nuisance and even use this guide as a handbook reading only those chapters that you really need. Alternatively, you can use the final chapter only where a growing collection of step-by-step configuration examples are given with occasional background lexical information.

Although the guide contains as many configuration examples as possible, it definitely cannot cover all the possible network setups where Zorp can be used.

1. Summary of contents

Chapter 1, "Introduction to Zorp" introduces you to different firewall technologies, contains a Zorp feature list and contents of the installation media.

Chapter 2, "Preparing for installation" describes what you should do before starting to install the Zorp Suite.

Chapter 3, "Installation and getting started" guides you through the installation of Zorp and ZMS, the Zorp Management System.

Appendix A, "Kernel patches" is a list of suggested kernel patches and their availability.

Appendix B, "Further readings" is a list of suggested reference materials in different Zorp and network security related fields.

Appendix 3, Creative Commons Attribution Non-commercial No Derivatives (by-nc-nd) License includes the text of the Creative Commons Attribution Non-commercial No Derivatives (by-nc-nd) License applicable to The Zorp 3.4 LTS Install Guide.

2. Target audience and prerequisites

This guide is intended for use by system administrators and consultants responsible for network security and whose task is the configuration and maintenance of Zorp firewalls. Zorp gives them a powerful and versatile tool to create full control over their network traffic and enables them to protect their clients against Internet-delinquency.

This guide is also useful for IT decision makers evaluating different firewall products because apart from the practical side of everyday Zorp administration, it introduces the philosophy behind Zorp without the marketing side of the issue.

The following skills and knowledge are necessary for a successful Zorp administrator.

Skill Level/Description
Linux At least a power user's knowledge.
Experience in system administration Certainly an advantage, but not absolutely necessary.
Programming language knowledge It is not an explicit requirement to know any programming language though being familiar with the basics of Python may be an advantage, especially in evaluating advanced firewall configurations or in troubleshooting misconfigured firewalls.
General knowledge on firewalls A general understanding of firewalls, their roles in the enterprise IT infrastructure and the main concepts and tasks associated with firewall administration is essential. To fulfill this requirement a significant part of Chapter 3, Architectural overview in the Zorp Administrator's Guide is devoted to the introduction to general firewall concepts.
Knowledge on Netfilter concepts and IPTables In-depth knowledge is strongly recommended; while it is not strictly required it definitely helps understanding the underlying operations and also helps in shortening the learning curve.
Knowledge on TCP/IP protocol High level knowledge of the TCP/IP protocol suite is a must, no successful firewall administration is possible without this knowledge.

Table 1. Prerequisites


3. Products covered in this guide

The Zorp Distribution DVD-ROM contains the following software packages:

  • actual version of Zorp 3.4 LTS packages;

  • ZorpOS 4, the operating system hardened for security, based on Ubuntu Lucid Lynx;

  • actual version of ZMS 3.4 LTS, the Zorp Management system;

  • actual version of ZMC 3.4 LTS, the Zorp Management Console (GUI) for both Linux and Windows operating systems, and all the necessary software packages;

  • actual version of ZAS 3.4 LTS, the Zorp Authentication System;

  • actual version of the Zorp Authentication Agent 3.4 LTS, the ZAS client for both Linux and Windows operating systems.

For a detailed description of hardware requirements of Zorp, refer to Chapter 3, Preparing for the installation of the Zorp Installation Guide.

For additional information on Zorp and its components visit BalaBit's Zorp product specific website containing white papers, tutorials, and online documentations on the above products.

4. Typographical conventions

Before you start using this guide, it is important to understand the terms and typographical conventions used in the documentation. For more information on specialized terms and abbreviations used in the documentation, see the Glossary at the end of this document.

The following kinds of text formatting and icons identify special information in the document.

[Tip] Tip

Tips provide best practices and recommendations.

[Note] Note

Notes provide additional information on a topic, and emphasize important facts and considerations.

[Warning] Warning

Warnings mark situations where loss of data or misconfiguration of the device is possible if the instructions are not obeyed.

Command

Commands you have to execute.

Emphasis

Reference items, additional readings.

/path/to/file

File names.

Parameters

Parameter and attribute names.

Label

GUI output messages or dialog labels.

Menu

A submenu or menu item in the menu bar.

Button

Buttons in dialog windows.

5. Contact and support information

This product is developed and maintained by BalaBit IT Security Ltd. We are located in Budapest, Hungary. Our address is:


         BalaBit IT Security Ltd.
         2 Alíz Street
         H-1117 BudapestHungary
         Tel: +36 1 398-6700
         Fax: +36 1 208-0875
         E-mail: 
         Web: http://www.balabit.com/
       

5.1. Sales contact

You can directly contact us with sales related topics at the e-mail address , or leave us your contact information and we call you back.

5.2. Support contact

To access the BalaBit Online Support System (BOSS), sign up for an account at the MyBalaBit page and request access to the BalaBit Online Support System (BOSS). Online support is available 24 hours a day.

BOSS is available only for registered users with a valid support package.

Support e-mail address: .

Support hotline: +36 1 398 6700 (available from 9 AM to 5 PM CET on weekdays)

5.3. Training

BalaBit IT Security Ltd. holds courses on using its products for new and experienced users. For dates, details, and application forms, visit the http://www.balabit.com/support/trainings/ webpage.

6. About this document

This guide is a work-in-progress document with new versions appearing periodically.

The latest version of this document can be downloaded from the BalaBit website here.

6.1. Summary of changes

6.1.1. Version 3.3FR1 - 3.4

Changes in product: 

Changes in document: 

6.2. Feedback

Any feedback is greatly appreciated, especially on what else this document should cover, including protocols and network setups. General comments, errors found in the text, and any suggestions about how to improve the documentation is welcome at .

Chapter 1. Introduction

This chapter helps you to understand the concepts of firewalling and introduces the major features of Zorp.

1.1. Understanding firewalls

A firewall is a device which allows you to control protocol flows between your networks and a tool which implements and enforces the network perimeter security defenses of your company.

As it is important to understand the differences between firewall products, the main concepts of different firewall technologies are summarized below.

A bastion host is a protected server or workstation connected to both your protected (private) network and the Internet (dual-homed). There is no direct connection between the networks (no packet forwarding), and to access a service provided by the Internet from your private network, you have to log on to the bastion host, and run installed client programs there, effectively using your workstation as a terminal. This kind of protection is good enough if you trust all your users and all client programs on the bastion host.

Packet filtering - as the name suggests - filters network traffic at the network layer (IP layer in TCP/IP scheme). This means that the decision about the packet's further processing is based solely on the information available in the packet header (IP, UDP and TCP headers). This information is insufficient in security conscious environments, because the contents of passing packets (all the commands of the protocol) are not checked at all. TCP connection direction (whether a given connection was initiated inbound or outbound) is derived from the presence of the ACK bit in the TCP header, thus any packet with the ACK bit set will pass this kind of filtering, even if it is not part of an established connection.

Stateful packet filtering (SPF) was designed to eliminate some disadvantages of simple packet filters. These firewalls try to track associated packets (e.g. TCP connections), and drop all packets not belonging to already established connections. While it is easy to construct a packet which can pass a simple packet filter, this is more difficult to accomplish when stateful filtering is in use. SPF firewalls also employ some packet content checking, but the level of analysis is quite low. There are some architectural problems with SPF firewalls resulting from the packet based processing.

Application level gateway (proxy) firewall is a set of special programs (application level gateways or proxies) each implementing a given protocol, mediating client requests to servers. Proxy firewalls do not process packets, they do not even forward packets. They accept a connection as a stream of bytes instead, and establish a separate connection to the target server on their own. They read protocol elements, interpret and verify them, and if the local security policy permits the request, they send them on towards the server. The main difference between proxy firewalls and packet filtering is that the two connections (from client to proxy and from proxy to server) are completely independent from each other, and that greater detail of the stream contents can be analyzed. They can be transparent both to the client and to the server as well.

Modular application level gateway (modular proxy) firewall is a new technology extending the concepts of proxy firewalls. While simple proxy firewalls process a single application protocol at a time, modular gateways are able to analyze a subprotocol embedded in a parent protocol. This means that if a main protocol has an identifiable subprotocol (think of a HTTP protocol embedded in SSL) a proxy can be attached to the embedded part. This solves the problem of privacy versus controllability. For instance, many corporate firewalls disallow using HTTPS (secure web access), because of its privacy protection: one can easily subvert corporate policies because the encrypted contents of HTTPS are not checked at all. However completely disallowing SSL has some serious drawbacks too: the on-wire encryption provided by SSL is lost, which is a must for protocols sending passwords openly. Zorp was built from the ground up to be modular, proxies can be stacked within each other in case the parent protocol permits some kind of embedded protocol or data. The SSL proxy makes it possible to attach a http proxy to the tunnelled TCP connection. This way outbound HTTPS can be allowed while keeping the encrypted contents under control.

1.2. Product overview

This section gives you an overview of Zorp: list of features, list of available protocol gateways and contents of the installation CD-ROM.

1.2.1. Features

Zorp is a component-based, object-oriented, event-driven and modular proxy firewall suite, making it possible to fine tune proxy decisions with its built-in script language, in order to fully analyze complex protocols (like SSL with embedded HTTP connection), and to utilize outband authentication techniques.

Hardened OS: A firewall consists of several important components and one of them is the underlying operating system. It has to be special in many ways. First, it has to be as stable as possible, since the firewall is the gate to the protected network; every part of it is crucial. Breaking into the operating system of the firewall means that the protection evaporates, thus every single daemon or program running on the OS has to be carefully analyzed and modified to meet the requirements. Second, in security less sometimes means more: to minimize the risk only the needed elements are installed, also making the maintenance of the OS more effective. Zorp contains a ZorpOS, a Linux-based operating system hardened for security. ZorpOS is available on the installation media, and the Zorp installer installs it.

Zorp: Zorp is bundled with an operating system customized for firewall needs. ZorpOS provides only the necessary components and its special settings protect it from external compromising. The installation CD-ROM is bootable and boots directly a graphical setup program which makes the installation of the hosting OS and the firewall components very easy.

Flexibility: The firewall configuration should be based on the security policy of the organization and it is a bad idea to limit the security policy according to the restrictions of a given firewall product. The flexibility of Zorp lies in the technology itself, since all details of the protocols are already available, thus customized behavior according to any local security policy is possible. For the purpose of configuration files a descriptive language is necessary that does not restrict the possibilities. BalaBit has chosen a programming language for this task which has already proven itself in many different fields: Python.

Transparent: Internal users do not need to know that all their requests go through a firewall, provided that their requests are allowed by the local security policy enforced by the firewall. No special client program or configuration is required.

Application level gateways: Zorp belongs to the group of application level firewalls, a technology recognized to be the best perimeter defense. The traffic crossing the firewall is processed, analyzed and forwarded by so-called proxies (protocol analyzers). The security provided by an application level firewall can be measured by how well the protocol analysis is done. All proxies in Zorp were developed to perform the best possible analysis. Zorp is able to analyze the following protocols: FTP, HTTP, SSL, POP3, FINGER, WHOIS, MIME, NNTP, IMAP, TELNET, PRINTER, RADIUS, RSH, TFTP, SMTP (both SMTP proxy without queuing capability and Postfix MTA as a native proxy is available), Oracle Net8, LDAP, VIRUSBUSTER, MSRPC, SSH, SIP and TCP/UDP-PLUG. See the Zorp Reference Guide for details on the proxies.

Modularity and subprotocol analysis: Application level protocols often contain further subprotocols. A good example is HTTPS, which is frequently used when transferring sensitive data in e-business systems. It is nothing else but a simple HTTP protocol (which is used for accessing the World Wide Web) wrapped into SSL (Secure Sockets Layer, now also known as TLS) which accomplishes encryption. Other firewall products cannot control the contents of the embedded protocol (HTTP in the example above), leaving you with two options: either banning HTTPS completely or letting the given traffic pass through without any supervision. The modularity of Zorp makes the control of the embedded protocols possible, since all proxies are modules attachable to other proxies. Of course modularity is not limited to HTTPS, processing POP3S, IMAPS is also possible. Virus detection and various content filtering in the data part of the passing traffic can also be performed.

Native proxies: Zorp includes hardened implementations for mail (SMTP), DNS and NTP service.

URL-filtering and screening: Enables you to disallow visiting undesirable websites. You can use a blacklist of these sites and Zorp will block client-queries for those URLs.

Virus scanning: Stackable virus protection module gives virus scanning capability in any protocol.

Session authentication: The basis of access control in Zorp is the zone system that is projected on the IP subnets of the protected network.

However, with the help of ZAS session-level regulation can be accomplished. In this case the user has to authenticate him/herself to access one of the services (e.g. web browsing, ftp use, etc.) provided by the firewall.

ZAS supports "inband" and " outband" authentication. "Inband" authentication can be used for protocols that are prepared for authentication (for example HTTP which supports proxy authentication). In case the service does not aid authentication at the protocol level, the "outband" method can be adopted. In such cases a program called Satyr is used on the client computers of the protected network. As the client establishes connection through the firewall (uses one of its services), the user has to authenticate him/herself with the help of Satyr. The session can pass through the firewall if and only if the authentication was successful.

ZAS supports the following authentication methods: username/password, CRYPTOCard RB-1, S/key one-time-password, X.509, Kerberos Tickets.

ZAS can be integrated into the following authentication back-ends: Radius, LDAP, PAM, HTPASS.

Centralized log management: Zorp is bundled with syslog-ng providing a reliable solution for remote logging. Syslog-ng offers flexible filtering and categorizing features and therefore it is one of the most widely deployed logging software used for central log management implementations. A further advantage is that in contrast with traditional syslog implementations, syslog-ng allows the use of TCP, getting rid of the unreliability of the UDP protocol.

Logging can be an efficient mechanism for the detection of intrusion attempts. With the help of logging invaluable information about the state of our network, intentions of the attackers, and possibly their identities can be obtained. If all log information is collected into one central server the analysis of the log files shows an overall picture about the state of the whole system.

VPN: Firewall to firewall and firewall to client VPN (Virtual Private Network) offers privacy and integrity protection for network traffic between your internal private network and remote corporate sites or networks. Zorp includes an IPSEC compliant VPN implementation featuring high security encryption with key length over 128 bits.

Zorp Management System: ZMS is a central management system that handles the firewall as a whole, which means that in addition to the functions of Zorp you can also configure almost all elements of the host it is running on: system logging, operating system settings, network interfaces, packet filtering and so on. ZMS also includes system health monitoring functionality which further increases availability as alerts are sent whenever a system condition becomes critical.

Another important property of a product is how it suits the demands of the administrators when used daily. The two most commonly used methods for management are the graphical interface and the command line - both of them available in Zorp. The graphical interface is the command center of the complete firewall solution including the operating system, VPN tunnels, key management, hardware and software monitoring and Zorp itself. The other method, changing and editing configuration files directly through the command line is also possible. The system consists of the management console (ZMC) that is running on an administrative workstation (Windows or Linux), the Management Server (ZMS) that stores and manages the configurations, and the firewall(s). While the management server and firewall can be installed on the same host, this is not possible with the management console. Naturally, the security of the communication between various components is always accomplished at the highest possible level, meaning that the traffic is encrypted using SSL and the endpoints are authenticated by X.509 certificates to each other. ZMS is suitable for the centralized management of several firewalls, firewall clusters in accordance with the requirements of the organization.

PKI management: Encrypted communication has no point without strong authentication of the remote peer. In SSL/TLS - the protocol used by Zorp management protocols - an X.509 certificate is used for authentication purposes.

All the elements of Zorp and ZMS were made to fit into enterprise PKI systems, though it is also possible to generate all keys and certificates with the CA functionality built into ZMS. The CA module supports the management of keys, certificates and revocation lists for IPSec VPN endpoints, session authentication, SSL links and management devices. The solution also supports cooperation with an already deployed PKI system as it can receive the necessary data (key, lists, etc.) from an external CA.

Clustering: Clustering is a commonly used technique to provide a more reliable service via increased availability. The aim is to minimize the downtime caused by hardware or software based problems.

This can be accomplished by using an additional software together with two or more computers, to remove any possible SPOF (Single Point of Failure) situations. The cluster is customizable according to the required availability. The choice of the number of computers, the make of the individual computers and environmental conditions all affect the cost and availability.

As the firewall supervises traffic going in or out of the protected networks its outage is not acceptable, thus Zorp supports clusters in two different ways:

  • Load balancing cluster: These clusters share the load on several hosts, all of them being active at any given time. In case of failure the failed host is simply removed from the cluster, leaving the service to the remaining hosts. These clusters are usually needed in performance and availability critical applications.

  • Fail over cluster: Fail over clusters do not share the load. Only one of the hosts is active at a time, the service is taken over by the inactive host in case of hardware or software failure. This solution is usually needed in availability critical applications.

Support: You can obtain support directly from BalaBit IT Ltd. or from authorized partners. All sold copies contains a free 30-day support package via e-mail with warranted response time, and free bugfixes for the given major version. Other support options are available, please contact us for details.

Chapter 2. Preparing for the installation

This chapter is about the round of the duties you should do before starting the installation.

2.1. System requirements

This section outlines hardware and software requirements for running Zorp on your firewall.

2.1.1. Hardware requirements for a Zorp Firewall host

Minimal hardware configuration: Zorp currently runs best on 64bit capable x86-based computers, equipped with at least a 233MHz Pentium class processor, at least 512MB main memory, and 8GB hard disk space for the operating system and virtual memory. Additional disk space is needed for the mail queue and log files, both depending on the traffic mediated through the firewall.

[Tip] Tip

For increased performance use fast SCSI disks, possibly using separate disks for the system and variable data.

Correctly sizing the hardware is a difficult task. Actual hardware requirements of a running system depend on many things, and taking everything into account is rarely possible. The three most demanding aspects of transmitted traffic are: number of new/parallel sessions, bandwidth, and log subsystem settings.

The number of parallel sessions directly affects memory and CPU usage. In addition to standard operating system memory requirements, Zorp uses memory for each established session. 64-128MB is sufficient for the OS to operate. For each and every running Zorp instance about 10-20MB is required depending on the complexity of the configuration (zones, proxies, services etc.). For each additional session about 200kB is needed (kernel socket buffers, thread specific data, dynamic proxy state information etc.). On an average firewall handling 500 sessions in 10 instances approximately 256-768MB RAM is required. The required memory really depends on the complexity of the policy (content filtering can really increase the needs due to the various data buffers).

The question now is how many sessions a given number of clients generate. It can be assumed that peak load is caused by HTTP traffic, which is the most demanding application on the Internet today. Each object on the World Wide Web is fetched by a separate session of HTTP if keep-alive connections are not allowed, and a single web page consists of many objects as each picture is an object on its own. If keep-alive is allowed then only a few sessions are used by a client, and a good estimate is that a single browser opens four sessions simultaneously to fetch a page and additional graphics. So if you had 100-120 clients browsing constantly, your firewall would have to handle 400-480 sessions at a time as a peak.

Bandwidth adds another aspect to hardware requirements. You might need a single session only, but that single session could require 155Mbit/sec fully saturated. This defines CPU requirements, but this is much more difficult to estimate. The CPU power is required mainly by session startup and by complex policies (like lot of customization). Of course the bandwidth is important as well. An average 2-3GHz CPU with enough memory can handle about 50-100-150 new sessions per second depending on the type of traffic. For performance tests please consult your Zorp support partner.

Default log settings of Zorp generate about 3-400 bytes of log messages for a single session. On a firewall serving 100000 sessions a day, this means 30-40MB of log. Increasing the verbosity level adds to this amount. You should carefully fine tune the logging subsystem by selecting the messages you are really interested in, thus decreasing both storage and runtime demands.

[Tip] Tip

Use reliable/brand hardware for your firewall with dual power supply and UPS. It can spare you a good amount of work and headache.

Hardware compatibility: As Zorp runs on the top of Linux, any hardware supported by Linux is also supported by Zorp.

2.1.2. Hardware requirements for a ZMS host, ZAS server or monitoring system

Minimal hardware configuration: The management server currently runs best on x86 based computers, equipped with at least a 500MHz Pentium class processor, at least 512MB main memory, and 1GB hard disk space for the operating system and virtual memory. Additional disk space is needed for the database and for the log files.

2.1.3. Hardware requirements for a ZCV host

Content vectoring consumes significantly more resources then a simple Zorp host. The exact requirements depend heavily on the actual traffic and the type and extent of the content analysis.

Minimal hardware configuration: At least a Pentium 4 class processor and 1GB RAM is required for ZCV to run efficiently. The minimal hard disk requirement is 2 GB, but significant amount of additional space can be required for quarantining, temporarily unpacking archives, and logging.

2.1.4. Hardware requirements for a Zorp Management Console

Minimal hardware configuration: ZMC currently runs best on x86 based computers with a graphical operating system. ZMC runs on Debian GNU/Linux with X Window System, and on Microsoft Windows 2000 or XP operating systems. A 600MHz CPU with at least 192MB RAM is needed, but for larger configurations a 2GHz CPU with 512MB RAM is recommended.

2.1.5. Hardware compatibility

Zorp can handle most modern hardware components commonly found in gateways and servers. For a complete list of supported hardware components, visit the BalaBit website.

Chapter 3. Installation and getting started

This chapter is a step-by-step guide for installing Zorp from the install DVD. Zorp has a text-based installer similar to the installer application of many Linux distributions, such as Debian GNU/Linux.

[Note] Note

Before starting the installation, advance planning is necessary for a successful firewall implementation. All the critical network parameters, such as firewall IP addresses, routing topology, DNS hierarchy, and so on must be known in advance.

The following IP addresses are particularly important: address of the Zorp host; address of the ZMS host; address of ZMC.

In addition, firewall administration roles must be defined with a corresponding password policy. A number of passwords that protect various elements of the system have to be defined. These passwords must be recorded (according to the security policy of your organization) and kept safe for later use.

Zorp is not a standalone firewall software, but part of a complex solution. Zorp must be installed on ZorpOS, BalaBit's hardened operating system tailored for security. The install DVD contains Zorp itself, along with the corresponding packages and a specially configured and modified operating system based on GNU/Linux.

3.1. Stable and feature releases of Zorp

As of October 2009, BalaBit has introduced the following support policy:

  • Stable versions, denoted by a two-digit version number ending with and a release number (for example 3.3R5): Stable branches are supported for at least 1 year, but no more than 2 stable versions of a product are supported at a time. Maintenance releases to the stable branch will contain only bugfixes.

  • Feature versions, denoted by two-digit version number ending and a feature relese number (for example 3.3FR1, 3.3FR2 and onwards): Feature branches will contain enhancements and new features, presumably 1-3 new feature per release. Only the last of the feature releases is supported (for example when a new feature release comes out, the last one becomes unsupported), and the last feature release becomes the new stable release.

[Note] Note

Releases of the feature branch are tested just like the stable releases; they are not "unstable" development snapshots. The difference between earlier major releases and current feature releases is the smaller number of features contained in a release, and the shorter support periods. If an unstable snapshot or alpha/beta/rc release will be released for public testing, it will be always marked explicitly as such.

[Warning] Warning

Downgrading from a feature release to an earlier (and thus unsupported) feature release, or to the stable release is not supported: this means that once you upgrade a system from a stable release (for example 3.3R5) to a feature release (for example 3.3FR1), you will have to keep upgrading to the new feature releases until the next stable version release (for example 4.0) is published, or risk using an unsupported product.

3.2. Overview of the installation process

The installation process can be divided into three main parts:

  • Installation of ZorpOS and the Zorp modules to the Zorp host: This phase includes setting up network access for the computer, the preparation (partitioning) of the hard disks, and the installation of ZorpOS. A user account is also created in this phase. See Section 3.3, Installing ZorpOS for details.

  • Configuring native services and the Zorp modules: This phase installs and configures the components of Zorp (for example ZMS, monitoring, ZAS, and so on). Numerous other services (like the mail transfer agent (Postfix), Secure Shell and IPSec access, and so on) are also configured in this phase. See Section 3.4, Configuring the Zorp modules for details.

  • Installing ZMC: In order to access the Zorp Management Server (ZMS) remotely using the Zorp Management Console (ZMC), ZMC has to be installed on the machine from which Zorp hosts will be administered. The IP address of this machine has to be known in advance, as during the installation ZMS has to be configured to accept connections from this machine. See Section 3.7, Installing the Zorp Management Console for details.

[Note] Note

Starting with version 3.4 the Zorp Installation DVD is only available in 64-bit (amd64).

3.3. Installing ZorpOS

3.3.1. Booting from the Zorp DVD

The ZorpOS operating system can be auto-booted from the Zorp DVD and the installation starts automatically.

[Note] Note

The BIOS settings of the computer may have to be modified to enable booting from the DVD. If unsure how to do it, please consult the documentation of your motherboard. After successfully adjusting the boot sequence, insert the DVD and restart the computer.

[Warning] Warning

Hazard of data loss! It is highly recommended to install Zorp on a dedicated computer. If there is any data on the computer that has to be retained, be sure to use manual partitioning during the installation (see Section 3.9, Manual partitioning), else all data will be lost when the installation process overwrites the whole hard disk.

3.3.2. The Installer menu

After booting from the DVD, the installer menu is displayed. The menu is visible both from a local terminal and from a serial console, allowing remote installations.

The Installer menu

Figure 3.1. The Installer menu


Select one of the available installation modes:

  • ZorpOS 3.4 Simple Installer: Install Zorp in Simple mode — starts the standard installation using default parameters at many installation steps. It is recommended for most users.

  • ZorpOS 3.4 Simple Installer - with software RAID 1: Install Zorp in Simple mode with software RAID 1 — starts the standard installation using default parameters at many installation steps and installs Zorp with RAID 1. This is useful when read performance or reliability is more important than data storage capacity.

    [Note] Note

    At least 2 hard disks are required for this type of install.

  • ZorpOS 3.4 Expert Installer: Install Zorp in Expert mode — provides additional flexibility and control over the installation. However, it also requires a higher level of knowledge about networking, the hardware, and Linux in general.

During normal configuration the installation steps follow each other automatically; in Expert mode they are displayed as a list.

[Note] Note

The Zorp Installer automatically uses the 2.6.32 kernel during the installation process.

[Note] Note

In Expert mode, some of the menuitems do not have any parameters that can be modified. Nevertheless, these steps must be executed as well, as they are configured using default parameters, or they represent distinct steps of the installation that cannot be influenced, but must be completed.

After the kernel has been loaded, the installer displays the End-User License Agreement.

The following options useful for troubleshooting are also available from the installer menu:

  • Run memtest86+ memory tester: Test the memory modules of the hardware. See the Memtest86 website for details.

  • Boot MBR of the first hard drive: Boot the master boot record of the primary hard drive.

  • Boot partition #1 of the first hard drive: Boot the first partition of the primary hard drive.

  • Boot options: Modify the boot parameters of the kernel. As the Zorp installer is based on the current installer of Debian GNU/Linux, the Debian boot parameters can be used. See the online documentation of the Debian installer for details.

  • Version information: Displays the architecture supported by the installer media (for example i386, amd64) and the version of the following components: Zorp, libzorp, ZMS, kernel, and installer.

    Version information

    Figure 3.2. Version information


  • Isolinux chainloader help: Boot a selected partition from a hard drive.

[Warning] Warning

Expert installation and the modifying kernel parameters is recommended only for advanced users. Do not experiment with it unless you know exactly what you are doing.

3.3.3. End-User License Agreement

The End-User License Agreement

Figure 3.3. The End-User License Agreement


The End-User License Agreement must be accepted before the actual installation is started. The complete text of the EULA is also available in Appendix 2, Zorp Application Level Gateway End-User License Agreement. After reading and understanding the license accept its terms and conditions.

3.3.4. Using the installer

Zorp has an easy-to-use text-based installer requiring only a keyboard (mouse is not needed nor supported by the installer). Navigation between the different options of a screen is possible using the cursor buttons. Selected actions (for example Go back or Continue) is highlighted in red. When multiple selection is possible use space to select/deselect a given item (for example when selecting the Zorp modules to be installed).

3.3.4.1. Miscellaneous options available during installation

The following additional options and utilities are available in Expert mode. They can be selected from the installation menu and are located above the Abort installation menu item.

  • Save debug logs : It is possible to save the logs of the installation to floppy. The logs are saved into the /var/log/debian-installer folder as well. USB floppy drives are currently not supported.

    [Tip] Tip

    This option can be useful when requesting support from BalaBit in case the installation has failed for some reason.

  • Check the DVD's integrity : In rare cases it is possible that the installation media gets damaged during the delivery. Use this option to determine if the DVD is still error-free.

    [Tip] Tip

    It is recommended to perform this check if the installation has previously failed because of an I/O error.

  • Execute a shell: Run a shell (ash) during the installation. The root partition in the shell is a RAM disk used during the installation, the partitions of the hard disk are mounted under the /target directory. In the shell, use the help command to get a list of the available commands. The nano text editor can be used to edit configuration files manually if needed. To return to the installation menu, type exit.

  • Abort the installation: Use this option if the installation has to be aborted for some reason. The machine is automatically rebooted.

3.3.5. Selecting language

Choosing a continent or region

Figure 3.4. Choosing a continent or region


Select the continent or region from the list where the installed machine will be located.

Choosing language

Figure 3.5. Choosing language


Select the region or country from the list where the installed machine will be located. This will also affect time zone settings.

Expert mode: Select your locale. Additional locales can also be selected.

3.3.6. Selecting keyboard layout

Selecting keyboard layout

Figure 3.6. Selecting keyboard layout


Expert mode: Select the type (PS2, USB, or no keyboard) of the keyboard used.

Select the layout of the keyboard used. The default keyboard layout is USA. If there are more than one possible keyboard layouts for the selected location, more options are displayed. Select the most appropriate.

3.3.7. Optical drive detection

The installer tries to detect the DVD drive containing the Zorp Installation disk.

Optical drive detection

Figure 3.7. Optical drive detection


Expert mode: Select which kernel modules to load from the ones that were detected as matching your hardware. If requested, the installer can prompt when a module that is accepting load-time parameters is about to be loaded, enabling the customization of the given module.

Expert mode: Configure hdparm if you want to optimize DVD access. Leave the field blank to continue without using hdparm.

3.3.8. Selecting installer components to load

This step is available in expert mode only. Most components are loaded automatically, the ones listed here are low priority and are optional. Select the ones you wish to load. Dependencies will be loaded automatically.

3.3.9. Network setup

3.3.9.1. Detecting network card(s)

The installer tries to detect the network card(s) automatically.

Expert mode: A list of the modules found to be matching the hardware is displayed. Unselect any modules you deem unnecessary. If requested, the installer can prompt when a module that is accepting load-time parameters is about to be loaded, enabling the customization of the given module. At the end of this step a list is displayed showing the modules that were not properly loaded and the hardware components that do not have a matching module yet.

3.3.9.2. Networking configuration

Selecting the network interface card to configure

Figure 3.8. Selecting the network interface card to configure


If there are multiple network interfaces in the computer, the installer displays a list of the recognized ones. At the time of the installation only one interface can be configured, the other ones have to be configured via the Networking component of ZMC (see Chapter 7 of the Zorp Administrator's Guide).

[Warning] Warning

Configure the interface that will be used for the communication between ZMS and the host. It is not possible to configure the host using ZMC if ZMS cannot access the host.

Networking is configured automatically using DHCP. If it is not possible to get IP through DHCP, networking has to be configured manually. The installer will then ask for the following information:

  • IP address: IP address of the machine (for example 192.168.1.10). The IP address can be chosen from the range of the corresponding physical subnet.

  • Netmask: The IP netmask of the given range in IP format. For example, general class C networks have the 255.255.255.0 netmask.

  • Default gateway: IP address of the default gateway. When using several network cards the default gateway is usually the external interface.

  • Name servers: IP address of the name servers used for domain name resolution. Specify maximum three servers, separating their addresses by a space.

After configuring the IP addresses (either dynamically or statically), enter the hostname of the machine.

Setting the hostname

Figure 3.9. Setting the hostname


Hostname: Name of the machine (for example firewall).

[Warning] Warning

If networking is not properly configured, it will not be possible to access the machine remotely. Networking misconfiguration can be corrected after the installation is finished by logging in locally to the machine and running ifconfig. See the manual pages of ifconfig for additional information. Alternatively, interface parameters can also be configured later using ZMC. However, it is very important for ZMS to be able to reach the firewall, otherwise ZMC-based configuration is not possible at all.

3.3.10. Configuring time zone

Configuring the clock

Figure 3.10. Configuring the clock


Ensure that the time zone displayed is the correct time zone for the machine. If it is correct, select Yes.

3.3.11. Hard disk detection and partitioning with Simple Installer (without software RAID 1)

The installer detects the available hard disks automatically. The next step of the installation is to prepare, partition and format the hard disk(s). The minimal storage capacity required by Zorp is 8GB.

Partitioning can be performed either automatically or manually. Guided partitioning is described below, for the details of manual partitioning, see Section 3.9, Manual partitioning.

Selecting the partitioning method

Figure 3.11. Selecting the partitioning method


[Note] Note

If there is already a partition existing on the hard drive, the installer also displays an option of Guided - resize. Select this option only if you know what you are doing. It is advised to select the Guided - use entire disk option.

Automatic partitioning utilizes the total capacity of a single hard disk. The hard disk is partitioned as follows:

  • Root partition: 1/3 of the total capacity, minimum 4GB, maximum 16GB.

  • Swap: The swap partition's size is minimum 1GB, maximum three times the size of the available RAM.

  • /var: This partition's size is minimum 512MB and takes up the remaining storage capacity.

The default filesystem used by ZorpOS is ext3. In order to use another filesystem, partitioning must be performed manually.

Please note that automatic partitioning partitions only a single hard disk; any additional disks have to be partitioned manually.

[Note] Note

The hard disk DMA has to be supported by the kernel. If the kernel does not support your chipset the writing of the partition table and formatting the hard disk can take several minutes.

Selecting the disk to partition

Figure 3.12. Selecting the disk to partition


Select the disk to partition.

Partitions to be formatted

Figure 3.13. Partitions to be formatted


For the changes listed to be written to the disk, select Yes.

[Warning] Warning

Hazard of data loss! The listed partitions are going to be formatted, and all data will be destroyed on them. Proceed only if you have ensured that there is no valuable data on the disk.

3.3.12. Hard disk detection and partitioning with Simple Installer with software RAID 1

Partitions to be formatted

Figure 3.14. Partitions to be formatted


For the changes listed to be written to the disk, select Yes.

[Warning] Warning

Hazard of data loss! The listed partitions are going to be formatted, and all data will be destroyed on them. Proceed only if you have ensured that there is no valuable data on the disk.

Finishing partitioning

Figure 3.15. Finishing partitioning


The installer displays an overview of the currently configured partitions and mount points. To finish partitioning, select Finish partitioning and write changes to disk.

Booting with degraded RAID

Figure 3.16. Booting with degraded RAID


Select whether you want to boot your system if RAID becomes degraded. The default option is No, but it is advised to select Yes, if you do not have physical access to the server console to use the recovery shell, to enable the system to boot unattended.

RAID partitions change list

Figure 3.17. RAID partitions change list


Select Yes to write the changes to the disks.

3.3.13. Configuring RAID devices (EXPERT ONLY)

This step is available in Expert mode only. When using RAID devices, the mdadm management utility has to be configured. The following options are available:

  • Start RAID devices automatically: If enabled, all RAID devices are detected and assembled automatically on system startup. The md driver required for this task is available in ZorpOS as a kernel module.

  • Start RAID monitor daemon: If running, the RAID monitoring daemon sends an e-mail to the user specified if a device belonging to a RAID array fails or changes its status.

  • Recipient for daemon e-mail notifications: The user receiving e-mail notifications when a device belonging to a RAID array fails or changes its status.

In normal mode, RAID devices and the RAID monitor daemon are started automatically, e-mail notifications are sent to the root user.

3.3.14. Setting up the user account and password

Setting up the user account and password

Figure 3.18. Setting up the user account and password


Provide the full name of the user with the normal account, and then the username. After this, enter and verify the password for the normal user account.

[Tip] Tip

Use the following guidelines for the password. It should:

  • be at least 8 characters long;

  • contain both small and capital letters;

  • contain special characters like: $#@;?.;

  • changed on a regular basis, but without reusing old passwords.

The installer will display a warning if you were trying to to use a weak password.

[Note] Note

Zorp uses SHA-512 password encryption and shadow passwords.

[Tip] Tip

Remote root access in Zorp is automatically disabled by default. To run a command as administrator (root), use sudo <command>.

3.3.15. Installing the ZorpOS base system

In this step the base components of ZorpOS are copied to the hard drive. Depending on the hardware, this can take several minutes.

3.4. Configuring the Zorp modules

3.4.1. Installing Zorp modules

Selecting the Zorp modules to be installed

Figure 3.19. Selecting the Zorp modules to be installed


The Zorp modules to be installed can be selected on the following screen. The following modules are available on the installation media:

  • Zorp Management Server: The Zorp Management Server (ZMS) and its corresponding packages. ZMS - depending on the license - can be installed to the Zorp firewall host or to a separate machine.

  • Zorp Pro Firewall: The packages required for a firewall host.

  • Zorp Authentication Server: The Zorp Authentication Server (ZAS) enables the authentication of network traffic on the user level at the firewall using password, CryptoCard, S/key, or X.509 methods. Integration to existing Microsoft Active Directory, LDAP, PAM, and Radius databases are supported. The module can be installed either together with the Zorp and ZMS modules or separately at a later date.

  • Monitor and Transfer ZMS Agents: This module includes the monitoring and transfer agents used to communicate between the components of the Zorp firewall system. This module is required on all Zorp, ZMS, ZCV or ZAS machines. It will be automatically installed as a dependency even if unselected.

  • Zorp Content Vectoring System: The Zorp Content Vectoring System (ZCV)is a framework and a uniform interface to manage various built-in and third party content vectoring modules (that is, virus and spam filtering engines). The content vectoring modules to be installed (in addition to the ZCV framework) can be selected from the following list:

    [Warning] Warning

    The ZCV framework and the content vectoring modules must be installed on the same host.

    • ClamAV Antivirus Scanner: This module contains the libraries and virus signature databases needed for using the ClamAV antivirus engine.

    • Eset NOD32: This module contains the libraries and virus signature databases needed for using the Eset NOD32 antivirus engine.

      [Note] Note

      During the installation of the Nod32 module, the username and password received with the license file will be required.

    • SpamAssassin: This module contains the libraries and databases needed for using the SpamAssassin spam filtering engine.

    • VirusBuster: This module contains the libraries and virus signature databases needed for using the VirusBuster antivirus engine.

For further information on the different modules see the Introduction chapter of the Zorp Installation Guide and the relevant chapters of the Zorp Administration Guide.

Below are some guidelines about which modules should be installed on the different types of machines.

  • When installing a single firewall (or a node of a cluster) that will be placed under the authority of a separate ZMS host, select only the Zorp Pro Firewall and Monitor and Transfer ZMS Agents components.

  • The third-party modules that can be used by ZCV must be licensed separately from Zorp. Select them only if you have a valid license for them.

  • When installing a ZMS host that will manage one or more Zorp firewalls, but the machine itself will not provide firewalling capabilities, select the Monitor and Transfer ZMS Agents and Zorp Management Server (ZMS) components.

  • If the firewall and ZMS functions are to be integrated on a single machine, select the Zorp Management Server, Zorp Pro Firewall, and Monitor and Transfer ZMS Agents components. Also select Zorp Content Vectoring System and the required modules as well if needed.

  • Zorp Authentication Server (ZAS) is an optional, central authentication service that can be installed on a Zorp machine. If you have license for ZAS select it together with the Zorp Pro Firewall component. This service must be licensed separately.

  • For an all-in-one system, select all the components available.

[Note] Note

The Zorp Management Console and the Zorp Authentication Agent (also called Satyr) applications are client–side components that cannot be installed on Zorp hosts. Their installation is discussed in Section 3.7, Installing the Zorp Management Console and Section 3.8, Installing the Zorp Authentication Agent (Satyr), respectively.

After choosing the modules to be installed hit Continue.

[Note] Note

When you continue the installation, some steps may not appear for you, depending on the components you have selected to install.

3.4.2. Configuring Postfix

Configuring Postfix

Figure 3.20. Configuring Postfix


Zorp uses Postfix as a native service for handling emails. A mail transferring agent (MTA) must be installed on the machine at least for delivering the locally generated messages.

General Postfix configuration

Figure 3.21. General Postfix configuration


The basic operation of mail handling on the host should be specified. The following options are available:

  • No configuration: No configuration changes will be done. Use this option if a working Postfix configuration is already available on the host, or if you wish to configure Postfix manually from ZMC.

  • Internet site: Send and receive mail directly using SMTP. This option is suitable in most common scenarios.

  • Internet with smarthost: Mail is received either using SMTP directly or by running a utility such as fetchmail. Outgoing messages are sent via another machine (a smarthost).

  • Satellite system: No mail is received locally. Root and postmaster mails are handled according to /etc/aliases. All messages are sent to a smarthost for delivery.

  • Local only: Mail is only delivered locally on the machine. There is no network.

Specifying the mailname

Figure 3.22. Specifying the mailname


Set the name that should appear in the domain part of outgoing mail (that is, after the @ sign).

3.4.3. Configuring the zorp-utils package

zorp-utils includes tools used by Zorp: zavupdate is a tool that updates the databases of the virus filtering engines. In this step these tools are configured. zavupdate has the following options:

  • Configuring the FTP proxy for database updates

    Figure 3.23. Configuring the FTP proxy for database updates


    FTP proxy: The zavupdate application can download database updates via FTP or HTTP. Enter the URL of the FTP proxy to be used (or NONE if the updates can be downloaded directly without using a proxy server).

  • Configuring the HTTP proxy for database updates

    Figure 3.24. Configuring the HTTP proxy for database updates


    HTTP proxy: The zavupdate application can download database updates via FTP or HTTP. Enter the URL of the HTTP proxy to be used (or NONE if the updates can be downloaded directly without using a proxy server).

  • Specifying the administrator's e-mail address

    Figure 3.25. Specifying the administrator's e-mail address


    Send update logs in e-mail: zavupdate can send the update logs to the administrator via e-mail. Enter the address of the administrator and the subject to be used in these e-mails. Enter NONE if no e-mail notification should be sent.

  • Specifying a prefix for the administrator's e-mail messages

    Figure 3.26. Specifying a prefix for the administrator's e-mail messages


    Specifying e-mail prefix: zavupdate can add a prefix to the subject of the e-mails it sends to make sorting the messages easier for the administrator. Enter a prefix (for example the name of the host in square brackets), or leave these fields blank.

  • Configuring the verbosity of zavupdate - options

    Figure 3.27. Configuring the verbosity of zavupdate - options


    Configuring the verbosity of zavupdate - selection

    Figure 3.28. Configuring the verbosity of zavupdate - selection


    Verbosity level of zavupdate: Select the level of verbosity of zavupdate. The available options are: No logging, Errors only, Normal logging, Verbose logging, and Everything. Each level includes the logs of the levels above, that is, Verbose logging will include all errors and successful update messages as well.

3.4.4. Configuring the NOD32 virus filtering modules

The section below describes the configuration options of the NOD32 virus filtering module.

[Note] Note

This module is installed only if it was selected in Section 3.4.1, Installing Zorp modules.

Providing username and password for the NOD32 module

Figure 3.29. Providing username and password for the NOD32 module


Provide the username and password received from your distributor. If not available at the time of installation, it can be entered later by issuing the dpkg-reconfigure libesets command, or by manually editing the /etc/nod32/nod32.auth file.

Deleting the virus database

Figure 3.30. Deleting the virus database


Select Yes if you want to delete the virus database if you remove the NOD32 package.

The databases of the NOD32 module can be instantly updated from the official NOD32 webserver if the machine being installed has network access. Otherwise, an update can be manually initiated by issuing the zavupdate command.

3.4.5. Configuring ZMS monitoring

Configure the e-mail notification sending of the Zorp Management Server monitoring subsystem. Provide the e-mail address of the administrator who will receive the notifications.

3.4.6. Configuring Openswan (EXPERT ONLY)

Openswan is an IPSec implementation used in Zorp for building VPN connections.

3.4.6.1. Starting Openswan

Expert mode: Select when should Openswan be started. The following options are available:

  • Earliest: This is the default, and recommended if nothing restricts its use.

  • After NFS: This option should be used if /usr is mounted via NFS, but no PCMCIA network card is used in the system.

    [Warning] Warning

    The NFS mount of /usr cannot be protected by IPSec in this case.

  • After PCMCIA: If a PCMCIA network card is used for IPSec connections, or the keys will be fetched from a locally running DNS server with DNSSec support, Openswan has to be started after PCMCIA.

Openswan should be restarted in order to activate a security fix.

During normal installation, Openswan is configured to start at the earliest possible time and is automatically restarted to activate the security fix.

3.4.6.2. Opportunistic encryption

Enabling Opportunistic encryption

Figure 3.31. Enabling Opportunistic encryption


Select if Opportunistic encryption should be enabled. Opportunistic encryption stores IPSec authentication information (that is, RSA keys) in secure DNS records. However, since this is not yet widely used, it may introduce significant slowdown for new outgoing connections and may break existing connections when pluto, the Openswan keying daemon is started.

3.4.6.3. Creating keys and certificates for Openswan

Creating RSA keypair for the host
Creating RSA keys

Figure 3.32. Creating RSA keys


Openswan can create an RSA public/private keypair for the host. This keypair can be used to authenticate secure IPSec connections. Another, but significantly less secure solution is to use passwords.

3.4.7. Settings of ZMS

The section below describes the configuration options of Zorp Management Server.

3.4.7.1. The ZMS database

Deleting the database

ZMS stores the configurations of the managed hosts in a database. This database can be automatically deleted (Yes option) when purging ZMS.

E-mail notifications of ZMS monitoring
E-mail notifications of ZMS monitoring

Figure 3.33. E-mail notifications of ZMS monitoring


ZMS can monitor the hosts it manages. In case of an error, the administrators can be notified. Provide a default e-mail address for such notifications.

3.4.7.2. Naming the Site

Selecting corporate name

Figure 3.34. Selecting corporate name


The hosts managed by ZMS are organized into sites. When installing ZMS, the name of the site that the ZMS host will belong to has to be defined. Use a descriptive for the site, for example the name of the organization.

3.4.7.3. Name of the ZMS host

Specifying the ZMS engine supervising the Zorp host

Figure 3.35. Specifying the ZMS engine supervising the Zorp host


The name of the host the ZMS will be installed on. It is recommended to use the normal name of the host, but do not use FQDN here. This name is stored in the ZMS database and is complicated to modify later.

3.4.7.4. Key management

ZMS includes PKI management as well to ensure that each element of the firewall system (ZMS module, VPNs, users) can be authenticated with X.509 keys. During this stage of the installation the root CA is created and configured. To achieve this the install program requests the following parameters:

Creating the root Certificate Authority

Figure 3.36. Creating the root Certificate Authority


  • Country ID (two characters only, for example US, HU, DE)

  • State (for example Nevada), optional field, US only

  • City (for example Las Vegas), optional field

  • Corporate name (for example BalaBit Ltd.), optional field

  • Organization unit name (for example HQ), optional field

Answer the questions without accents according the X400/X500 standard.

3.4.7.5. ZMS monitoring database setup

Setting up monitoring database

Figure 3.37. Setting up monitoring database


ZMS monitoring can store the data in a PostgreSQL database. This database can be created either manually or automatically. Answer No also if ZMS monitoring should not store the data.

The database used can be either local or remote. The database server has to allow MD5 encrypted password authentication and ident authentication using Unix sockets. The database installed by Zorp is automatically configured that way; when using a custom server, this has to be performed manually.

When setting up the local database, Zorp installer will automatically create a database and set a password for the ZMS database user.

Setting up local database

Figure 3.38. Setting up local database


Enter a password for the monitoring database

Figure 3.39. Enter a password for the monitoring database


3.4.7.6. Configuring the ZMS engine

In this section the ZMS engine will be configured. Various passwords and the parameters of the local Certificate Authority will be set.

Administrative password of ZMS
Specifying the initial administrative password of ZMS

Figure 3.40. Specifying the initial administrative password of ZMS


The ZMS administrator password is used to login to ZMS from the Zorp Management Console as an administrator. The username of the administrator by default is admin, which can be modified later. Assign a password which conforms to the secure password generation standards of your organization. The password can be changed any time later.

Setting up the Certificate Authority of ZMS
Specifying the CA password of ZMS

Figure 3.41. Specifying the CA password of ZMS


In this stage a secure password for the formerly initialized CA of ZMS has to be set. Assign a password which conforms to the secure password generation standards of your organization. It is possible, though difficult to change the CA password later.

The system date of the computer will be displayed. Check the date carefully and verify that it is correct.

Verifying system date

Figure 3.42. Verifying system date


[Warning] Warning

If the system date is incorrect, it is possible that the validity of the certificates used by ZMS to communicate with the Zorp hosts cannot be verified and the system will not operate correctly.

3.4.7.7. Setting up a ZAS server

Installing Zorp Authentication System requires only the necessary license files and the installation of the Zorp Authentication component, otherwise it is similar to installing a regular Zorp host.

3.4.7.8. Setting up VirusBuster

Updating VirusBuster's database

Figure 3.43. Updating VirusBuster's database


To update VirusBuster's database, select Yes.

3.4.8. Installing the electronic license keys

Installing the license keys

Figure 3.44. Installing the license keys


License keys can be downloaded from the BalaBit website using a MyBalaBit account. The installer can copy them from a 3.5" floppy disk, an USB drive, or it can download them from a webserver using HTTP if network connection for the machine is available during the installation. Beside the license file(s), no online activation or similar is required.

3.4.8.1. Installing the license keys from USB or floppy

Attach the USB drive to an USB port of the host, or insert the floppy containing the license file into the 3.5'' drive of the computer. Choose the USB or Floppy drive option. If not detected automatically, select the drive containing the license, or select the Re-scan devices option.

[Note] Note

When accessing the licenses, the directory structure is important: for each Zorp component licensed there is a separate subdirectory named after the component (for example, Zorp, ZMS, ZAS) containing a license file named license.txt. Make sure that all file and directory names are in lowercase. When downloading the licenses from an internal Webserver, the same directory structure must be reproduced on the server. These directories need not be placed in the root folder of the Webserver, a virtual directory is also suitable.

The license files of 3rd-party engines are not necessary called license.txt

[Warning] Warning

The directory structure of the webserver, floppy, or USB drive must be identical to the one of the Zorp License Media you received from BalaBit or your local distributor.

If you fail to install the new licenses during the upgrade, you must copy the license files to the host manually to the following locations:

  • Zorp Management Server (ZMS): /etc/zms/license.txt

  • Zorp Application Level Firewall (Zorp): /etc/zorp/license.txt

  • Zorp Authentication Server (ZAS): /etc/zas/license.txt

  • Zorp Content Vectoring Server (ZCV): /etc/zcv/license.txt

  • NOD32 Antivirus engine: /etc/nod32/license/

Zorp and its components will not operate without the new license files.

3.4.8.2. Installing the license keys from the network

Installing license keys from the network

Figure 3.45. Installing license keys from the network


If the computer does not contain a 3.5" floppy drive, or the installation program does not recognize it for some reason, it is possible to install the licenses via HTTP from your local webserver. BalaBit does not provide online access to license keys. Choose the HTTP option and enter the URL where the license is accessible. The URL may use the domain name or IP address of the server. If the installation of the licenses fails for any reason, they may also be installed manually at a later date.

[Note] Note

When accessing the licenses, the directory structure is important: for each Zorp component licensed there is a separate subdirectory named after the component (for example, Zorp, ZMS, ZAS) containing a license file named license.txt. Make sure that all file and directory names are in lowercase. When downloading the licenses from an internal Webserver, the same directory structure must be reproduced on the server. These directories need not be placed in the root folder of the Webserver, a virtual directory is also suitable.

The license files of 3rd-party engines are not necessary called license.txt

In case of an HTTP option, select Yes if you want to use a proxy server to download the licenses from an HTTP server. Then specify the HTTP proxy in the next window. If you do not want to use a proxy server, leave the field blank or enter NONE.

3.4.8.3. Setting up host roles

The iptables utility included in ZorpOS is configured by default to deny any traffic going through or to the machine. During the installation process the role of the host has to be defined: iptables will be configured according to the role of the host. This selection has effect only during the first installation of the host, it will not modify an existing iptables configuration. The following roles are available:

Selecting the role of the host

Figure 3.46. Selecting the role of the host


  • FIREWALL: ZMS agent and remote shell (SSH) communication will be enabled. This technically means ports TCP/1311 and TCP/22.

  • ZMSHOST: ZMC to engine communication and remote shell communication will be allowed on ports TCP/1314 and TCP/22, respectively.

  • NONE: All IP traffic will be dropped by default, therefore all remote administration attempts will fail. All allowed traffic has to be enabled manually from a local terminal.

If installing the Zorp firewall suite and ZMS on the same host, choose ZMSHOST as the host role.

Depending on the selected host role, the following IP addresses also have to be provided:

  • FIREWALL: The IP address of the ZMS host used to manage the firewall.

  • Specifying the IP addresses of the machines running ZMC

    Figure 3.47. Specifying the IP addresses of the machines running ZMC


    ZMSHOST: The IP address(es) of the ZMC console(s) used to manage the ZMS host (that is, the machines from where the firewall administrators will connect to Zorp or ZMS). If managing ZMS is allowed from multiple ZMCs, list the IP addresses separated by spaces.

[Warning] Warning

The IP adresses of the ZMS/ZMC hosts must be typed correctly, otherwise the machine will not be accessible from ZMS/ZMC. In this case, the configuration of iptables must be corrected manually. See man iptables-utils for details.

3.4.8.4. Installing Zorp packages

After the configuration procedure is finished, the Zorp packages will be installed according to the data obtained during the configuration.

The configuration of the system can be repeated at a later date by running tasksel --new-install from a command prompt. If only a single package has to be corrected, it is recommended to use the dpkg-reconfigure packagename command (for example dpkg-reconfigure openswan).

3.4.8.5. Installing a boot loader

Installing GRUB

Figure 3.48. Installing GRUB


Install a boot loader to the selected partition of the hard drive. By default, the GRUB boot loader is installed to the machine.

[Tip] Tip

Usually the easiest and most convenient solution is to install the boot loader to the master boot record of the primary hard drive.

Expert mode: Enter a password for the boot loader if you wish.

[Warning] Warning

Password-protecting the boot loader means that the password must be entered locally after every reboot. This means that the host will not boot (thus it will not function) until the password is entered, therefore it is not recommended on firewall host.

3.4.8.6. Rebooting the system

After the installation is finished, the computer is rebooted.

Finishing the installation

Figure 3.49. Finishing the installation


If the installation was finished successfully and you have installed the licenses via HTTP, do not forget to delete the electronic license(s) from the web server to prevent unauthorized downloads.

Rebooting the machine

Figure 3.50. Rebooting the machine


3.5. Installing packages manually

The installation instructions above followed a typical installation cycle. It is a largely automatic process requiring as few user interaction as possible but at the same time allowing the control of installation details. In some cases, however, it may be necessary to manually install components of the system individually by using the standard Debian apt tools.

In particular, apt-get install can be used to install the following components.

  • zmc (the Linux version of Zorp Management Console)

  • zms-engine (the ZMS itself)

  • both types of agents: zms-transfer-agent and zms-monitor-agent

3.5.1. Installing system components with apt-get install

Install the dynamically linked version of the zms-transfer-agent.

apt-get install zms-transfer-agent-dynamic

Install the dynamically linked version of the zms-monitor-agent .

apt-get install zms-monitor-agent-dynamic

Install the zms-engine.

apt-get install zms-engine

Install the zmc graphical administration tool to a client. zmc cannot be installed on a Zorp host.

apt-get install zmc

[Note] Note

Note that zmc requires the X environment.

Other components can be installed similarly.

3.6. Upgrading Zorp

All the components of Zorp can be upgraded using the standard apt tools. When used on Debian GNU/Ubuntu Linux systems, the Zorp Management Console (ZMC) and Zorp Authentication Agent (Satyr) client-side applications can be upgraded using apt as well. On Microsoft Windows and other Linux platforms, upgrades to these applications must be downloaded manually from The BalaBit website.

To perform an upgrade follow the procedure below.

3.6.1. Upgrading with apt tools

3.6.1.1. Procedure – Upgrading Zorp hosts using apt

  1. Login to the host locally, or remotely using SSH.

  2. Before the first upgrade, complete the following steps:

    1. Execute the apt-setup command.

    2. Select Edit the configuration by hand

    3. To download always the latest Zorp release and security fixes, replace the contents of the file with the following (replace the USERNAME:PASSWORD part with your actual username and password):

      deb https://USERNAME:PASSWORD@apt.balabit.com/zorp-os zorp-os-4.0/zorp-3.4latest main
      deb https://USERNAME:PASSWORD@apt.balabit.com/zorp-os zorp-os-4.0/zorp-3.4latest zorp zas zcv zms

      The first source is for the upgrades of the ZorpOS operating system; the second is for normal product upgrades; while the third source contains security updates of the ZorpOS operating system. For more information refer to the Zorp Upgrade Page.

      [Tip] Tip

      If for some reason you do not want to upgrade your Zorp components to the latest version (for example, your organization requires extensive testing before every upgrade), it is possible to use a selected Zorp release, and download only the security fixes of the ZorpOS packages. To accomplish this, replace 3.4 LTSlatest in the second source with the version number of your selected release. For example for the Zorp 3.4R1 release write 3.4R1:

      deb https://USERNAME:PASSWORD@apt.balabit.com/zorp-os zorp-os-4.0/zorp-3.4R1 main
      deb https://USERNAME:PASSWORD@apt.balabit.com/zorp-os zorp-os-4.0/zorp-3.4R1 zorp zas zcv zms
  3. Issue the following commands: apt-get update; apt-get -u dist-upgrade. The host will download and install the new and updated packages.

[Note] Note

The username and password required to perform the upgrade are provided for you by BalaBit upon registering your copy of Zorp. You can register either online at BalaBit website or by phone.

If you are using your MyBalaBit account to access the apt repository, the USERNAME is your e-mail address. In this case, replace the @ character in the username with the -at- string, for example if your e-mail address is smith@example.com, use it as follows:

deb https://smith-at-example.com:PASSWORD@apt.balabit.com ...

3.7. Installing the Zorp Management Console

After successfully installing the server–side components, the management console on the client needs to be installed. The Zorp Management Console (ZMC) is available for Windows and Linux platforms. The Windows version comes as a single .exe install file, while there is a generic installer for Linux (a .run package). Both versions are available on the Zorp Installation DVD, and can also be downloaded from the BalaBit website. Updates for ZMC are also available on the BalaBit website.

The Windows and Linux versions are identical in look and feel, they are both built with the GTK Toolkit, so it is only a matter of preference which platform you choose.

There are no license restrictions on the number of ZMC consoles you can install, so multiple management locations are possible.

[Note] Note

It is important to remember that the ZMC machine must always connect to the ZMS host and not the Zorp Firewall itself, so it is the ZMS host that must be reachable. The ZMS host, in turn, must be able to communicate with the management agents installed on the Zorp machine.

3.7.1. Installing ZMC on Debian/GNU Linux

[Note] Note

Before you start installing ZMC, the X graphical tool must already be configured and running on the machine on which you install ZMC.

Start the installer for your platform:

  • zmc-<version_number>-linux-i386.run for 32-bit systems

  • zmc-<version_number>-linux-amd64.run for 64-bit systems

To install ZMC from the command line, navigate to the directory where the installation package is located, and issue the ./zmc-<version_number>-linux-i386.run command.

The installer allows you to set the installation path, and optionally to install the Zorp Administrator's Guide and the Zorp Reference Guide.

After the installation if finished, you can start ZMC from the Network or Internet menu of your desktop environment, or from the console by executing the following command: ./<installation-directory>/bin/zmc.

3.7.2. Installing ZMC on Microsoft Windows 2000/XP

Zorp Management Console installation starts simply by running zmc-setup-<version-number>.exe. Make sure you have Administrator privileges or the necessary rights to perform the installation.

After the setup wizard welcomes you, it is required to agree the End-User License Agreement (EULA). Please read it carefully before accepting it.

The following step is to define the installation path. By default the setup wizard offers "C:\Program Files\Zmc" but this can be modified.

During and after the installation process, you can monitor the files and drivers the setup wizard installed.

When the installation process is finished, Zorp Management Console can be started from Windows Start menu. The Windows version of ZMC automatically installs the HTML version of the Zorp Administrator's Guide and Zorp Reference Guide.

3.7.2.1. Upgrading the Windows version of ZMC

To download the latest Windows version of ZMC, log on to BalaBit's website.

Use the same username/password pair that is used with apt.

ZMC can be downloaded from https://www.balabit.com/network-security/zorp-gateway/download.

[Note] Note

Version numbers can differ according to the product development cycle.

3.8. Installing the Zorp Authentication Agent (Satyr)

The Zorp Authentication Agent is a desktop authentication client for Zorp Authentication System (ZAS). It runs on the client desktop and mediates between the firewall and the user. It is available for both Microsoft Windows and Linux platforms at the BalaBit website.

[Note] Note

For details on installing and configuring the Zorp Authentication Agent, see the Satyr Manual available at the BalaBit Documentation Page.

3.8.1. Installing Satyr on Debian/GNU Linux

During the installation of the Satyr Client 3.4 LTS the pre-configured Debian system will be amended with certain packages and their dependencies. If the dependencies are already installed or an online Debian repository is accessible the Satyr Client can be installed from the Zorp Install DVD as well.

Insert the Zorp Installation DVD into the DVD drive and mount it. In the root of the Install DVD you find an install.sh script, which can be used to install Satyr on the host. Do not use apt-cdrom to setup the sources.list as it will mix up the apt database.

Finally you need to install the necessary CA certificates into your /etc/satyr/ca/ directory. The Satyr client and the Satyr multiplexer will start automatically.

Satyr is available for Debian etch and Ubuntu 8.04 from the following repositories:

Make sure the following lines are in your /etc/apt/sources.list file:

deb https://USERNAME:PASSWORD@apt.balabit.com/zorp-os debian-etch/zorp-3.4 LTSlatest satyr
deb https://USERNAME:PASSWORD@apt.balabit.com/zorp-os ubuntu-hardy/zorp-3.4 LTSlatest satyr

3.8.2. Installing Satyr on Microsoft Windows 2000/XP

Installation of Satyr client can be started by running satyr-setup-3.4 LTS.X.exe. The installation requires administrator privileges.

After Satyr Client setup wizard welcomes you, it is required to accept End-User License Agreement (EULA). Please read it carefully before accepting it.

The following step is to define the installation path. By default the setup wizard offers "C:\Program Files\Satyr Client", but this can be modified as needed. The Satyr client requires about 4MB of free disk space.

During and after the installation progress, you can monitor the files and drivers that the setup wizard installs.

When the installation process is finished, the Satyr client and the Satyr multiplexer will start automatically.

Finally you need to install the CA Certificate which was used to sign the firewall's certificate. You need to export the certificate in Definite Encoding Rules (DER) format from ZMS (using the Zorp Management Console) and install it under Satyr using addcert.exe, which is distributed with the Satyr Client. Please refer to the PKI chapter of the Zorp Administration Guide for further details.

3.9. Manual partitioning

Manual partitioning

Figure 3.51. Manual partitioning


Manual partitioning enables the full customization of the hard disk(s) used in the computer. The following options are available on the main screen:

  • Configure software RAID: Software RAID can be configured here after all the required partitions have been created. RAID configuration is discussed later in Section 3.9.3, Configuring software RAID.

  • Guided partitioning: Use this option to revert to automatic partitioning.

  • Help on partitioning: Displays a brief help on partitioning. This text is also summarized below.

  • List of detected hard disks and partitions

  • Undo changes to partitions: This option erases all modifications done to the partition tables of the hard disk(s) and restores the original state.

    [Note] Note

    Obviously, changes already written to the disk cannot be undone.

  • Finish partitioning and write changes to disk: Select this option after configured the partitions to suit your needs. The actual partitioning will be performed only when selecting this option. A confirmation will also be requested before the changes are performed.

    [Warning] Warning

    Select this option only when you have verified that the hard disk does not contain any important information. Modifying the partition table irrevocably erases all data on the system.

The hard disk to be partitioned can be selected from the list displaying the available hard disks and their existing partitions (if any), and the available free space on each drive.

By selecting a device, it is possible to create a new, empty partition table on it (this action removes all existing partitions from the drive). This is an essential step when a new hard disk is used for the first time. After the partition table is created, the capacity of the hard drive becomes available for partitioning as free space. The available free space is indicated in a separate line.

3.9.1. Creating a partition

To create a new partition, select the line indicating the free space of the hard disk and hit Enter, and select the Create a new partition option.

Creating a new partition

Figure 3.52. Creating a new partition


The following parameters of the partition have to be specified:

  • Specifying the size of the partition

    Figure 3.53. Specifying the size of the partition


    Size: The size of the partition. It can be specified in Gigabytes, or as a percentage value (that is, 20% will create a partition using 20% of the available free space).

  • Specifying the type of the partition

    Figure 3.54. Specifying the type of the partition


    Type of the partition: Select if the partition should be a primary or a logical partition.

  • Location of the partition: When the partition created is smaller than the available free space, it can be placed either at the beginning or at the end of the available free space.

The exact use of the partition can be configured on the next screen.

Configuring a partition

Figure 3.55. Configuring a partition


  • Selecting the filesystem of the partition

    Figure 3.56. Selecting the filesystem of the partition


    Use as: The filesystem used on the partition. Zorp supports the use of the following filesystems: EXT3 (default), EXT2, ReiserFS (version 3), XFS, FAT16, FAT32. The partition can also be used as swap area, or as a physical volume for RAID. It is also possible to retain the partition for later use by selecting the Do not use the partition option.

  • Mount point: The mount point of the partition can be selected from a list or entered manually.

  • Mount options: Mount options common to Linux can be specified here, for example mounting the partition as read-only.

  • Label: Volume label of the partition. The default name is the mount point.

  • Bootable flag: Turn it on if it should be possible to boot from the partition. At least one bootable partition (the root partition with the mount point /) is required for the machine to be usable.

  • Size: The size of the partition can be modified here.

  • Done setting up the partition: Finish configuring the partition and return to the main partitioning screen.

  • Copy data from another partition: Copy the data stored on an enxisting partition to this partition.

    [Warning] Warning

    This option writes the changes to the disk.

  • Delete the partition: Remove the partition from the disk. The disk space used by the partition becomes available as free space for further partitioning.

After you have finished the configuration select Finish partitioning and write changes to disk from the main partitioning screen.

[Warning] Warning

Important! Without the root and the swap partitions the system cannot work, thus creating them is compulsory. The root partition must also physically contain /etc, /bin, /sbin, /lib and /dev, otherwise it will not be possible to boot from the device.

There is no required partitioning schema for ZorpOS: the number and size of partitions depend on the future role of the machine.

[Tip] Tip

If the machine is intended to be a Zorp firewall with the native Postfix service configured and used for mail delivery, it is recommended to create a large /var partition. This is also beneficial if local virus filtering will be performed or system log files will be stored locally.

3.9.2. Modifying partitions

To modify an existing partition, select it from the main partitioning screen. A menu identical to the one discussed in Section 3.9.1, Creating a partition will appear, allowing you to modify the different parameters of the partition.

3.9.3. Configuring software RAID

RAID (Redundant Array of Independent Disks) is a solution of combining multiple hard disks in order to achieve fault tolerance and/or high performance. ZorpOS supports three versions of RAID, RAID 0 (data striping), RAID 1 (mirroring), and RAID 5 (distributed data storage with distributed parity). RAID 0 and 1 require at least two hard disks, while RAID 5 needs at leasts three.

[Note] Note

Software RAID can be very CPU intensive and might reduce the general performance of the system.

Appendix 1. Further readings

Following is a list of recommended readings concerning various parts of Zorp administration. Both online and printed references are given. In the case of printed materials we only give the details of the English titles; some of these titles may have been translated to other languages or other titles, not listed here, may also have been published as originals in other languages while not having an English translation.

The online references give URLs that have ben valid at the time of writing. URLs usually change over time; in forthcoming editions of this Guide updates to the published URL list will be performed, however, we cannot guarantee that you will find online documents at the referenced URLs at any given time.

1.1. Zorp related material

1.3. Postfix documentation

  • Official Postfix site

  • Postfix: The Definitive Guide by Kyle D. Dent. O'Reilly Associates ISBN: 0596002122

  • PostFix by Richard Blum. SAMS Publishing ISBN: 0672321149

1.4. BIND Documentation

  • BIND9 Online Manual

  • DNS and BIND by Paul Albitz, Cricket Liu. O'Reilly Associates ISBN: 0596001584

1.5. NTP references

1.6. SSH resources

1.7. TCP/IP Networking

  • TCP/IP Illustrated: Volumes 1-3 by W. Stevens, Gary Wright. Addison-Wesley, ISBN: 0201776316

  • Linux TCP/IP Network Administration by Scott Mann. Prentice Hall, ISBN: 0130322202

1.8. Netfilter/IPTables

1.9. General security related resources

  • Practical UNIX and Internet Security, 3/E by Simson Garfinkel, Gene Spafford, Alan Schwartz . O'Reilly Associates, ISBN: 0596003234

1.10. syslog-ng references

1.11. Python references

1.12. Public key infrastructure (PKI)

1.13. Virtual Private Networks (VPN)

  • Openswan: Building and Integrating Virtual Private Networks, Paul Wouters and Ken Bantoft, ISBN 1904811256, Packt Publishing

  • OpenVPN: Building and Integrating Virtual Private Networks, Markus Feilner, ISBN 190481185X, Packt Publishing

Appendix 2. Zorp Application Level Gateway End-User License Agreement

(c) BalaBit IT Security Ltd.

2.1. 1. SUBJECT OF THE LICENSE CONTRACT

1.1 This License Contract is entered into by and between BalaBit and Licensee and sets out the terms and conditions under which Licensee and/or Licensee's Authorized Subsidiaries may use the Zorp Application Level Gateway under this License Contract.

2.2. 2. DEFINITIONS

In this License Contract, the following words shall have the following meanings:

2.1 BalaBit

Company name:BalaBit IT Security Ltd.

Registered office: H-1115 Budapest, Bártfai Str. 54.

Company registration number:01-09-687127

Tax number:HU11996468-2-43

2.2. Words and expressions

Annexed Software

Any third party software that is a not a BalaBit Product contained in the install media of the BalaBit Product.

Authorized Subsidiary

Any subsidiary organization: (i) in which Licensee possesses more than fifty percent (50%) of the voting power and (ii) which is located within the Territory.

BalaBit Product

Any software, hardware or service licensed, sold, or provided by BalaBit including any installation, education, support and warranty services, with the exception of the Annexed Software.

License Contract

The present Zorp Application Level Gateway License Contract.

Product Documentation

Any documentation referring to the Zorp Application Level Gateway or any module thereof, with special regard to the reference guide, the administration guide, the product description, the installation guide, user guides and manuals.

Protected Hosts

Host computers located in the zones protected by Zorp Application Level Gateway, that means any computer bounded to network and capable to establish IP connections through the firewall.

Protected Objects

The entire Zorp Application Level Gateway including all of its modules, all the related Product Documentation; the source code, the structure of the databases, all registered information reflecting the structure of the Zorp Application Level Gateway and all the adaptation and copies of the Protected Objects that presently exist or that are to be developed in the future, or any product falling under the copyright of BalaBit.

Zorp Application Level Gateway

Application software BalaBit Product designed for securing computer networks as defined by the Product Description.

Warranty Period

The period of twelve (12) months from the date of delivery of the Zorp Application Level Gateway to Licensee.

Territory

The countries or areas specified above in respect of which Licensee shall be entitled to install and/or use Zorp Application Level Gateway.

Take Over Protocol

The document signed by the parties which contains

a) identification data of Licensee;

b) ordered options of Zorp Application Level Gateway, number of Protected Hosts and designation of licensed modules thereof;

c) designation of the Territory;

d) declaration of the parties on accepting the terms and conditions of this License Contract; and

e) declaration of Licensee that is in receipt of the install media.

2.3. 3. LICENSE GRANTS AND RESTRICTIONS

3.1. For the Zorp Application Level Gateway licensed under this License Contract, BalaBit grants to Licensee a non-exclusive,

non-transferable, perpetual license to use such BalaBit Product under the terms and conditions of this License Contract and the applicable Take Over Protocol.

3.2. Licensee shall use the Zorp Application Level Gateway in the in the configuration and in the quantities specified in the Take Over Protocol within the Territory.

3.3. On the install media all modules of the Zorp Application Level Gateway will be presented, however, Licensee shall not be entitled to use any module which was not licensed to it. Access rights to modules and IP connections are controlled by an "electronic key" accompanying the Zorp Application Level Gateway.

3.4. Licensee shall be entitled to make one back-up copy of the install media containing the Zorp Application Level Gateway.

3.5. Licensee shall make available the Protected Objects at its disposal solely to its own employees and those of the Authorized Subsidiaries.

3.6. Licensee shall take all reasonable steps to protect BalaBit's rights with respect to the Protected Objects with special regard and care to protecting it from any unauthorized access.

3.7. Licensee shall, in 5 working days, properly answer the queries of BalaBit referring to the actual usage conditions of the Zorp

Professional Firewall System, that may differ or allegedly differs from the license conditions.

3.8. Licensee shall not modify the Zorp Application Level Gateway in any way, with special regard to the functions inspecting the usage of the software. Licensee shall install the code permitting the usage of the Zorp Application Level Gateway according to the provisions defined for it by BalaBit. Licensee may not modify or cancel such codes. Configuration settings of the Zorp Application Level Gateway in accordance with the possibilities offered by the system shall not be construed as modification of the software.

3.9. Licensee shall only be entitled to analize the structure of the BalaBit Products (decompilation or reverse- engineering) if concurrent operation with a software developed by a third party is necessary, and upon request to supply the information required for concurrent operation BalaBit does not provide such information within 60 days from the receipt of such a request. These user actions are limited to parts of the BalaBit Product which are necessary for concurrent operation.

3.10. Any information obtained as a result of applying the previous Section

(i) cannot be used for purposes other than concurrent operation with the BalaBit Product;

(ii) cannot be disclosed to third parties unless it is necessary for concurrent operation with the BalaBit Product;

(iii) cannot be used for the development, production or distribution of a different software which is similar to the Balabit Product

in its form of expression, or for any other act violating copyright.

3.11. For any Annexed Software contained by the same install media as the BalaBit Product, the terms and conditions defined by its copyright owner shall be properly applied. BalaBit does not grant any license rights to any Annexed Software.

3.12. Any usage of the Zorp Application Level Gateway exceeding the limits and restrictions defined in this License Contract shall qualify as material breach of the License Contract.

3.13. The Number of Protected Hosts shall not exceed the amount defined in the Take Over Protocol.

3.14. Licensee shall have the right to obtain and use content updates only if Licensee concludes a maintenance contract that includes such content updates, or if Licensee has otherwise separately acquired the right to obtain and use such content updates. This License Contract does not otherwise permit Licensee to obtain and use content updates.

2.4.  4. SUBSIDIARIES

4.1 Authorized Subsidiaries may also utilize the services of the Zorp Application Level Gateway under the terms and conditions of this License Contract. Any Authorized Subsidiary utilising any service of the Zorp Application Level Gateway will be deemed to have accepted the terms and conditions of this License Contract.

2.5.  5. INTELLECTUAL PROPERTY RIGHTS

5.1. Licensee agrees that BalaBit owns all rights, titles, and interests related to the Zorp Application Level Gateway and all of BalaBit's patents, trademarks, trade names, inventions, copyrights, know-how, and trade secrets relating to the design, manufacture, operation or service of the BalaBit Products.

5.2. The use by Licensee of any of these intellectual property rights is authorized only for the purposes set forth herein, and upon termination of this License Contract for any reason, such authorization shall cease.

5.3. The BalaBit Products are licensed only for internal business purposes in every case, under the condition that such license does not convey any license, expressly or by implication, to manufacture, duplicate or otherwise copy or reproduce any of the BalaBit Products.

No other rights than expressly stated herein are granted to Licensee.

5.4. Licensee will take appropriate steps with its Authorized Subsidiaries, as BalaBit may request, to inform them of and assure compliance with the restrictions contained in the License Contract.

2.6.  6. TRADE MARKS

6.1. BalaBit hereby grants to Licensee the non-exclusive right to use the trade marks of the BalaBit Products in the Territory in accordance with the terms and for the duration of this License Contract.

6.2. BalaBit makes no representation or warranty as to the validity or enforceability of the trade marks, nor as to whether these infringe any intellectual property rights of third parties in the Territory.

2.7. 7. NEGLIGENT INFRINGEMENT

7.1. In case of negligent infringement of BalaBit's rights with respect to the Zorp Application Level Gateway, committed by violating the restrictions and limitations defined by this License Contract, Licensee shall pay liquidated damages to BalaBit. The amount of the liquidated damages shall be twice as much as the price of the BalaBit Product concerned, on BalaBit's current Price List.

2.8. 8. INTELLECTUAL PROPERTY INDEMNIFICATION

8.1. BalaBit shall pay all damages, costs and reasonable attorney's fees awarded against Licensee in connection with any claim brought against Licensee to the extent that such claim is based on a claim that Licensee's authorized use of the BalaBit Product infringes a patent, copyright, trademark or trade secret. Licensee shall notify BalaBit in writing of any such claim as soon as Licensee learns of it and shall cooperate fully with BalaBit in connection with the defense of that claim. BalaBit shall have sole control of that defense (including without limitation the right to settle the claim).

8.2. If Licensee is prohibited from using any BalaBit Product due to an infringement claim, or if BalaBit believes that any BalaBit Product is likely to become the subject of an infringement claim, BalaBit shall at its sole option, either: (i) obtain the right for Licensee to continue to use such BalaBit Product, (ii) replace or modify the BalaBit Product so as to make such BalaBit Product non-infringing and substantially comparable in functionality or (iii) refund to Licensee the amount paid for such infringing BalaBit Product and provide a pro-rated refund of any unused, prepaid maintenance fees paid by Licensee, in exchange for Licensee's return of such BalaBit Product to BalaBit.

8.3. Notwithstanding the above, BalaBit will have no liability for any infringement claim to the extent that it is based upon:

(i) modification of the BalaBit Product other than by BalaBit,

(ii) use of the BalaBit Product in combination with any product not specifically authorized by BalaBit to be combined with the BalaBit Product or

(iii) use of the BalaBit Product in an unauthorized manner for which it was not designed.

2.9. 9. LICENSE FEE

9.1. The number of the Protected Hosts (including the server as one host), the configuration and the modules licensed shall serve as the calculation base of the license fee.

9.2. Licensee acknowlegdes that payment of the license fees is a condition of lawful usage.

9.3. License fees do not contain any installation or post charges.

2.10. 10. WARRANTIES

10.1. BalaBit warrants that during the Warranty Period, the optical media upon which the BalaBit Product is recorded will not be defective under normal use. BalaBit will replace any defective media returned to it, accompanied by a dated proof of purchase, within the Warranty Period at no charge to Licensee. Upon receipt of the allegedly defective BalaBit Product, BalaBit will at its option, deliver a replacement BalaBit Product or BalaBit's current equivalent to Licensee at no additional cost. BalaBit will bear the delivery charges to Licensee for the replacement Product.

10.2. In case of installation by BalaBit, BalaBit warrants that during the Warranty Period, the Zorp Application Level Gateway, under normal use in the operating environment defined by BalaBit, and without unauthorized modification, will perform in substantial compliance with the Product Documentation accompanying the BalaBit Product, when used on that hardware for which it was installed, in compliance with the provisions of the user manuals and the recommendations of BalaBit. The date of the notification sent to BalaBit shall qualify as the date of the failure. Licensee shall do its best to mitigate the consequences of that failure. If, during the Warranty Period, the BalaBit Product fails to comply with this warranty, and such failure is reported by Licensee to BalaBit within the Warranty Period, BalaBit's sole obligation and liability for breach of this warranty is, at BalaBit's sole option, either:

(i) to correct such failure,

(ii) to replace the defective BalaBit Product or

(iii) to refund the license fees paid by Licensee for the applicable BalaBit Product.

2.11. 11. DISCLAIMER OF WARRANTIES

11.1. EXCEPT AS SET OUT IN THIS LICENSE CONTRACT, BALABIT MAKES NO WARRANTIES OF ANY KIND WITH RESPECT TO THE Zorp Application Level Gateway. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, BALABIT EXCLUDES ANY OTHER WARRANTIES, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES OF SATISFACTORY QUALITY, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS.

2.12. 12. LIMITATION OF LIABILITY

12.1. SOME STATES AND COUNTRIES, INCLUDING MEMBER COUNTRIES OF THE EUROPEAN UNION, DO NOT ALLOW THE LIMITATION OR EXCLUSION OF LIABILITY FOR INCIDENTAL OR CONSEQUENTIAL DAMAGES AND, THEREFORE, THE FOLLOWING LIMITATION OR EXCLUSION MAY NOT APPLY TO THIS LICENSE CONTRACT IN THOSE STATES AND COUNTRIES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW AND REGARDLESS OF WHETHER ANY REMEDY SET OUT IN THIS LICENSE CONTRACT FAILS OF ITS ESSENTIAL PURPOSE, IN NO EVENT SHALL BALABIT BE LIABLE TO LICENSEE FOR ANY SPECIAL, CONSEQUENTIAL, INDIRECT OR SIMILAR DAMAGES OR LOST PROFITS OR LOST DATA ARISING OUT OF THE USE OR INABILITY TO USE THE Zorp Application Level Gateway EVEN IF BALABIT HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

12.2. IN NO CASE SHALL BALABIT'S TOTAL LIABILITY UNDER THIS LICENSE CONTRACT EXCEED THE FEES PAID BY LICENSEE FOR THE Zorp Application Level Gateway LICENSED UNDER THIS LICENSE CONTRACT.

2.13. 13.DURATION AND TERMINATION

13.1. This License Contract shall come into effect on the date of signature of the Take Over Protocol by the duly authorized

representatives of the parties.

13.2. Licensee may terminate the License Contract at any time by written notice sent to BalaBit and by simultaneously destroying all copies of the Zorp Application Level Gateway licensed under this License Contract.

13.3. BalaBit may terminate this License Contract with immediate effect by written notice to Licensee, if Licensee is in material or persistent breach of the License Contract and either that breach is incapable of remedy or Licensee shall have failed to remedy that breach within 30 days after receiving written notice requiring it to remedy that breach.

2.14. 14. AMENDMENTS

14.1. Save as expressly provided in this License Contract, no amendment or variation of this License Contract shall be effective unless in writing and signed by a duly authorised representative of the parties to it.

2.15. 15. WAIVER

15.1. The failure of a party to exercise or enforce any right under this License Contract shall not be deemed to be a waiver of that right nor operate to bar the exercise or enforcement of it at any time or times thereafter.

2.16. 16. SEVERABILITY

16.1. If any part of this License Contract becomes invalid, illegal or unenforceable, the parties shall in such an event negotiate in good faith in order to agree on the terms of a mutually satisfactory provision to be substituted for the invalid, illegal or unenforceable

provision which as nearly as possible validly gives effect to their intentions as expressed in this License Contract.

2.17. 17. NOTICES

17.1. Any notice required to be given pursuant to this License Contract shall be in writing and shall be given by delivering the notice by hand, or by sending the same by prepaid first class post (airmail if to an address outside the country of posting) to the address of the relevant party set out in this License Contract or such other address as either party notifies to the other from time to time. Any notice given according to the above procedure shall be deemed to have been given at the time of delivery (if delivered by hand) and when received (if sent by post).

2.18. 18. MISCELLANEOUS

18.1. Headings are for convenience only and shall be ignored in interpreting this License Contract.

18.2. This License Contract and the rights granted in this License Contract may not be assigned, sublicensed or otherwise transferred in whole or in part by Licensee without BalaBit's prior written consent. This consent shall not be unreasonably withheld or delayed.

18.3. An independent third party auditor, reasonably acceptable to BalaBit and Licensee, may upon reasonable notice to Licensee and during normal business hours, but not more often than once each year, inspect Licensee's relevant records in order to confirm that usage of the Zorp Application Level Gateway complies with the terms and conditions of this License Contract. BalaBit shall bear the costs of such audit. All audits shall be subject to the reasonable safety and security policies and procedures of Licensee.

18.4. This License Contract constitutes the entire agreement between the parties with regard to the subject matter hereof. Any modification of this License Contract must be in writing and signed by both parties.

Appendix 3. Creative Commons Attribution Non-commercial No Derivatives (by-nc-nd) License

THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS.

  1. Definitions

    1. "Adaptation" means a work based upon the Work, or upon the Work and other pre-existing works, such as a translation, adaptation, derivative work, arrangement of music or other alterations of a literary or artistic work, or phonogram or performance and includes cinematographic adaptations or any other form in which the Work may be recast, transformed, or adapted including in any form recognizably derived from the original, except that a work that constitutes a Collection will not be considered an Adaptation for the purpose of this License. For the avoidance of doubt, where the Work is a musical work, performance or phonogram, the synchronization of the Work in timed-relation with a moving image ("synching") will be considered an Adaptation for the purpose of this License.

    2. "Collection" means a collection of literary or artistic works, such as encyclopedias and anthologies, or performances, phonograms or broadcasts, or other works or subject matter other than works listed in Section 1(f) below, which, by reason of the selection and arrangement of their contents, constitute intellectual creations, in which the Work is included in its entirety in unmodified form along with one or more other contributions, each constituting separate and independent works in themselves, which together are assembled into a collective whole. A work that constitutes a Collection will not be considered an Adaptation (as defined above) for the purposes of this License.

    3. "Distribute" means to make available to the public the original and copies of the Work through sale or other transfer of ownership.

    4. "Licensor" means the individual, individuals, entity or entities that offer(s) the Work under the terms of this License.

    5. "Original Author" means, in the case of a literary or artistic work, the individual, individuals, entity or entities who created the Work or if no individual or entity can be identified, the publisher; and in addition (i) in the case of a performance the actors, singers, musicians, dancers, and other persons who act, sing, deliver, declaim, play in, interpret or otherwise perform literary or artistic works or expressions of folklore; (ii) in the case of a phonogram the producer being the person or legal entity who first fixes the sounds of a performance or other sounds; and, (iii) in the case of broadcasts, the organization that transmits the broadcast.

    6. "Work" means the literary and/or artistic work offered under the terms of this License including without limitation any production in the literary, scientific and artistic domain, whatever may be the mode or form of its expression including digital form, such as a book, pamphlet and other writing; a lecture, address, sermon or other work of the same nature; a dramatic or dramatico-musical work; a choreographic work or entertainment in dumb show; a musical composition with or without words; a cinematographic work to which are assimilated works expressed by a process analogous to cinematography; a work of drawing, painting, architecture, sculpture, engraving or lithography; a photographic work to which are assimilated works expressed by a process analogous to photography; a work of applied art; an illustration, map, plan, sketch or three-dimensional work relative to geography, topography, architecture or science; a performance; a broadcast; a phonogram; a compilation of data to the extent it is protected as a copyrightable work; or a work performed by a variety or circus performer to the extent it is not otherwise considered a literary or artistic work.

    7. "You" means an individual or entity exercising rights under this License who has not previously violated the terms of this License with respect to the Work, or who has received express permission from the Licensor to exercise rights under this License despite a previous violation.

    8. "Publicly Perform" means to perform public recitations of the Work and to communicate to the public those public recitations, by any means or process, including by wire or wireless means or public digital performances; to make available to the public Works in such a way that members of the public may access these Works from a place and at a place individually chosen by them; to perform the Work to the public by any means or process and the communication to the public of the performances of the Work, including by public digital performance; to broadcast and rebroadcast the Work by any means including signs, sounds or images.

    9. "Reproduce" means to make copies of the Work by any means including without limitation by sound or visual recordings and the right of fixation and reproducing fixations of the Work, including storage of a protected performance or phonogram in digital form or other electronic medium.

  2. Fair Dealing Rights. Nothing in this License is intended to reduce, limit, or restrict any uses free from copyright or rights arising from limitations or exceptions that are provided for in connection with the copyright protection under copyright law or other applicable laws.

  3. License Grant. Subject to the terms and conditions of this License, Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below:

    1. to Reproduce the Work, to incorporate the Work into one or more Collections, and to Reproduce the Work as incorporated in the Collections; and,

    2. to Distribute and Publicly Perform the Work including as incorporated in Collections.

    The above rights may be exercised in all media and formats whether now known or hereafter devised. The above rights include the right to make such modifications as are technically necessary to exercise the rights in other media and formats, but otherwise you have no rights to make Adaptations. Subject to 8(f), all rights not expressly granted by Licensor are hereby reserved, including but not limited to the rights set forth in Section 4(d).

  4. Restrictions. The license granted in Section 3 above is expressly made subject to and limited by the following restrictions:

    1. You may Distribute or Publicly Perform the Work only under the terms of this License. You must include a copy of, or the Uniform Resource Identifier (URI) for, this License with every copy of the Work You Distribute or Publicly Perform. You may not offer or impose any terms on the Work that restrict the terms of this License or the ability of the recipient of the Work to exercise the rights granted to that recipient under the terms of the License. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties with every copy of the Work You Distribute or Publicly Perform. When You Distribute or Publicly Perform the Work, You may not impose any effective technological measures on the Work that restrict the ability of a recipient of the Work from You to exercise the rights granted to that recipient under the terms of the License. This Section 4(a) applies to the Work as incorporated in a Collection, but this does not require the Collection apart from the Work itself to be made subject to the terms of this License. If You create a Collection, upon notice from any Licensor You must, to the extent practicable, remove from the Collection any credit as required by Section 4(c), as requested.

    2. You may not exercise any of the rights granted to You in Section 3 above in any manner that is primarily intended for or directed toward commercial advantage or private monetary compensation. The exchange of the Work for other copyrighted works by means of digital file-sharing or otherwise shall not be considered to be intended for or directed toward commercial advantage or private monetary compensation, provided there is no payment of any monetary compensation in connection with the exchange of copyrighted works.

    3. If You Distribute, or Publicly Perform the Work or Collections, You must, unless a request has been made pursuant to Section 4(a), keep intact all copyright notices for the Work and provide, reasonable to the medium or means You are utilizing: (i) the name of the Original Author (or pseudonym, if applicable) if supplied, and/or if the Original Author and/or Licensor designate another party or parties (for example a sponsor institute, publishing entity, journal) for attribution ("Attribution Parties") in Licensor's copyright notice, terms of service or by other reasonable means, the name of such party or parties; (ii) the title of the Work if supplied; (iii) to the extent reasonably practicable, the URI, if any, that Licensor specifies to be associated with the Work, unless such URI does not refer to the copyright notice or licensing information for the Work. The credit required by this Section 4(c) may be implemented in any reasonable manner; provided, however, that in the case of a Collection, at a minimum such credit will appear, if a credit for all contributing authors of Collection appears, then as part of these credits and in a manner at least as prominent as the credits for the other contributing authors. For the avoidance of doubt, You may only use the credit required by this Section for the purpose of attribution in the manner set out above and, by exercising Your rights under this License, You may not implicitly or explicitly assert or imply any connection with, sponsorship or endorsement by the Original Author, Licensor and/or Attribution Parties, as appropriate, of You or Your use of the Work, without the separate, express prior written permission of the Original Author, Licensor and/or Attribution Parties.

    4. For the avoidance of doubt:

      1. Non-waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme cannot be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License;

      2. Waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme can be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License if Your exercise of such rights is for a purpose or use which is otherwise than noncommercial as permitted under Section 4(b) and otherwise waives the right to collect royalties through any statutory or compulsory licensing scheme; and,

      3. Voluntary License Schemes. The Licensor reserves the right to collect royalties, whether individually or, in the event that the Licensor is a member of a collecting society that administers voluntary licensing schemes, via that society, from any exercise by You of the rights granted under this License that is for a purpose or use which is otherwise than noncommercial as permitted under Section 4(b).

    5. Except as otherwise agreed in writing by the Licensor or as may be otherwise permitted by applicable law, if You Reproduce, Distribute or Publicly Perform the Work either by itself or as part of any Collections, You must not distort, mutilate, modify or take other derogatory action in relation to the Work which would be prejudicial to the Original Author's honor or reputation.

  5. Representations, Warranties and Disclaimer UNLESS OTHERWISE MUTUALLY AGREED BY THE PARTIES IN WRITING, LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.

  6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

  7. Termination

    1. This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License. Individuals or entities who have received Collections from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License.

    2. Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Work). Notwithstanding the above, Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above.

  8. Miscellaneous

    1. Each time You Distribute or Publicly Perform the Work or a Collection, the Licensor offers to the recipient a license to the Work on the same terms and conditions as the license granted to You under this License.

    2. If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this agreement, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.

    3. No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent.

    4. This License constitutes the entire agreement between the parties with respect to the Work licensed here. There are no understandings, agreements or representations with respect to the Work not specified here. Licensor shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Licensor and You.

    5. The rights granted under, and the subject matter referenced, in this License were drafted utilizing the terminology of the Berne Convention for the Protection of Literary and Artistic Works (as amended on September 28, 1979), the Rome Convention of 1961, the WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 and the Universal Copyright Convention (as revised on July 24, 1971). These rights and subject matter take effect in the relevant jurisdiction in which the License terms are sought to be enforced according to the corresponding provisions of the implementation of those treaty provisions in the applicable national law. If the standard suite of rights granted under applicable copyright law includes additional rights not granted under this License, such additional rights are deemed to be included in the License; this License is not intended to restrict the license of any rights under applicable law.

Glossary

Index


© 2007-2012 BalaBit IT Security
Please send your comments or documentation bugs to: documentation@balabit.com