This page is a part of XSecurePro64 online Help Manual.
XSecurePro64 is X Server for windows by Labtam bringing your PC to Unix and X-Windows. Visit Home of X Server for windows for more information.



XServer & XSettings & Font Service


I am able to get xterm on my Unix box, but I am unable to get xterm on my PC when I telnet-ssh to my Linux box running Kubuntu. When I try to run xterm from the telnet-ssh console on my PC I get the "Error of failed request" message.

The reason of this error message is absence of the font requested by xterm on your Kubuntu machine:
"-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1".
One simple solution is to connect your XServer to any font server that supports these fonts (see section Font Server in chapter Font Control). Another solution is to download the Unicode ISO10646 fontset from Internet sites and include it in Font Path for your XServer to use it (see section Font Directory in chapter Font Control).


If I start one Xsession as normal privileged user and then afterwards another Xsession logged in as administrator they will both get DisplayNumber 0 which is pretty bad.

Yes, this is true. This may take place under Win2003 (and under WinXP with especial settings).

The Auto-DisplayNumber mode requires to create global Windows named memory objects to store necessary information. The default Vista security state denies to create such a memory object. Also, non-privileged users are not allowed to create shareable Windows objects.

You have two ways to avoid this:
1) Start XServer firstly from the administrative user (as you did)
2) Allow INTERACTIVE users to Create global objects.
To do this, start the Administrative tools - Local Security Settings - User Rights Assignment dialog, choose Property of the Create global objects policy and add the INTERACTIVE group to the group list (it may already contain the ADMINISTRATORS and SERVICE groups).


Is it possible to convert fonts used in Motif to be used with XSecurePro64 (the fonts with the .pcf suffix)?

Yes, it is. You should create a directory for .pcf files, create the fonts.dir and fonts.ali files in it, and add the corresponding item to Font Path (the Priority ordered path box) by using XSettings. XServer makes use of .pcf fonts the same way as .snf fonts.

You can enable Trace Fonts Requests in XSettings to find out fonts that are absent (from the xserver.out file).

There are several ways to add fonts to XSecurePro64 (see Chapter Font Control):

1) Connect to a remote font server which provides fonts you need.

You can launch XSettings, press the FontPath button, enter your font server specification in the Font directory field, select a font server specification in the Priority ordered path box, and Insert the Font directory into the path list before/after the selected item.

To detect required font directories and their order on a remote host, please logon to the remote host by using the console (under the same account), and then run the command line "xset -q" from the xterm window or from the console. Please store the "Font Path:" from the output of this command.

You should add the missing paths to these fonts in the same order into the "catalogue=" line of the font server's config-file. Then, if the font server is running, restart it or re-read its config-file.

E.g., the config-file for Solaris is /usr/openwin/lib/X11/fontserver.cfg, for Linux /usr/X11R6/lib/X11/fs/config.

Note: If you are using a font server located on a Linux host, you cannot check its config-file because all fonts are included in the config-file.

If you are using X11 Forwarding for X-applications, you should use the forwarding for port 7100 of a font server too.

2) Copy fonts you need (.snf or .pcf files only) into a directory on your PC and include its name into the Font Path list.

Example for Asian fonts:

If you have Chinese, Japanese, Korean, or other 16-bit fonts supported by a UNIX host, you should:

  1. Uncompress required font files (.pcf or .snf files only) to a new directory on your host (say, Asianfonts)

  2. Run the "mkfontdir" utility for this directory to create the fonts.dir file.

    To map new names to existing fonts, you should create the fonts.alias file (or edit the existing one).

  3. Create a new directory under the FONTS folder on your PC (say, .../FONTS/Asianfnt) to contain new fonts

  4. Copy all binary font files (.pcf or .snf files only) from the Asianfonts directory of your host to the .../FONTS/Asianfnt directory on your PC (e.g., by ftp in the binary mode)

  5. Copy the fonts.dir text file from the Asianfonts directory of your host to the .../FONTS/Asianfnt directory on your PC (e.g., by ftp in the ASCII mode)

  6. Copy the fonts.alias text file from the Asianfonts directory of your host to the .../FONTS/Asianfnt directory on your PC (e.g., by ftp in the ASCII mode) as the fonts.ali file

  7. Add the path to the .../FONTS/Asianfnt directory on your PC to Font Path.

    You can launch XSettings, press the Font Path button, enter the directory name in the Font directory field or select it by using Browse, select a font source specification in the Priority ordered path box, and Insert the Font directory into the path list before/after the selected item.

  8. Check the .../FONTS/Asianfnt directory by using the XFontset Service utility.

    Then, you can view the Entire Fonts List of the .../FONTS/Asianfnt directory.

