The JXplorer LDAP browser FAQ
Topics
What is JXplorer?What is special about JXplorer?
Feature List
Using java 1.3.1
Using PEM Private Keys
JXplorer resources
What is JXplorer?
JXplorer is an open source Java application that allows you to browse and search any LDAP directory. It uses Java 1.4 (or better) and supports LDAP v3 (rfc 2251). It displays the structure of the directory data as a tree view in the left panel, and the data of any particular entry in the directory in the right hand pane:
It also implements a number of directory-related utility functions, such as secure SSL connectivity, LDIF file reading/writing, graphical cut/copy/paste/delete, and supports the Unicode international character set.
What is special about JXplorer?
Basically It's open source, cross platform, and has a huge feature list...
JXplorer is a fully functional piece of open source software with advanced security integration and support for the more difficult and obscure parts of the ldap and dsml protocol. It has been tested and run on Windows, Solaris, Linux and OS390, and should run on any java supporting operating system.
JXplorer was donated to the open source community by Computer Associates, where it was first developed as part of the eTrust Direcotry project.
Features
It's features include:
LDAP
-
Standard ldap operations: add/delete/copy/modify
-
Complex operations: tree copy and tree delete
-
LDIF file format support
-
drag-n-drop browsing operation
-
multi valued rdns
-
binary attributes
-
Certificates and Password viewers/editors
Security
-
SSL and SASL authentication
-
pluggable security providers
-
Graphical certificate/key store
Search Tools
-
GUI based search tool for complex filter construction
-
Raw ldap search filter entry
-
'Quick Search' tool bar
Extensible Architecture
-
HTML templates/forms for data display
-
pluggable editors/viewers
-
highly user configurable - graphics/branding etc.
-
ldap objectClass based Java plugins
Fully Internationalized
-
Full i18n support
-
User translatable
-
Handles Unicode characters
-
Special characters / UTF8 in distinguished names.
Schema Handling
-
Downloads schema from directory on connection
-
Schema aware editing
-
User can browse Schema
-
Translates oids to human readable strings.
Using java 1.3
Firstly, this will probably only work on JX version 2. The only changes required should be to tweak the file com/ca/commons/jndi/JndiSocketFactory.java. There are two changes to be made in the code, both are commented. One is an include at the top, the other is to change the name of the invoked socket from "TLS" to "SSLv3". You'll also need to make sure that the jar file 'alljssl.jar' is in the JX distribution in the /jars directory.
I think you'll need at least java 1.3.1; I don't think we've tried it with 1.3 for a long time :-/ .
Later version of JX *could* be made backwardly compatible, but it becomes increasingly difficult since use has been made of the regexp capabilities of java 1.4 in places...
Using PEM Private Keys (thank you Trevor Horsfall!)
In my wanderings through too many RFCs and OpenSSL help pages, I have finally mastered the lost art of Importing Private Keys into JXplorer.
JXplorer is expecting a unencrypted PKCS8 format private key in a PEM file, yet (pre JX v3.0) insists that the key begins with ---- BEGIN ENCRYPTED PRIVATE KEY ----.
To get around this problem, simply:
-
Produce your standard RSA private key in a PEM file
-
Run openssl pkcs8 -in key.pem -topk8 -nocrypt -out pkcs8key.pem
-
Then open pkcs8key.pem in your favourite text editor and add the word ENCRYPTED to the BEGIN and END markers.
-
Now JXplorer will happily import your private key.
Chris is currently fixing JXplorer to support the correct -----BEGIN PRIVATE KEY------ header. This is LabTrack # 3730. (and was fixed in JX 3.0 - CB)
Resources
-
LDAP specifications:
RFC 2251: core ldap description
RFC 2252: attribute syntax
RFC 2253: UTF-8 distinguished names
RFC 2254: Search Filters
RFC 2255: LDAP URLs
RFC 2256: default ldap user schema RFC 2849: LDIF file format -
Open source JXplorer home pages:
pegacat.com/jxplorer
sourceforge.net/projects/jxplorer/
Translations
Translations are available in Chinese (Modern and Traditional), German, French and Hungarian.
In addition this FAQ page has been translated into Spanish language by Maria Ramos from Webhostinghub.com/support/edu