NetWare Secure your network. 4389KB Mar 29 2010 05:04:06 AM
Network access is also centralized. When a user logs in to the network, she authenticates to the entire NDS tree, not just a specific server or portion of the tree. This means that she automatically receives
access to all network resources that have been assigned to her—even if that resource exists on a remote portion of the tree such as a printer in a remote field office.
NDS Design
For an example of how an NDS tree may be configured, take a look at Figure 13.1. The organization Geek-Speak has been broken up into four geographic locations: Portland, Corporate, New York, and
Boston. Any user assigned access to the geographic containers can be granted access privileges to all resources at that location. If each location has its own IS staff, this is where you would create IS staff
accounts. By defining these administrators within the geographic containers, you can give them access to all on-site resources while insuring that they have no access to resources at other locations.
Further, you could create a small number of user accounts directly under the Geek-Speak container which would allow these administrators to manage the entire tree.
At each geographic location, you could define further containers in order to structure your resources by department. This allows you to organize your network resources beyond geographic location. For
example, look at the HR container in Figure 13.1. Within the HR container, we have defined a number of user groups as well as the printer, file, and application resources these user groups will
need access to. This simplifies security management: you can organize network objects based on their access requirements.
NDS can even deal with specialized cases in which users need access to multiple containers within the tree. For example, let’s say that Bob is the VP of Human Resources for Geek-Speak and requires
access to HR resources at every facility. You do not wish to grant Bob access to the entire NDS tree, however, because Bob has been known to poke around where he does not belong.
FIGURE 13.1 An example NDS tree
In Bob’s case, you could simply create a user object for him under one of the HR containers such as the one under Corporate, which is not shown in the figure, then alias his user object within the other
HR containers where he requires access. The Bob object in Figure 13.1 is simply an alias that points back to the original. This allows you to make access control changes and have them linked to all of
Account Management
U
ser accounts are managed using the
nwadmn95
utility. If you need a 16-bit version of the utility,
nwadmin
for Windows 3.1x and
netadmin
for DOS are still included. As of NetWare version 5.0, you can also manage accounts directly from the server using ConsoleOne.
Previous Table of Contents Next
Copyr ight © Sybex, I nc.
Account management could not be easier. In order to view all security settings for a specific user, simply right-click the object and select Details. This pulls up a user information screen similar to the
one shown in Figure 13.2. As you can see, this single console lets you administer all aspects of this user account, including password restrictions, file access rights, and even the user’s logon script. In
the next few sections, we will look at some of the security administration you can perform through this console.
FIGURE 13.2 Managing the user Deb with
nwadmn95
Identification
The Identification button allows you to record information about a user beyond his or her logon name. This information can include
• Full name • Location
• Department • Phone number
• Descriptive information, such as the user’s direct supervisor
While the ability to record detailed user information may not seem like a security feature on the surface, it can be invaluable if you are tracking down a problem.
Let’s say you are reviewing your system and you see some suspicious activity coming from the user account
jsmith.
It appears that
jsmith
may be trying to gain access to the payroll database. Using
nwadmn95
, you quickly look up
jsmith
’s account information and find out that he reports to Toby Miller at extension 1379. Armed with this information, you quickly give Toby a call to attempt to
catch
jsmith
in the act.
When performing a system audit, it is extremely beneficial to have access to detailed user information. This allows you to correlate logon activity and audit log entries with actual users. In a large
environment, it is extremely unlikely that a system administrator will have every user’s logon name committed to memory.
Logon Restrictions
The Logon Restrictions button allows you to assign a predetermined expiration date for each account. This is useful if your organization works with temporary employees. The Logon Restrictions screen
also allows you to disable an account and limit the number of concurrent connections each user may have.
Limiting the number of server connections a user can have is beneficial if you are worried about users giving out their authentication credentials. If the number of concurrent connections is limited to one,
a user will be far less likely to let someone else use his logon. This is because once the other user logs on under his name, the user will be unable to log on at the same time.
Limiting concurrent connections is also a good way to identify stolen accounts. If a user attempts a logon and receives a message that he is logged on from another system, he can inform the
administrator, who can then track down the potential attacker.
Password Restrictions
The Password Restrictions button allows you to define password criteria for each user. Here is a list of the parameters you can set on this screen:
• Allow users to change their own passwords. • Define whether the account is required to use a password.
• Define a minimum number of characters for the password. • Require that this account always use a unique password.
• Define how often the password must be changed. • Define the number of incorrect logon attempts before the account becomes locked.
• Change the account’s current password.
Password restrictions under NDS are extremely flexible: you can define parameters on a user-by-user basis. For example, you could require regular users to use a password of at least six characters.
Additionally, you could require network administrator accounts to use a 12-character password in order to make these high-level accounts more difficult to crack.
Login Time Restrictions
The Login Time Restrictions screen allows the system administrator to define when a particular user is allowed to authenticate to the NDS tree. Restrictions can be set by the time of day andor day of the
week.
NDS does not account for time-zone changes or holidays.
Time restrictions are an excellent way to kick users off a system before running a backup. A user who remains logged on to the system may also have files open. Backup programs are typically unable to
back up open files because they need exclusive access to the file information in order to insure a proper backup. By using time restrictions, you can disconnect your users from the network before
launching your backup program.
FIGURE 13.3 The Login Time Restrictions screen
Network Address Restriction
The Network Address Restriction button allows the NDS administrator to identify which systems a user may use when authenticating with the NDS tree. As shown in Figure 13.4, the administrator is
allowed to restrict a user by network host address or topology Media Access Control MAC number. This can insure that users are only allowed to gain access to network resources from their assigned
workstations.
FIGURE 13.4 The Network Address Restriction screen
For example, let’s say that you have an application that runs on a dedicated system and needs access to certain files on the server. Let’s also assume that you would like to have this one account log on
without a password, so that if the system is power cycled it will immediately be able to gain access to network resources without waiting at the password prompt.
An account without a password is obviously a security hazard. You can, however, take precautions to insure that this account remains relatively secure. By defining a network address restriction for this
account that only allows a logon to be performed from this dedicated system, the account will remain secure—provided that the workstation remains physically secure. This prevents someone from using
the account to log on from another location on the network.
The Intruder Lockout button displays a screen which shows statistics regarding failed logon attempts. The system administrator is allowed to view whether the account has been locked out due to too
many incorrect password attempts. The administrator can also see how many bad password attempts took place, as well as the host address of the system used. This is extremely valuable information if
you are attempting to track an intruder.
Failed logon attempts can also be recorded to the audit log.
Previous Table of Contents Next
Copyr ight © Sybex, I nc.
Even if an account does not become locked, the Intruder Lockout screen displays the number of failed attempts, as well as the amount of time left before the failure count is set to zero.
Rights to Files and Directories
The Rights to Files and Directories button allows the NDS administrator to view all file and directory permissions assigned to a particular user. This is a powerful tool which allows an administrator to
review all of a user’s assigned file access rights in one graphical display. This is in contrast to Windows NT Explorer, where an administrator would be required to check every directory, on every
server, one at a time.
The Rights to Files and Directories screen is shown in Figure 13.5. If you select the Find button,
nwadmn95
will go out and search the NDS tree for directories where this user has been granted access. The top left window displays the server volumes where access has been granted. The center window
displays the directories on this volume where the user has been granted access. Finally, the bottom of the screen shows the specific rights that have been granted to this user for the highlighted directory.
A description of each of the NetWare directory rights is shown in Table 13.1.
FIGURE 13.5 The Rights to Files and Directories screen
TABLE 13.1 Directory Rights Right
Description
Supervisor Provides a combination of all other access rights
Read Allows a user to view the contents of or execute a file
Write Allows a user to view and modify the contents of a file
Create Allows a user to create new files or salvage files that have been deleted
Erase Allows a user to delete or overwrite a file
Modify Allows a user to rename a file or change its attributes
File Scan Allows a user to view the contents of a directory without being able to view the
contents of any of the files saved within it Access
Control Allows a user to change trustee assignments and grant access rights to other users
Assigning only the Create right would allow users to copy files to a directory but not view or modify those files once they get there.
The Supervisor and the Access Control rights are the ones you need to be the most careful with. The Supervisor right not only assigns full permissions, but it cannot be filtered out from
subdirectories. The Access Control right allows a user to grant permissions that he does not even have himself.
Let’s say you gave the user Charlie File Scan and Access Control rights to a specific directory. Charlie could then use the Access Control right to grant Roscoe Read, Write, and Erase rights to this
directory—even though Charlie does not have these permissions himself. In fact, Charlie could grant Roscoe the Access Control right so that Roscoe could then turn around and give Charlie a full set of
permissions. The only exception is the Supervisor right, which can only be granted by an administrator equivalent.
Group Membership
The Group Membership button allows you to define which groups this user is a member of. Since access rights can be assigned to groups, it is usually easier to assign permissions to each group first,
then add the users who need this level of access as members. For example, the Sales group could be assigned access to all directories containing sales-related information. Now when you create new
users, you simply have to add them to the Sales group rather than assigning specific access rights to each required directory.
If a user is associated with any groups, you will need to review the group’s rights in order to get a full picture of the file areas a user has access to.
Security Equal To
The Security Equal To button allows you to view and configure all access rights which have been inherited from another user or group. This screen gives the NDS administrator a central location
where all security equivalencies can be viewed.
For example, it is a common practice to make all support staff security equivalent to the NDS Admin. This gives the support staff full control of all NDS objects. While Admin equivalency needs to be
reviewed on a per-user basis, having support staff use a different account from the administrator account is an excellent practice. Doing so provides accountability within the audit logs. If all support
personnel are using the Admin account to make changes, you have no traceability. By giving support
You should provide support personnel with two accounts: one for making administrative-level changes and the other for performing daily activities. It is far too easy for an administrator to become
lax when working on a system. Unfortunately, this laxity can lead to mistakes. Users who have full system access can inadvertently cause major damage “I deleted all files on the F: drive? Isn’t it F for
Floppy?.
By using an alternative account for performing administrative functions, the support person has an opportunity to wake up and focus a little more closely on the task at hand. After completing the
required task, support personnel can log back off and use their regular user accounts.
File System
A
s you saw in the last section, most file system access is controlled through
nwadmn95.
This is to insure that the NDS administrator can quickly identify the access rights that have been granted to
each user. NetWare does, however, provide an additional utility called Filer, which allows the administrator to control the flow of access rights recursively through directories. The flow of access
rights is controlled using the inherited rights mask.
Previous Table of Contents Next
Copyr ight © Sybex, I nc.
Inherited Rights Mask
File system access can be tuned down to the file level. Normally, file access rights trickle down through directories. This means that if a user is given read access to directories at a certain level, that
user will also have read access to any subsequent subdirectories. NetWare provides an inherited rights mask that allows these rights to be masked out so that they will not trickle down to included
subdirectories. This allows the system administrator to assign the precise rights required at any directory level.
For example, examine the directory structure in Figure 13.6. We have a directory named
Shared
located off the root of the
Data
volume. Within the
Shared
directory are a number of subdirectories which have been broken up by department. We wish to grant users the File Scan right within the
Shared
directory in order to allow them to see any subdirectories they have access to. We do not, however, want to grant users File Scan rights to all of the subsequent subdirectories located under
Shared.
By default, any user who is granted File Scan rights to the
Shared
directory will automatically receive File Scan rights to the
Sales
and
Marketing
directories. This is where the inherited rights mask becomes useful: it allows you to prevent the File Scan right from trickling down to each subdirectory. By
filtering out the File Scan right, you can prevent users from seeing what files are located in any directory for which they have not explicitly been granted permissions.
To create an inherited rights mask, launch the Filer utility and select the Manage Files and Directories menu option. This produces a window which displays the volume’s directory structure. Navigate the
directory structure until you have highlighted the
Sales
directory, as shown in Figure 13.7. Once the
Sales
directory is highlighted, press the F10 key.
FIGURE 13.6 An example directory structure
FIGURE 13.7 Navigating directories with Filer
When you press the F10 key, the Subdirectory Options menu will appear. Select the ViewSet directory information option. This will produce the Information for Directory screen shown in Figure
13.8. The highlighted option is the current Inherited rights filter setting. Each letter signifies a specific right, so
S
would be Supervisor,
R
would be Read, and so on. Rights shown within the filter are rights which are allowed to trickle through.
Removing a right from the filter prevents the right from being inherited from the directory above it.
FIGURE 13.8 The Information for Directory screen
If you wished to prevent the File Scan right from passing through from the
Shared
to the
Sales
directory, you would remove the File Scan right from the
Sales
directory’s inherited rights filter. To remove the right, highlight the inherited rights filter as shown in Figure 13.8 and press Enter. This
will bring up a dialog box which lists the full name for each of the current rights. Highlight the File Scan right and press Delete.
Since you have prevented the File Scan right from propagating down to the
Sales
directory, you will need to specifically assign this right to all users whom you wish to be able to see files within this
directory. For example, you could now use
nwadmn95
to grant the File Scan right to this directory for all members of the Sales group.
The inherited rights mask allows you to overcome the propagation of access rights through a subdirectory structure. While propagation is usually desired, there are times when the administrator
needs more granular control in order to specifically assign access rights to every directory. The inherited rights mask gives the administrator this ability.
Logging and Auditing
T
here are two types of log that can be generated with NetWare server. The first is the console log, which is created with the utility
console.nlm.
This utility can create a log which records all console activity and error messages. The second type of log is the audit log. This log is created using the
Auditcon utility.
NetWare includes Auditcon, Novell’s system auditing utility. Auditcon allows the system administrator, or someone designated by the system administrator, to monitor server events. Events
range from user logons to password changes to specific file access. Over 70 events can be monitored. The benefit of Auditcon being a separate utility from
nwadmn95
is that the administrator can designate a regular user to monitor events.
Auditcon is an excellent solution for large organizations where the person administering the network is not the same person who is monitoring security. An auditor can be designated to monitor system events
without being given any other type of administration privilege.
Previous Table of Contents Next
Copyr ight © Sybex, I nc.
By launching Auditcon and selecting Audit Directory Services, you are allowed to audit the tree based on specific events or a user’s logon name. Figure 13.9 shows the configuration screen for
selecting which NDS events you wish to monitor. For example, you could create a log entry every time a new member is added to a group or whenever the security equivalency for an object is
changed.
The ability to track a specific user is also very important. For example, you may want to log all activities performed by your administrator-level accounts. This can help you to identify when access
privileges are being abused or when a high-level account has been compromised.
Using Auditcon, you can even choose to audit specific file system activities. For example, in Figure 13.10 we have enabled auditing of directory deletions. You could choose to track directory deletions
for a specific user or globally for everyone.
FIGURE 13.9 The Auditcon Audit by DS Events screen
Tracking file system activities can be extremely useful when you wish to document improper access to sensitive files.
FIGURE 13.10 Auditcon allows you to audit specific file events.
Network Security
N
etWare includes a number of methods for securing network communications. Packet signature provides a secure method for communicating with a NetWare server, while the Filtcfg utility allows
the system administrator to perform basic packet filtering.
Packet Signature
There is a type of system attack, which has been around for a number of years, known as connection
Packet signature is useful in deterring this type of attack. Packet signature requires both the server and the workstation to sign each frame using a shared secret prior to transmission. The signature is
determined dynamically and changes from frame to frame. The server will only accept commands from a station that is properly signing frames.
In practice, if an attacker sends commands to the server pretending to be the administrator, the server will reject and log all frames received without a valid signature. Since the correct signature is
changing constantly, it is extremely difficult for an attacker to determine what to use for a signature. This feature helps to protect an administrator’s connection during daily maintenance.
Packet signature can also be enabled for all users.
Setting Packet Signature
Packet signature can be configured to four different security levels. These settings must be configured on both the workstation and the server. Table 13.2 describes each of the available packet signature
levels.
TABLE 13.2 Packet Signature Levels
Signature Level Description
Do not use packet signature. 1
Use packet signature only if the remote system requires it. 2
Use packet signature if the remote system supports it, but signing is not required.
3 Do not communicate with remote systems that do not support packet signature.
By default, NetWare clients and servers are configured to use a packet signature level of 1 sign only when required. This means that in environments where the default settings have not been changed,
packet signature is not being used.
The Nomad Mobile Research Centre NMRC has discovered a spoofing vulnerability with packet
The NMRC has documented a number of vulnerabilities with Novell products. You can access its Web site at
http:www.nmrc.org.
Filtcfg
The Filtcfg utility allows a NetWare server to act as a static packet filter. You can use packet filtering to control traffic flowing to and from the server. If you have installed two or more network cards, you
can also control traffic between different network segments. Filtcfg supports the filtering of IP, IPX, and AppleTalk traffic.
In order to filter traffic, you must enable filtering support through the Inetcfg utility for each protocol you wish to filter. Once you have enabled support, you can initialize the Filtcfg utility by loading it at
the server console. This produces the Filter Configuration menu screen shown in Figure 13.11. From this screen you can choose the protocol you wish to filter.
FIGURE 13.11 The Filter Configuration menu
If you select the TCPIP option, you are first prompted to identify any routing protocols you wish to filter. You are also prompted for the direction of the filter. For example, you can choose to filter out
certain outgoing or incoming RIP updates. The difference is whether you want the server itself to receive these routing updates. An incoming filter will drop the update before it is received by the
server. An outgoing filter will allow the route to be propagated to the server itself, but the server will not propagate the route information through any of its other network cards.
In addition to filtering routing information, you can also perform static packet filtering. The Packet Forwarding Filters screen is shown in Figure 13.12. Filtcfg provides two methods of defining packet
filters. You can specify the packets you wish to permit the default setting, or you can specify the packets you wish to deny. In either case, you are allowed to define exceptions.
For example, you could choose to configure the packets you wish to permit and specify that all traffic be allowed between the subnets 192.168.1.0 and 192.168.2.0. You could also define an exception that
globally denies FTP connection requests in both directions. The combination of filters allows the system administrator to create a very complex access control policy.
FIGURE 13.12 The Packet Forwarding Filters screen
If you highlight the Filters option in the Packet Forwarding Filters screen and press Enter, you are presented with a list of currently installed filters. Pressing the Insert key allows you to configure
additional filter rules. The Define Filter screen is shown in Figure 13.13.
FIGURE 13.13 The Define Filter screen
Previous Table of Contents Next
Copyr ight © Sybex, I nc.
The Source Interface option lets you associate a filter rule with a specific network card. This is useful when you wish to define spoofing filters. For example, let’s assume that you have an internal network
address of 192.168.1.0, which is connected to the NetWare server via a 3COM card. Let’s also assume that you have an SMC card that connects to a demilitarized zone. In order to prevent spoofed
packets, you could define a filter rule stating that all traffic received by the SMC interface with an IP source address of 192.168.1.0 should be dropped.
You can also define the source and destination IP address, the destination interface, and the type of IP packet. Highlighting the Packet Type field and pressing Enter produces the screen shown in Figure
13.14. This is a list of predefined IP packet types that you can use for creating your filter rules. If you need to filter a service which is not listed, simply press the Insert key to define a new packet type.
FIGURE 13.14 Defined TCPIP Packet Types screen
There are a number of limitations when defining your packet filters:
• You cannot distinguish between acknowledgment ACK=1 and session establishment SYN=1 packets.
• You cannot define ICMP type codes. • You cannot define support for services that use dynamic port assignments such as RPC.
Obviously, these limitations make Filtcfg a poor choice for securing an Internet connection. Filtcfg’s modest packet filtering ability may be sufficient, however, for providing security between internal
network segments.
Once you have defined your filter rules, press the Escape key to exit and save I know—it’s a NetWare thing. You must now reinitialize the system in order to have your filter policy take effect.
Tweaking NetWare Security
N
ovell provides some security tweaks that allow you to enhance the security of your server even further. These include the
SECURE.NCF
script, as well as a number of console parameter settings.
The SECURE.NCF Script
enables many of NetWare’s security features, thus enhancing the security of the server. The
SECURE. NCF
script performs the following:
• Disables support for unencrypted passwords • Disables the ability to access auditing functions using a general password
• Enables the ability to automatically repair bad volumes during startup • Rejects bad NCP packets
All of these settings are required if you need to insure that your system meets C2 trusted network specifications. If you are not required to meet C2 standards, you can optionally comment out any
setting that you do not wish to use.
Secure Console
When run from the server console, the Secure Console command provides the following security features:
• Only allows the server to load software which is located in the
SYS:SYSTEM
directory
• Disables the console debugging utility • Prevents the time and date from being changed by anyone but the console operator
Once the Secure Console command has been invoked, it cannot be disabled without rebooting the server. The secure console features are designed to help protect the server from attacks at the server
console.
In order to improve security even further, use the Lock Server Console option included with the Monitor utility.
Securing Remote Console Access
NetWare can be configured to allow you to remotely access the server console from any network workstation. Access is provided via the Rconsole utilities or any generic Telnet program. There are a
number of known security issues when enabling remote console access. The details of these vulnerabilities are described in the sections that follow.
Securing the Console Password
In NetWare versions 3.2 and earlier, the console password was included in the
AUTOEXEC.NCF
in a clear text format. This means that anyone who could gain read access to the file would be able to see
the console password. The syntax used was
where secretpass is the password used to gain access to the server console. As of NetWare versions 4.1x and higher, remote access can be administered from the Inetcfg utility. By selecting Manage
Configuration Configure Remote Access from the Inetcfg main menu, you can define your remote access parameters, including the remote console password.
The problem with Inetcfg is that it saves the password information in clear text to the file
SYS:ETC \Netinfo.cfg.
This is extremely bad: if you are running any of the IP services such as Web or NFS, users are provided read access to this directory. This means that any valid system user could
potentially gain access to the server console.
Clearly, some method of encrypting the console password is required. To encrypt the console password, issue the following commands from the server console:
load remote password remote encrypt password
As shown in Figure 13.15, this will create the file
SYS:SYSTEM\LDREMOTE .NCF
, which contains an encrypted version of your password string. The
-E
switch tells the remote program that the password has been saved in an encrypted format.
FIGURE 13.15 Encrypting the remote console password
You now have a number of options. You can
• Run the
LDREMOTE.NCF
file prior to running the
INITSYS.NCF
script within the
AUTOEXEC. NCF
file
• Copy and paste the full command into your
AUTOEXEC.NCF
file
• Copy and paste the
-E
switch, as well as the encrypted password, into the Remote Access Password field of the Inetcfg utility
The choice is yours, but it is probably best to use the
LDREMOTE.NCF
script. This will save the encrypted password to the
SYS:SYSTEM\
directory and keep Inetcfg from importing the commands.
Accessing the Console Using Telnet
The other problem with using Telnet is that authentication with the server uses clear text passwords. This means that even if you go to all the trouble of encrypting the console password, Telnet transmits
the password in clear text, so that anyone with a packet sniffer may read it.
The Inetcfg utility allows you to selectively enable Rconsole andor Telnet support. It is highly advised that you leave Telnet support disabled.
Summary
I
n this chapter we looked at how to secure a NetWare server environment. NetWare provides a fairly secure environment right out of the box, but there are always a few tweaks you can do to make your
networking environment even more secure. To this end, we discussed account management, file access rights, and how to perform NDS audits. We even discussed why it is so important to secure the
remote console password.
In the next chapter, we will take a look at Windows NT and how to secure an NT server environment.
Previous Table of Contents Next
Copyr ight © Sybex, I nc.