With Domino 4.6, Network News Transfer Protocol (NNTP) joins the integrated suite of Domino services for secure and interactive applications. Using the standard Internet NNTP protocol, the Domino 4.6 NNTP server can participate in the distribution of public USENET news and private discussion groups over the Internet. Domino 4.6 NNTP users can view either private discussion groups or public USENET newsgroups from Notes, from a standard news reader client or from a Web browser.
USENET news is one of the most popular services on the Internet. The public newsgroups provide discussion areas full of articles and messages on any topic -- technical, recreational, controversial. Since its inception with RFC 977, NNTP evolved as an information exchange of users with common interests -- a virtual water-cooler in a cybernetic hallway. The number of USENET newsgroups numbers in the thousands, covers a multitude of subjects, and grows at a regular rate. The USENET newsgroups are distributed as newsfeeds using the NNTP protocol and NNTP servers.
Domino serves up the news
The newest member of the Domino 4.6 suite supports the Internet NNTP protocol. What does this mean to the news reading user?
- Domino fully supports user participation in USENET newsgroup discussions. Domino servers can participate in the distribution of USENET news throughout the Internet because Domino NNTP server fully supports the newsfeeds to and from other NNTP servers, using the NNTP protocol.
- Domino offers flexibility of news reader clients, letting the user participate in newsgroup discussions by reading and posting articles from Notes, from a client news reader using the NNTP protocol, or from a Web browser. This is an advantage for organizations whose networks contain multiple platforms and clients. It also allows non-Notes members of a Notes organization to participate in newsgroup discussions through a standard NNTP news reader or a Web browser.
- Domino supports remote dial-in to NNTP servers. Domino allows direct access to the NNTP server or indirect dial-in access by modem to a server that has direct access to the remote NNTP server.
- Domino provides Internet Secure Sockets Layer (SSL) security for your server. Domino supports SSL version 3.0 authentication and encryption, as well as password authentication. Host access to the server and user access to specific newsgroups is easily configurable on the Domino server.
- Domino supports private and moderated NNTP discussion groups with the familiar Notes discussion views. Private groups can be distributed within your intranet or can be more widely accessed by authenticated users across the Internet. Domino also supports archiving and expiration for newsgroups and allows Notes clients or Web browser clients to create personal interest profiles for notification of news articles on specific topics.
- Domino assures that fidelity of MIME-formatted news messages is preserved.
The advantage of Domino for the news
By using the NNTP server, you have the option of applying Notes document management to newsgroups. "Once the newsgroup is hosted on a Domino server, you have all the power of Notes at your disposal for disseminating the information," explains lead developer Tom Galvin. His point is that everything you want in Notes is still there: replication that preserves access control, security, and the capability to create agents. "You can do things like replication or create summary mail agents. One example of a mail agent is to send yourself a doclink when the agent finds an article on certain subjects. You have replication after Domino accepts the newsfeeds and you can selectively replicate locally for reading off-line later. You get full text search."
Domino NNTP takes advantage of the Domino object store to serve up newsgroups to both Notes clients and Internet news readers. "One of the most powerful features of the Domino NNTP server is having a discussion database in a single object store. The information in the discussion can be accessed by multiple protocols and client types (NNTP, HTTP, Notes) simultaneously, unlike some other server architectures where the HTTP server has a different data store from the NNTP server," says Galvin.
There were challenges to coding the NNTP server. "Handling the large numbers of articles and groups transferred during a newsfeed," noted Terry Linsey, co-developer on NNTP.
"The challenge was supporting native HTML and MIME and to continue forward to future releases for complete support for these and other native types," adds Galvin. "But one of the best things was being able to leverage off other development teams, as in the case of SSL security. Some groups had already implemented this and we were able to apply their work to the NNTP server. Using NNTP with Domino lets anyone using any of the three types of clients -- Notes, Web browsers, or NNTP news readers to participate in the same discussion. For example, in a discussion of product support, contributors can post with Notes, or with the news readers or Web browsers included with Netscape Communicator or Microsoft Outlook. It's a better option for anything you want to publish on the Web because it allows a broader range of clients to access the discussion."
MIME and the NNTP server
To ensure that complex messages are delivered intact and are viewable through Notes or other news reader client, MIME was incorporated into the NNTP server. MIME is the Internet draft standard that handles non-ASCII text and multimedia. (Be sure to read the MIME article at http:/www.notes.net). If you open a complex news message in Notes, you will see the text of the message, any file attachments that were included with the message, and an attachment with an extension of .nws. Double-click on the .nws file to view the entire message in Outlook. If you view the news message in Microsoft Outlook or open it in a news reader client, you will see the news posting (or hear it if an audio file is included) as it was created in a news reader client. In either case, fidelity is preserved.
Domino 4.6 NNTP security features
Perhaps the most critical feature of the Domino 4.6 NNTP server is the configurable security, which applies to all NNTP newsreaders and remote NNTP servers accessing your Domino server. You can configure all of the following security features on your Domino NNTP server:
- Secure Sockets Layer (SSL) v3 Encryption and Authentication. Domino supports SSL encryption and accepts SSL client certificate authentication over an SSL port.
- User Authentication. Name and password authentication is configurable over the standard TCP port and over the SSL port. Users must log on to the Domino NNTP server using a username/password pair that is recognized by the server in the Public Address Book. Authenticated users are permitted to access newsgroups based on newsgroup ACLs.
- Anonymous Access. Domino can be configured to allow Anonymous user access over the standard TCP port or over the SSL port (or both). Anonymous users can access all newsgroups that permit Anonymous access in the ACL.
- Restricted Host Access. The Domino NNTP server can be configured to grant or to deny access by default to all NNTP clients or remote NNTP servers. Exceptions to the default access can be listed and can include wildcards. For example, you can "Deny" access to all hosts except 111.222.333.*. This setting would only allow access to your server from machines on that subnet; or you can "Grant" access to all hosts except 111.222.333.* , which would let all hosts access your server, except machines on that subnet.
- Restricted Newsgroup Access. Using access control lists (ACLs), you can restrict access to individual newsgroups. For example, when you create a private newsgroup, you can set the ACLs to allow internal users to read and post articles to the group (Author access), while allowing external Internet users to read articles but not to post new articles (Reader access).
- Restricted Newsgroup Posting. You can configure your Domino NNTP server to prohibit posting from all NNTP clients and/or to prevent receiving new articles from remote NNTP servers.
Managing the newsfeeds
Administrators must be able to manage the newsfeeds -- the distribution of articles between NNTP servers. USENET newsgroups number in the thousands. Although many groups are technically-oriented and useful in the workplace, do you need access to all of them? Do you want access to all of them, as some may be controversial or offensive to participants at your site? Do you have the resources to handle the massive amounts of data in a USENET newsfeed?
Domino NNTP server lets you select the newsgroups you want and choose from the newsfeed type that complies with your organization's policies. Newsfeeds are configurable in the Connection document and the Server document. The convenient naming hierarchy facilitates the use of the wildcard for specifying groups. For example, many technical newsgroups reside under the "comp" hierarchy. On a wildcard search, you could use comp.* or comp.os.*
For each newsfeed you must select a newsfeed type that determines which server initiates the feed and in which direction the articles are transferred. You can select from the following types:
- PULL feed: Your server initiates the connection, requests newly posted articles from the remote server, and stores the new articles.
- PUSH feed: Your server initiates the connection and sends newly posted articles to the remote server.
- ACCEPT feed: Your server accepts a connection from a remote NNTP server that sends newly posted articles to your server. An Accept feed is the opposite of a Push feed -- one server pushes, the other accepts. This is the most common method of distributing USENET news.
- PULL- PUSH feed: A combination of the PULL and PUSH feeds. Your server initiates a connection to a remote NNTP server, requests or pulls newly posted articles from the remote server and then sends or pushes articles to the remote server that have been posted locally since the previous newsfeed.
An additional newsfeed type "pulls from" your Domino server. A remote NNTP server connects to your server and requests your server to send it newly posted articles. The connection is defined on the remote server and is not a newsfeed type that you choose in the Connection document.

