winnotes-20040807
authorJeffrey Altman <jaltman@mit.edu>
Sat, 7 Aug 2004 22:32:46 +0000 (22:32 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Sat, 7 Aug 2004 22:32:46 +0000 (22:32 +0000)
document new freelance functionality and update install notes

====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================

more updates

doc/txt/winnotes/afs-changes-since-1.2.txt
doc/txt/winnotes/afs-install-notes.txt
doc/txt/winnotes/afs-issues.txt

index c110f57..929d638 100644 (file)
@@ -1,4 +1,19 @@
 Since 1.3.66:
+   * file and directory names beginning with "." will now be given the
+     hidden attribute when the volume access is anonymous.  this matches
+     the behavior when the volume access is via an authenticated user.
+
+   * Added a change monitor to the HKLM\SOFTWARE\OpenAFS\Client\Freelance
+     key.  When a change occurs mark the root.afs data as invalid and
+     for it to be reloaded on the next access.  This allows administrators
+     to modify the mount point list without restarting the service.
+     
+     The freelance client used to provide a fake modification time for
+     the root.afs volume data and its mount points of 7/09/2001 14:24 EDT.
+     Added code to extract the last modification time of the Freelance
+     registry key and use that instead.  The time now represents the 
+     most recent mount point change.
+
    * PTS registration of new users to foreign cells has been added to 
      aklog.exe
 
index 69f28ef..04bcf2e 100644 (file)
@@ -11,6 +11,7 @@ The 1.3.x series of releases not only fixes a large number of bugs in the 1.2
 series but also attempts to enhance the functionality of the product to better 
 fit the usage model of today's users.  Several items standout.  
 
+
 1. The Kerberos 4 infrastructure on which the 1.2 series is reliant is no 
 longer secure.  Cross-realm Kerberos is very important in the AFS context and 
 most sites have or are migrating to Kerberos 5 environments.  The 1.3 series 
@@ -18,25 +19,30 @@ integrates with the MIT Kerberos for Windows 2.6.x product to provide Kerberos
 5 functionality including the ability to auto-renew credentials and obtain 
 single sign-on capabilities with the Microsoft Windows Kerberos Logon Service.
 
-The 1.3.65 OpenAFS client will directly use Kerberos 5 tickets as tokens if 
-KFW is installed.  It requires that all of the AFS Servers which it 
-communicates support Kerberos 5 tickets.  This requires that all servers 
-be running OpenAFS release 1.2.8 or higher.  Transarc servers do not support
-Kerberos 5 tickets as tokens.
+As of 1.3.65, the OpenAFS client will directly use Kerberos 5 tickets as tokens if 
+KFW is installed.  The client requires that all of the AFS Servers with which it 
+communicates support the use of Kerberos 5 tickets as tokens (aka 2b tokens).
+This means that all of the AFS servers must be running OpenAFS release 1.2.8 or 
+higher.  Transarc servers do not support Kerberos 5 tickets as tokens.
+
+When using a Microsoft Windows Active Directory as the KDC which issues the 
+service ticket for the AFS cell there are two things to consider.  First, the 
+Kerberos 5 tickets issued by Active Directory can be quite large when compared 
+to tickets issued by a traditional KDC due to the incorporation of 
+authorization data in the PAC.  If this is your situation you either must 
+modify your 1.2.x servers to support tokens larger than a few hundred bytes; 
+or install the 1.3.64 or higher release on your servers.  Second, Windows 2003 
+Active Directory will issue service tickets utilizing the DES-CBC-MD5 enctype. 
+OpenAFS releases older than 1.3.64 will not properly support this enctype.
 
-When using a Microsoft Windows Active Directory as your KDC for the AFS cell 
-extremely large tickets may be issued.  If this is your situation you either 
-must modify your 1.2.x servers to support tokens larger than a few hundred 
-bytes; or install the 1.3.64 or higher release on your servers.
 
 2. The AFS Client Service does not provide robust behavior in an environment 
 with a plug-n-play network environment.  Changes to the number of network 
-adapters or the assigned IP addresses will cause the client to panic.  The 
-recommended work around for this problem is to install on the machine the 
-Microsoft Loopback Adapter.  When the MLA is installed with a static IP 
-address the AFS Client Service will bind only to the loopback and not be 
-affected by changes to state of other network adapters installed on the 
-system.  
+adapters or the assigned IP addresses will cause the service to panic.  The 
+recommended work around for this problem is to install the Microsoft Loopback 
+Adapter on the machine.  When the MLA is installed with a static IP address 
+the AFS Client Service will bind only to the loopback and not be affected by 
+changes to state of other network adapters installed on the system.  
 
 Starting in the 1.3.65 release the installers provided by OpenAFS.org will 
 install the Microsoft Loopback Adapter for you with a name of "AFS" and a 
@@ -48,43 +54,58 @@ the MLA.  This means that the names no longer need to be unique.  When the MLA
 is in use, the NETBIOS name associated with the AFS Client Service is simply 
 "AFS".  When the MLA is not in use the NETBIOS name is "MACHINE-AFS".
 
-With the MLA installed, UNC paths of the form \\AFS\cellname\path may be used.
+When the MLA is installed, UNC paths of the form \\AFS\cellname\path may be used.
 
-3. When the AFS Client Service starts it must be able to contact the root.afs 
-volume of the default cell.  If the root.afs volume is not accessible when the 
-client service is started, the service will panic.  Since many users now use 
-laptops or otherwise operate in disconnected environments in which a VPN may 
-be needed to access the cell's servers, it is often the case that the root.afs 
-volume for the default cell will not be reachable and the client service 
-cannot successfully start. 
+
+3. Traditionally, when the AFS Client Service starts it must be able to 
+access the "root.afs" volume of the default cell.  The "root.afs" volume
+contains a set of read-only and read-write mount points to the "root.cell"
+volumes of various cells the administrator of the default cell believes
+should be accessible.  If the "root.afs" volume is 
+inaccessible when the client service is started, the service will panic.  
+Since many users now use laptops or otherwise operate in disconnected 
+environments in which a VPN may be needed to access the cell's servers, it is 
+often the case that the "root.afs" volume for the default cell is not 
+reachable and the AFS Client Service will not successfully start. 
  
-In the 1.3.65 release there is support for a fake root.afs volume which is 
-dynamically constructed when the afs client service starts. This is called 
-Freelance mode.  Freelance mode is turned on by default in the OpenAFS.org 
-installers.  
-
-A couple of notes about Freelance mode.  First, since the fake root.afs volume 
-is constructed on the fly, when it is first used the only mount points will
-be for the default afs cell.  Do not be concerned.  Any attempt to access a 
-valid cell name will automatically result in a new read-only mount point 
-being created in the fake root.afs volume.  These mount points are preserved 
-between service starts in the HKLM\SOFTWARE\OpenAFS\Client\Freelance registry
-key.
-
-As of 1.3.70, Freelance mode supports read-write mount points in the fake
-root.afs volume.  In addition, if the mount point list is empty, mount points
-for "cellname" (ro) and ".cellname" (rw) will be automatically generated.
-
-4. The OpenAFS for Windows client will make use of AFSDB DNS records to 
+The OpenAFS Client Service now supports a fake "root.afs" volume which is 
+dynamically constructed when the service starts.  This mode is called 
+Freelance mode.  Freelance mode is turned on by default.
+
+The contents of the
+fake "root.afs" volume are constructed dynamically as cells are accessed.
+When the fake "root.afs" volume is constructed it will only contain two
+mount points: a read-only and read-write mount point used to access the
+"root.cell" volume of the default AFS cell.  Any attempt to access a 
+valid cell name will automatically result in a new mount point 
+being created in the fake "root.afs" volume.  If the cellname begins with
+a "." the mount point will be read-write; otherwise the mount point will
+be read-only.  These mount points are preserved in the registry at key:
+  HKLM\SOFTWARE\OpenAFS\Client\Freelance
+
+Additional mount points may be manually created using the "fs mkmount"
+command.  Mount points may be removed using the "fs rmmount" command.
+
+    fs mkmount \\AFS\all\athena.mit.edu root.cell athena.mit.edu
+    fs mkmount \\AFS\all\.athena.mit.edu root.cell athena.mit.edu -rw
+    fs rmmount \\AFS\all\athena.mit.edu
+    fs rmmount \\AFS\all\.athena.mit.edu
+     
+
+4. The OpenAFS for Windows client will use AFSDB DNS records to 
 discover cell information when it is not located in the local CellServDB file 
 (\Program Files\OpenAFS\Client\CellServDB).
 
-5. OpenAFS for Windows 1.3.65 only supports Windows 2000, Windows XP, and 
-Windows 2003.  Windows NT 4.0 and the entire Windows 9x/Me line are not 
-supported.  If OpenAFS for Windows runs on those platforms it is by sheer 
-luck.
 
-6. OpenAFS for Windows installs a Network Provider for use in supporting an 
+5. OpenAFS for Windows 1.3.70 only supports Windows 2000, Windows XP, and 
+Windows 2003.  Windows NT 4.0 and the entire Windows 9x/Me line are no
+longer supported.  Older releases of OpenAFS are available for download
+if those operating systems must be supported.  The last version with support
+for Win9x is 1.2.2b.  The last version with support for Windows NT 4.0 is
+1.2.10.
+
+
+6. OpenAFS for Windows installs a WinLogon Network Provider to provide
 Integrated Logon (Single Sign-on) functionality. Integrated Logon can be used 
 when the Windows username and password match the username and password 
 associated with the default cell's Kerberos realm.  For example, if the 
@@ -109,6 +130,17 @@ you must log off to obtain new tokens.  Do not use external tools such as
 Authenticated SMB connections which removes the need for High Security mode. 
 DO NOT USE IT!!!!! 
 
+What Integrated Logon does not do:
+ (a) Integrated Logon does not have the ability to obtain Kerberos 5
+     tickets for use during the Windows Session.  At the current time there
+     is no mechanism by which a Kerberos 5 CCAPI credentials cache can
+     be constructed during the logon process such that it will exist in 
+     the user's logon session.
+ (b) Integrated Logon does not have the ability to cache the user's 
+     username and password for the purpose of obtaining tokens if the
+     Kerberos KDC is inaccessible at logon time.
+
+
 7. The AFS Systray tool (afscreds.exe) supports several new command line 
 options: 
 
@@ -122,20 +154,21 @@ afscreds.exe is started.  afscreds.exe will attempt to utilize tickets stored
 in the MSLSA credentials cache; any existing CCAPI credentials cache; and
 finally display an Obtain Tokens dialog to the user.  When used in combination 
 with ip address change detection, afscreds.exe will attempt to acquire AFS 
-tokens whenever a new IP address is added to the system.
+tokens whenever the IP address list changes and the Kerberos KDC is 
+accessible.
 
 The renew drive maps option is used to ensure that the user drive maps 
-constructed via the AFS tools (not NET USE) are re-constructed at afscreds.exe 
-start time.
+constructed via the AFS tools (not NET USE) are re-constructed each time
+afscreds.exe is started.
 
 By default afscreds.exe is configured by the OpenAFS.org installers to use -A 
 -N -M -Q as startup options.  Currently, there is no UI to change this selection 
-after install time although these options may be set via the registry either 
+after install time although these options may be altered via the registry either 
 per machine or per user.  See AfscredsShortcutParams in registry.txt.
 
 
-8. Some attempts in the 1.3.65 release have been made to restrict the behavior 
-of users with regards to their ability to alter the state of the AFS Client 
+8. Some attempts have been made to restrict the ability  
+of users to alter the state of the AFS Client 
 Service.  For example, the following fs.exe commands are now restricted to 
 Administrator:
 
@@ -157,10 +190,17 @@ not via "fs sysname".
 Some of the AFS Client Configuration Control Panel options are also restricted 
 to use by the "Administrator" account.
 
-9. As of 1.3.65, the AFS Client should support UNC paths everywhere.
+
+9. The AFS Client should support UNC paths everywhere.  Power users that make
+extensive use of the command line shell, cmd.exe, might want to consider using 
+JP Software's 4NT command processor.  Unlike cmd.exe, 4NT does fully support
+UNC paths and can use a UNC path as the default device.
+
 
 10. The AFS Client ships with its own version of aklog.exe which should be 
-used in preference to those obtained by third party sources.
+used in preference to those obtained by third party sources.  The OpenAFS
+aklog.exe supports Kerberos 5 as well as the ability to auto-generate
+pts IDs for user's obtaining tokens to foreign cells.
 
 Usage: aklog [-d] [[-cell | -c] cell [-k krb_realm]]
              [[-p | -path] pathname]
@@ -175,32 +215,55 @@ Usage: aklog [-d] [[-cell | -c] cell [-k krb_realm]]
       (default is Kerberos V)
    No commandline arguments means authenticate to the local cell.
 
-11. The AFS Server functionality provided with OpenAFS 1.3.65 does work but 
-should be considered experimental.  It has not been thoroughly tested.
+
+11. The AFS Server functionality provided with OpenAFS 1.3.70 might work but 
+should be considered highly experimental.  It has not been thoroughly tested.
+Any data which would cause pain if lost should be stored in an OpenAFS 
+Server on Windows.
+
+A few notes on the usage of the AFS Client Service if it is going to be 
+used with the OpenAFS AFS Server:
+
+(a) When the AFS Server is installed Freelance mode must be turned off.  
+
+(b) The AFS Server and related tools only support the built in kaserver
+(Kerberos IV).  If the AFS Server is being used, MIT Kerberos for Windows
+should not be used.
+
 
 12. The OpenAFS for Windows installers now include Symbol information which 
 should be installed if you are experiencing problems and need to send crash 
-reports.
+reports.  This is true in both the release and the debug versions of the 
+installers.  The differences between the release and debug versions are 
+whether or not the binaries were compiled with optimization; whether the
+debug symbols are installed by default; and whether additional debug 
+statements were compiled into the binaries.
+
 
-13. OpenAFS for Windows does not support files larger than 2GB.
+13. OpenAFS for Windows does not support files larger than 2GB.  
 
-14. There are known problems running the AFS Client on Hyperthreaded 
-Pentium 4 machines.  As of 1.3.70, a registry entry may be created to specify
+
+14. There are reported problems running the AFS Client on Hyperthreaded 
+Pentium 4 machines.  A registry entry may be created to specify
 that the AFS Client Service should only use a single processor.  If you have
-a hyperthreaded system it is strongly advised that this registry value be set.
-See "registry.txt" for details on the MaxCPUs value. 
+a hyperthreaded system and you are experiencing crashes, it is advised that
+you create the "MaxCPUs" registry value and set it to "1".
+See "registry.txt" for details. 
+
 
-15. OpenAFS for Windows currently requires the use of TCP based RPC. If the 
-machine is restricted to Local RPC only, you will be unable to store tokens.
-As of 1.3.70, Local RPC is used as the default RPC mechanism for setting 
-tokens.  TCP RPC is still used for debugging and other functions.
+15. Local RPC is used as the default RPC mechanism for setting 
+tokens.  TCP RPC is required to be installed and is used for debugging 
+and other functions.
 
-16. As of 1.3.70, OpenAFS for Windows automatically open ports in the Windows 
+
+16. OpenAFS for Windows automatically open ports in the Windows 
 Internet Connection Firewall.
 
+
 17. The OpenAFS for Windows installer by default activates a weak form of 
 encrypted data transfer between the AFS client and the AFS servers.  This
-is often referred to as "crypt" mode.
+is often referred to as "fcrypt" mode.
+
 
 18. OpenAFS 1.3.70 adds support for authenticated SMB connections using 
 either NTLM or GSS SPNEGO (NTLM, Kerberos 5, ...).  In previous versions
@@ -224,6 +287,7 @@ a non-MS KDC for authentication, then your KDC administrator will have to
 add these service principals to the list of principals to be maintained
 for each host.
 
+
 19. As of 1.3.70, INI files are no longer used for the storage of AFS 
 configuration data.  No longer are there any AFS related files stored in the
 %WINDIR% directory.  The CellServDB file is no longer called "afsdsbmt.ini"
@@ -234,6 +298,7 @@ IMPORTANT: while the CellServDB file location and freelance mountpoint
 data will be automatically migrated; there is no mechanism for automatic
 migration of Submounts, Drive Mappings, Active Maps, and CSCPolicy data.
 
+
 20. As of 1.3.70, the OpenAFS Client is compatible with Windows XP SP2
 and Windows 2003 SP1.  The Internet Connection Firewall will be 
 automatically adjusted to allow the receipt of incoming callback messages 
@@ -241,10 +306,12 @@ from the AFS file server.  In addition, the appropriate Back Connection
 entries are added to the registry to allow SMB authentication to be 
 performed across the loopback connection.
 
+
 21. As of 1.3.70, the OpenAFS Client Service supports the CIFS Remote
 Admin Protocol which provides browsing of server and share information.
-This significantly enhances the functionality of AFS volumes within the
-Explorer Shell.
+This significantly enhances the interoperability of AFS volumes within the
+Explorer Shell and Microsoft Office applications.
+
 
 22. OpenAFS will now automatically forget a user's tokens upon Logoff
 unless the user's profile was loaded from an AFS volume.  In this situation
@@ -252,12 +319,18 @@ there is no mechanism to determine when the profile has been successfully
 written back to the network.  It is therefore unsafe to release the user's
 tokens.
 
+
 23. Terminal Server installations.
-When installing under Terminal Server, you must execute the installer
-from within the Add/Remove Programs Control Panel.  Failure to do so 
+When installing under Terminal Server, you must execute the NSIS installer
+(.exe) from within the Add/Remove Programs Control Panel.  Failure to do so 
 will result in AFS not running properly.  The AFS Server should not 
 be installed on a machine with Terminal Server installed.
 
+24. AFS is a Unix native file system.  As such the OpenAFS client attempts
+to treat the files stored in AFS as they would be on Unix.  File and directory
+names beginning with a "." are automatically given the Hidden attribute so
+they will not normally be displayed.
+
 ------------------------------------------------------------------------
 
 Reporting Bugs:
index b0fff3a..8d4e273 100644 (file)
@@ -139,7 +139,7 @@ List of unfunded projects:
       Currently there is no synchronization of thread creation which results in timing 
       conflicts; and there is no attempt to cleanly shutdown the service which causes 
       problems when restarting and prevents the implementation of a persistent cache
-   3. Implement a persistent cache
+   3. Implement a persistent cache (requires item 2)
    4. Prevent panic situation when the root.afs volume is not reachable and 
       the AFS Client Server is not using Freelance mode
    5. Prevent panic situation when the IP address to which the SMB server is bound is removed 
@@ -191,7 +191,8 @@ List of unfunded projects:
   20. Correct the problems with overlapped writes which adversely affect 
       Microsoft Office applications storing documents and temporary files
       within AFS volumes
-  21. Development of afsmap.exe tool to provide AFS aware NET USE functionality
+  21. Add support for SMB/CIFS Digital Signatures
+  22. Development of afsmap.exe tool to provide AFS aware NET USE functionality
       afsmap.exe <drive> <afs-path> [/PERSISTENT]
       afsmap.exe <drive> <unc-path> [/PERSISTENT]
       afsmap.exe <drive> /DELETE