shithub: tlsclient

ref: f208e59263d823ebdd8f4160825be3de63556a10
dir: /README/

View raw version
tlsclient: tlsclient(1) for unix

This repo contains:
	9cpu: rcpu(1) on unix
	tlsclient: tlsclient(1) on unix
	git-remote-hjgit: git remote helper for using hjgit repos.
	pam_p9.so: A pam module that authenticates against a 9front auth server.
	login_-dp9ik: An OpenBSD bsd auth executable that auths against a 9front auth server.

Most of the tlsclient code is pillaged from jsdrawterm: https://github.com/aiju/jsdrawterm
The main difference between tlsclient and drawterm is that tlsclient has stripped out the
plan9 kernel that runs in userspace. This means we use openssl for TLS and and don't provide
things like /mnt/term, but gain some more flexibility.

Usage:
	tlsclient [ -R ] [ -u user] [ -h host ] [ -a auth ] -p port cmd...
	9cpu [ -u user ] [ -h host ] [ -a auth ] cmd...

Example:
	9cpu -u moody -h shithub.us -a p9auth.shithub.us newrepo tlsclient

	# with git-remote-hjgit in your $PATH
	git clone hjgit://shithub.us/user/repo

OpenBSD:
	OpenBSD uses LibreSSL in place of OpenSSL. Unfortunately LibreSSL does
	not have PSK cipher suites. Tweak Make.config as required. Openssl is
	only used for tlsclient and rcpu, login_-dp9ik does not require it.


Configuring pam authentication:
	Many systems configure PAM differently so defer to your OS
	documentation for where to store pam_p9.so and which pam
	configuration needs to be changed. Pam_p9.so accepts
	a single argument within the pam configuration, that being
	the auth server to use. Something akin to the following
	should work as additions to a pam configuration.

	auth sufficent pam_p9.so flan
	account sufficent pam_p9.so flan
	
	With flan being the hostname or ip of the desired auth server.