3) Use XSettings' PSEUDO fonts feature to emulate X-fonts with MS Windows fonts which actually exist on your PC.

4) Create aliases for fonts you need in a directory to substitute them with MS Windows fonts which actually exist on your PC and include the directory name into the Font Path list.

For example, the 'sun-fontspecific' fonts may be substituted with the 'adobe-fontspecific' fonts.

5) Edit the fonts.ali file in any existing font directory and create aliases for absent fonts to substitute them with existing fonts.

Of course, the first and second ways are preferable.

You can try to run the following command line

fsinfo -server fontserverhost:portnumber

If you get the message:

'/usr/openwin/bin/fsinfo: unable to open server "fontserverhost:portnumber'

then check:

  1. that the following font server line is present in the /etc/services file:

    fs 7100/tcp # Font server

  2. that this port (7100 in our case) is being listened on;

and run the following command on your host:

netstat -an | grep 7100

If you do not get any answer, then check configuration of the X font server on your host.


When trying to start some of our local UNIX applications, the following error was displayed - Cannot accept '/usr/local/Apstools/12.1/lib/fonts' FontPath Element.

You need to avoid this problem. While executing, your application adds a new item '/usr/local/Apstools/12.1/lib/fonts' to XServer's Font Path. This action is not legal for XSecurePro64's XServer because it works only with local Font Path and/or with a remote font server path.


When using the X Display manager the font that is on the screen is the same as the one I am using now. But when I log in from the host or HP Xterminal the font looks like a 'sans serif' or 'arial' type of font. How can I get the required font? I noted down the fonts that are loaded by an Hp-Xterminal when it boots up from the host. They are /usr/lib/X11/700X/fonts/hp-roman8/75dpi/system19.snf and system23.snf, system16.snf, system17.snf, system13.snf, ser11x19.snf. I copied these fonts to my local PC and added these fonts to the font path, but when I started the X Display manager, I received garbage on the screen, where the login and password words were before.

The HP-snf font format actually differs from the X11-snf font format. XSecurePro64's X-session processes only X11-snf fonts and cannot process HP-snf fonts. X-session cannot distinguish between these formats because they have the same file name extension.

You have to convert the HP-snf to X11-snf.


Cut and Paste did not work between windows (e.g., between W'95 Notepad and SUN/UNIX Textedit). I have still to try dragging and dropping a file between windows (e.g., UNIX Filemanager to W'95 File system).

In your case, you should choose the CLIPBOARD X Selection to provide the transfer needed.

To use the cut&paste functions, you should know the global cut buffers (X Selections) that your X-application uses for these operations (from X-application manuals).

