How printers and file sharing work in NX 3.5.0
Please note that printing and file sharing inside RDP sessions is not supported.
NX 3.5.0 supports both the SMBFS and CIFS protocols.
When the session is configured to enable printers and file-sharing, NX Client sends the 'client' option to the server, which contains the information related to the O.S. where the client is running.
Then the server will handle passing the information to the NX node.
If the selected protocol on the node is not the default for the client O.S., the node will notify the server and the server will pass to the client the 'File-sharing port' parameter to inform it of the need to tunnel the connection on the specified port.
The default protocol is:
CIFS for Windows NT based, Linux, Mac OS X and Solaris O.S.
SMBFS for Windows versions not based on NT.
If the client default sharing protocol is SMB (port 139) but the server can handle only CIFS (port 445) , the 'File-sharing port' parameter is set to 445 to notify NX Client that it has to redirect the samba request to that port.
If instead the client default sharing protocol is CIFS (port 445) but the server can handle only SMB (port 139) 'File-sharing port:' has to be set to 139 to notify NX client that it has to redirect the samba request to that port.
Please note that the NX node configuration file, namely /usr/NX/etc/node.cfg, provides the MountShareProtocol key to specify which protocol should be selected by the node.
This key can be set to the following values:
both, either SMB and CIFS protocol are supported, this is the default value.
smbfs, only SMB protocol is supported.
cifs, only CIFS protocol is supported.
none, no network file-sharing protocol is supported.
Other NX node configuration keys are:
To specify the path of base directory where the NX node should mount shares exported by the user
ShareBasePath = "$(HOME)/MyShares" To allow the node to use privileged scripts to manage the shares
EnableFileSharing = "1"
Please note that normally the tools for mounting and unmounting the shares can be set suid root to allow any unprivileged user to mount
his/her resources.
By clearing the suid bit and by letting the node use the privileged scripts, you can gain greater control on the host node, by allowing unprivileged users to mount their shares only within a NX session.
Configuration in the NX client GUI 3.5.0
In the "services" tab in the NX client configuration GUI you have the choice to either enable SMB printing and file sharing or to enable CUPS printing.
If you enable CUPS printing make sure that in the resources list there are only CUPS Printers and no SMB resources.
Notes for NX Client for Windows users
-
- Windows 98 doesn't support the CIFS protocol. To be able to mount shares in your NX session, you need to ensure that the NX node machine supports the SMB protocol.
- - On Windows XP SP2 the default SMB port 139 on loopback interface is disabled and only the CIFS protocol is supported. In this case, the NX node machine must support the CIFS protocol.
-
- On Windows XP users should make sure that the box "Allow network users to change my files" has been enabled to allow write access from network.
-
- It is possible to mount printers and shares without the need for providing a user password.
-
- If the user is getting back "Access Denied" on a Windows XP machine that is a member of a domain, you will have to
disable the local security policy "Accounts: Limit local account use of blank passwords to console only".
Notes for NX Client for Linux users
-
As stated at:
http://de.samba.org/samba/Linux_CIFS_client.html
The CIFS VFS is a virtual file system for Linux to allow access to servers and storage appliances [...]
Popular servers such as Samba, Windows 2000, Windows XP and many
others support CIFS by default. The CIFS VFS does not provide support
for older servers based on the more primitive SMB (Server Message
Block) protocol (you can use the Linux filesystem smbfs for these).If you are running NX client on an old Linux distribution, it is possible
that the CIFS protocol is not supported. In this case, you need to ensure
that your NX node machine O.S. supports the SMB protocol and the MountShareProtocol key in your NX node configuration file
doesn't forbid the use of SMB.
-
As stated at:
http://fedora.redhat.com/docs/release-notes/fc5/
7.3. Smbfs deprecated
The kernel implementation of smbfs to support the Windows file sharing
protocol has been deprecated in favor of cifs, which is backwards
compatible with smbfs in features and maintenance. It is recommended
that you use the cifs filesystem in place of smbfs.This means that, if your node is running on Fedora Core 5, or on any other Linux distributions not supporting SMB, and your NX client is running on a Linux distribution not supporting CIFS, a network filesystem can't be mounted.
How to print more information about the shares in system log
You can enable the debug level in the server and node logs by editing both the /usr/NX/etc/node.cfg and the /usr/NX/etc/server.cfg files and setting:
SessionLogLevel = "7"
Note: Starting from NX 3.0.0, configuration keys are provided in the camel case format. If you are still using a previous version of the software, the correspondent keys are named: MOUNT_SHARE_PROTOCOL, SHARE_BASE_PATH, ENABLE_FILE_SHARING and SESSION_LOG_LEVEL.