NNTP configuration and installation
Domino NNTP server is part of the new simplified installation as a selection or can be added manually after the installation. To access USENET groups or to allow Internet users to access your private discussion groups, you must establish a connection with an Internet service provider (ISP).
As the administrator, set up the Domino NNTP server in the Public Address Book Server document. You will find a section called Internet Port and Security Configuration for specifying SSL security and encryption and port settings, and a section called NNTP server in which you specify news feed and news reader parameters, and administrator options (such as logging). In addition, for each newsfeed that your server will accept or initiate, you need a Connection document to the remote server. The only exception is for a newsfeed in which you allow a remote server to pull articles from your server. The Pull feed is restricted by the host access restrictions that apply to all incoming connections.
If you are planning to participate in USENET newsgroups, consider the following issues:
- Which newsgroups do you want to send or receive?
- Do you have enough disk space to store the newsfeeds and archived articles? Conservative estimates put the daily USENET newsfeed distribution at 4 to 5 GB.
- What is your organization's policy on posting to public USENET newsgroups? Do you want an employee to post personal opinions under the company logo? Consider setting up a policy for postings from your organization and publish it within your organization.
To configure the news, you must complete the following tasks:
- Set up newsfeeds in the server Connection document.
- Set up server and client security in the Server document.
- Set up capacity and posting restrictions in the Server document.
- Set up access control on individual database access control lists.
Newsfeed connections
First, set up the Connection documents for connections to the remote NNTP servers for the newsfeeds.
- Choose Create - Server - Connection.
- Choose News/NNTP as the connection type.
- Name your Domino NNTP server as the Source.
- Choose Direct or Dial-in for the newsfeed. If you are connecting to the server locally, choose Direct. You can also have a dial-in connection to the server. You will be prompted to provide the name of the Connection document that contains the phone number information for the dial-up server.
- Name the destination server (the remote NNTP server). Enter the fully qualified Internet host name or IP address of the remote NNTP server.
- In the NNTP News Feed Parameters section:
- Select the type of newsfeed and the newsgroups to transfer. Use wildcards to include entire hierarchies (comp*, news* ). Choose whether to use authentication and/or SSL encryption, and select the schedule for the feed.
- Choose Automatic or Manual creation of new newsgroups. Selecting automatic creation allows your Domino server to automatically create a new newsgroup on your server for each newsgroups included in a newsfeed. Selecting manual prevents your server from automatically creating newsgroups and allows your server to add articles to existing groups only.
- Save and close.
Server Security
Next, set up security in the Server document for incoming client and server connections.
- Choose Create - Server - Server to open the Server document (see the following diagram).
- Open the Internet Port and Security Configuration section to specify the port settings for incoming access to the News (NNTP) service. Default port numbers should be appropriate. Enable the TCP/IP and/or SSL ports for incoming connections and decide if you want to allow anonymous or authenticated access. If you require password authentication on TCP or SSL, make sure to add an Internet password in the Person document for the user/server.
Set up capacity and newsgroup preferences
While the Server document is still open, set up capacity and posting restrictions for the newsfeeds and news reader clients, and choose other optional administrative tasks.
- Open the NNTP Server section. In the Basics section, enter the NNTP administrator's Notes/Domino name, select a logging level, and configure host access.
- In the News Reader Parameters section, select whether to allow posting, and set capacity and a maximum timeout for the news reader clients Defaults are provided for the maximum post sizes and maximum connection size for the news reader client.
- In the News Feed Parameters section, select whether to allow posting to your NNTP server during newsfeeds, set capacity for the postings, and the maximum timeout. Defaults are provided for the maximum posting sizes and maximum connection size for a news feed.
Set the access control for specific newsgroups
Set the access control on individual newsgroup databases. To access newsgroups that do not allow anonymous access, users and servers must provide acceptable authentication to the server. Authentication can consist of a user name/password pair or an SSL client certificate that can be found in a Person document of the Public Address Book. The username and password pair allow Domino to provide access to the server and to specific newsgroups.
Viewing the news
Newsgroup users can view the news in three ways:
From Notes: Simply open the database of any newsgroup that has been loaded onto the Domino server. The following diagram illustrates a workspace with several newsgroups, some technical, some not.
From an NNTP news reader client: Select your Domino server as the news server or discussion server. Standard NNTP news reader clients are included with Netscape Communicator and Microsoft Internet Explorer. Other standard news readers include Forte Free Agent, WinVN and NewsXpress. You will have to know the name of your news server and complete any configuration requirements for the news reader client.
From a Web browser using HTTP: Enter the URL of the Internet hostname of the server (for example, www.notes.net) and select from the list of databases on the server or specify the database to open the standard discussion view. From the browser's location field, enter the URL. Your administrator can help you determine the exact URL. If you create a private newsgroup on a server, you will have to distribute the URL to those users you are inviting to the newsgroup. The URL syntax typically has the form:
Creating newsgroups
Newsgroups can be created automatically during a newsfeed or they can be created manually by creating a Notes database using the NNTP discussion template NNTPDI46.ntf.
You have several options when you create a private newsgroup, which can be posted to the Internet to be accessed by authenticated users. The private newsgroup can have access control that allows Web browsers, Notes users, and news reader clients to share in the same Notes database. You can moderate the private newsgroup, maintain an interest profile and e-mail notification of interest articles, archive the group and expire articles.
Domino 4.6 NNTP servers -- Notes document management, full fidelity MIME messages, a choice of news reader clients and multi-levels of security applied to USENET newsgroups and available for your organization's private discussion groups.
CONTRIBUTORS
Tom Galvin implemented the Domino 4.6 server's support for the NNTP protocol. Tom is an avid mountain climber and recently climbed Mt. Rainier. When he isn't mountain climbing, Tom will continue to work on NNTP for future releases.
Terry Linsey is an Iris developer who worked on NNTP implementation into Domino. Terry enjoys hiking, rollerblading and skiing, which allow her to burn off calories generated by her other favorite pastime of cooking. Indian and Thai are current favorite cuisines.
Copyright 1997 Iris Associates, Inc. All rights reserved.