Different X-applications can use different X Selections for cut&paste. For example, normally,

  • "xterm" uses the PRIMARY X Selection
  • "cmdtool" uses the CLIPBOARD X Selection
  • "dtterm" uses both (PRIMARY for mouse Button1/Button2 actions, CLIPBOARD for Edit menu's Copy/Paste actions).

Before cut&paste, you should correctly define the global cut buffer (X Selection) that XServer and your X-application will use.

For example, to copy text between xterm and MS WordPad, you should specify the PRIMARY X Selection for xterm and XServer before copying.

For the xterm window, you can define the buffer by choosing: Select Options/XSelection... PRIMARY/OK.

Make sure that the Auto Clipboard Copy&Paste check box in the XSettings dialog box is enabled. (See section A Note on Copy and Paste in chapter Using XServer.)

If you want to copy text from xterm to MS WordPad, you can do the following:

In the xterm window:

  1. Move the mouse pointer to the beginning of the text, hold down the mouse Button1 (usually left) while moving the pointer to the end of the text, and then release the button. The selected text is highlighted and saved in the PRIMARY global cut buffer.

In the WordPad window:

  1. Move the mouse pointer to the place where you want to insert the text from the buffer and click the mouse Button1 (usually left).

  2. Click the Edit menu, and then choose Paste (or Ctrl-V) to paste the text from the CLIPBOARD of MS Windows. The text selected in the xterm window will appear in the WordPad window.

If you want to copy text from MS WordPad to xterm, you can do the following:

In the WordPad window:

  1. Move the mouse pointer to the beginning of the text, hold down the mouse Button1 (usually left) while moving the pointer to the end of the text, and then release the button. The selected text is highlighted.

  2. Click the Edit menu, and then choose Copy (or Ctrl-C). The selected text is saved in the CLIPBOARD of MS Windows.

In the xterm window:

  1. Move the mouse pointer to the place where you want to insert the text from the buffer and click the mouse Button2 to paste the text from the PRIMARY X Selection. The text selected in the WordPad window will appear in the xterm window.

The mouse Button2 is normally the middle button or simultaneously pressed left and right buttons if you have enabled the Middle Button Emulation check box in the XSettings dialog box.


I would like to know what True color support means... Will True color work with more than 256 colors?

True color support (in Windows) means that a video-driver supports the color palette with 64K colors. XServer supports 256-color palette and CAN operate with any High/True-color video-driver of Windows.


Is there a difference between using the X-manager and the windows manager in cutting and pasting?

XSecurePro64 cannot write the X Selection/bitmap to a file.


Is it possible to print X application's windows to my local computer (MS Windows 98 printer) with XSecurePro64?

Yes, it is. On your local printer, you can print from MS Windows applications and from remote X applications as well (if the printer is accessible for them).

If you want to print from remote X applications to a printer connected to your PC (over the network),

  • Start XSecurePro64's LPD on your PC

  • Configure LPD to use your printer by users from the remote host

  • Configure your UNIX host (so the host could use LPD and your printer on your PC across the network)

  • Start X applications and print their windows from your host.

If you want to print an X application's window that you see on your display to a printer connected to your PC,

  • Make sure that the X application's window is active on your display

  • Press the Alt+Print Screen shortcut key to copy the window to MS Clipboard

  • Paste MS Clipboard to a MS Windows application you want to use (e.g., MS Paint)

  • Print the image from this application to your printer.

By using X Selections, you can transfer required text from your X application to a MS Windows application (e.g., from xterm to WordPad) and then print the whole document to your printer.


I want to run Netscape from my PC on the remote UNIX machine. I use 'your' telnet to log into the remote UNIX computer. There I can find my PC's IP address. I try to start 'xterm' on the UNIX machine. I think it does start in the 'background'. When I try to run, say, Netscape, 'it' complains that it cannot find 'display'. What the problem could be?

Make sure that your remote host is accessible from your PC. First, try to open a telnet connection to a remote host. If you can do that, then check whether you can start X-applications from the telnet session on your remote host:

  • Start X-session on your PC

  • Open the telnet connection to the remote host

  • Launch any X-application from the telnet session:

e.g.,

/usr/bin/X11/xterm -display IP_address_of_your_PC:0&
or
/usr/bin/X11/xterm -display Name_of_your_PC:0&

(in this case, you should add the name and IP-address of your PC into the /etc/hosts file on your Unix host).

Has the xterm window appeared on the screen of your PC?

If not, check that TCP ports 6000 - 60xx used by XServer on your PC are accessible from the remote host.

If yes, you can try to launch X-applications by using the Startup utility. First:

  • Find the configuration file of inetd, /etc/inetd.conf, (or xinetd) on the remote host (please find out which Internet service daemon is running on your remote host: inetd or xinetd)

  • Check that the following lines in the /etc/inetd.conf file of the Unix host are present and are not commented-out (by default, these lines are commented-out):

    "exec ..." for REXEC (512/tcp) (if you want to use rexec in Startup)

    "shell ..." for RSH (514/tcp) (if you want to use rsh in Startup)

    "login...." for RLOGIN (513/tcp) (if you want to use rlogin in Startup)

If the xinetd daemon is used on your remote host, it is recommended that you read corresponding manual pages for xinetd.

If these lines are present and are not commented-out, you can try to launch X-applications (or run any Unix command) by using Startup.

Launch Startup, select one of the start methods (REXEC/RSH/RLOGIN) supported by the Unix host (see the /etc/inetd.conf file of the Unix host), enter the Host Name or IP-address of the Unix host, User ID, and Password in corresponding fields of the Startup dialog box, enter any Unix command in the "Command" field (e.g. 'ls -l'), and then click the Execute button.

Is there any output of this command in the "Status Messages" field?

If yes, then enter the command launching xterm (e.g., /usr/X11R6/bin/xterm -display $(LOCALIP):0 ) and click the Execute button.

Has the xterm window appeared on the screen of your PC?

Also, you can try to use the XDMCP mode of XServer. If you want to use XServer in the XDMCP mode, please check that the xdm-daemon is running on the remote host and check XDMCP configuration.

To use XDMCP, you should launch XServer in the Single/Full or Multiple+RemoteWM mode because, if XServer is running in the Multiple mode, some remote window managers (including 'gnome' and KDE) close X-session when they detect any other running window manager (e.g., MS Windows window manager or local 'mwm').

To configure XServer, you should start the XSettings utility, select the Single/Full or Multiple+RemoteWM mode, enable the Use XDMCP check box, click the Settings button, and then specify XDMCP settings.

Before using XDMCP, make sure that XDMCP on the remote host listens to UDP port 177. To do so, run the "netstat -an|grep 177" command on the remote host. You may see from its output:

"udp 0 0 0.0.0.0:177 0.0.0.0:* "

(or for Solaris station: *.177 Idle)

If you do not see this, please check configuration of XDMCP on your remote host.

Also, make sure that UDP port 177 on the remote host is accessible from your PC (i.e. there are no any firewalls, etc. filtering these packages between your PC and the remote host).

If UDP port 177 on the remote host is not accessible from your PC, you cannot use XDMCP mode of XServer.

NOTES:

When XServer is running in the Single/Full or Multiple+RemoteWM mode, the remote window manager that you select will be used (e.g., 'olwm', CDE, 'twm', 'mwm', etc.).

If you want to use a remote window manager, please use the Single/Full or Multiple+RemoteWM mode. In this case, you should use the XDMCP mode or start any remote window manager from the Unix host (e.g., start 'xterm' and then start the required window manager from the xterm window). In this case, the remote window manager only provides the windows managing functions (moving, resizing, etc.).

Also, you can launch the local 'mwm' program (Motif Window Manager) on your PC from the X-session's Run menu (for the Single/Full or Multiple+RemoteWM mode). In this case, 'mwm' will provide the windows managing functions.

If you do not want to use a remote window manager, please use the Multiple mode. When XServer is running in the Multiple window mode, the MS Windows window manager is used and any other window manager is blocked.

Some remote window managers (including 'gnome' and KDE) close the X session if they detect any other running window manager. In this case, you cannot use the Multiple mode and should only use the Single/Full or Multiple+RemoteWM window mode.


Problem: I am new to using XServer from Windows and would like to use an SSH tunnel and display the entire gnome desktop on my Windows box.

If you have any X server running on your PC, you can launch an X application to this X server with any SSH client by using X11 Forwarding.

If a remote host supports SSH1 or SSH2 (i.e. the ssh-daemon is running), you can use the SSH session for logon to the remote host and then start any X application from the SSH session.

You can start remote X applications in the SSH mode of Telnet_SSH (XSecurePro64's Telnet_SSH acts as SSH client in the SSH mode). To do so, you should:

  • Launch Telnet_SSH

  • Enter the host name or IP address of your remote computer

  • Select the SSH interface

  • Click OK.

SSH automatically takes care of xauth, $DISPLAY, etc. The SSH client enables X Forwarding by default, automatically sets the DISPLAY environment variable on the server machine, and provides forwarding of any X11 connections with this DISPLAY over the secure channel.

Xauthority information is automatically generated and forwarded to the remote machine. The local client automatically examines incoming X11 connections and replaces the authorization data with the real data.

With XSecurePro64's Telnet_SSH, you can create an encrypted connection with a remote host and display any X applications on your PC. In this case, you cannot only use the XDMCP connection mode of XServer because SSH provides tunneling TCP packets only (it does not provide tunneling UDP packets).

In this case, your X-session can be as follows:

  • Start the sshd-daemon on your remote host (if it is not running)

  • Start X-session

  • Logon to the remote host through the SSH mode of Telnet_SSH

  • Start any X application (e.g. xterm&) from the SSH session by using the DISPLAY environment variable automatically set.

If the user is using X11 (the DISPLAY environment variable is set), the connection to the X11 display is automatically forwarded to the remote side in such a way that any X11 programs started from the shell (or command) will go through the encrypted channel, and the connection to the real X server will be made from the local machine. The user should not manually set DISPLAY from the SSH session. The DISPLAY value set by SSH will point to the server machine, but with a display number greater than zero. This is normal, and happens because SSH creates a "proxy" X server on the server machine for forwarding the connections over the encrypted channel.

Make sure that entry line "127.0.0.1 localhost" is present in the hosts system file of your PC. If you use "Access Control", you should include "localhost" into the "Valid Hosts File" (see section Using XSettings in chapter Configuring XSecurePro64).

If you are using RSA key to log in a UNIX host, you should use the ssh-keygen program on the host to create the authentication key for SSH. Then you should copy the created identity file to your PC.

You can use the Startup utility to launch X applications through the encrypted channel created by the SSH client of XSecurePro64. Through SSH connection, you can only use the REXEC method of Startup (if a remote host supports REXEC for localhost).

Before using SSH from the Startup utility, you should previously open an SSH connection to a remote computer. For example, to create the encrypted connection with your host,

  1. Start Telnet_SSH

  2. Select the SSH-1 or SSH-2 interface

  3. Fill in the Host field

  4. Click OK.

    The "SSH Authentication" window will appear.

  5. Fill in the User name field (e.g. John)

  6. Fill in the Passphrase field (e.g. Smith)

  7. Enable the Use plain password to log in check box

  8. Click OK.

When your SSH connection is open, the "Telnet_SSH" window will appear.

Then if you want to use the Startup utility (with REXEC) through the created encrypted channel,

  1. Start Startup

  2. Select REXEC as start method

  3. Fill in the Host Name/IP Address field

    (e.g. 127.0.0.1, or the "localhost" host name if it exists in the hosts system file of MS Windows).

  4. Fill in the User ID field (e.g. John)

  5. Fill in the Password field (e.g. Smith)

  6. Fill in the Command field

    (e.g. /usr/bin/X11/xterm -display localhost:10&).

    Note: You must use the same display that the "echo $DISPLAY" command shows in the Telnet_SSH session (but not 127.0.0.1:0).

  7. Select the line with a required SSH connection from the list box under the Use SSH Forwarding check box

  8. Check the Use SSH Forwarding check box

  9. Click the Execute button.

The Startup utility will open REXEC to the remote host through the encrypted connection.

You can use the FTP utility to connect to remote hosts through the encrypted channel created by the SSH client of XSecurePro64.

Before using SSH from FTP, you should previously open an SSH connection to a remote computer. For example, to create the encrypted connection with your host,

  1. Start Telnet_SSH

  2. Select the SSH-1 or SSH-2 interface

  3. Fill in the Host field

  4. Click OK.

    The "SSH Authentication" window will appear.

  5. Fill in the User name field (e.g. John)

  6. Fill in the Passphrase field (e.g. Smith)

  7. Enable the Use plain password to log in check box

  8. Click OK.

When your SSH connection is open, the "Telnet_SSH" window will appear.

Then if you want to use FTP through the created encrypted channel,

  1. Start FTP

  2. Fill in the Host ID field

    (e.g. 127.0.0.1, or the "localhost" host name if it exists in the hosts system file of MS Windows).

  3. Fill in the User Name field (e.g. John)

  4. Fill in the Password field (e.g. Smith)

  5. Check the Use SSH Forwarding check box

  6. Click the Connect button.

    The "SSH Forwarding" window will appear.

  7. Select the line with a required SSH connection from the list box

  8. Click OK.

FTP will open connection to the remote host through the encrypted connection.






Home | Product | Download | Order Now | Upgrade | Support | Pricing | Company Information | Contact Us


Labtam Copyright 1999 - 2009 LabtamTM Inc.