106 lines
2.6 KiB
Plaintext
106 lines
2.6 KiB
Plaintext
.\"
|
|
.\" Copyright (C) 2014 Red Hat, Inc. All Rights Reserved.
|
|
.\" Written by David Howells (dhowells@redhat.com)
|
|
.\"
|
|
.\" This program is free software; you can redistribute it and/or
|
|
.\" modify it under the terms of the GNU General Public Licence
|
|
.\" as published by the Free Software Foundation; either version
|
|
.\" 2 of the Licence, or (at your option) any later version.
|
|
.\"
|
|
.TH KEYUTILS 7 "21 Feb 2014" Linux "Kernel key management"
|
|
.\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
.SH NAME
|
|
keyutils \- in-kernel key management utilities
|
|
.\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
.SH DESCRIPTION
|
|
The
|
|
.B keyutils
|
|
package is a library and a set of utilities for accessing the kernel
|
|
\fBkeyrings\fP facility.
|
|
.P
|
|
A header file is supplied to provide the definitions and declarations required
|
|
to access the library:
|
|
.P
|
|
.RS
|
|
.B #include <keyutils.h>
|
|
.RE
|
|
.P
|
|
To link with the library, the following:
|
|
.P
|
|
.RS
|
|
.B \-lkeyutils
|
|
.RE
|
|
.P
|
|
should be specified to the linker.
|
|
.P
|
|
Three system calls are provided:
|
|
.TP
|
|
.BR add_key (2)
|
|
Supply a new key to the kernel.
|
|
.TP
|
|
.BR request_key (2)
|
|
Find an existing key for use, or, optionally, create one if one does not exist.
|
|
.TP
|
|
.BR keyctl (2)
|
|
Control a key in various ways. The library provides a variety of wrappers
|
|
around this system call and those should be used rather than calling it
|
|
directly.
|
|
.P
|
|
See the
|
|
.BR add_key (2),
|
|
.BR request_key (2),
|
|
and
|
|
.BR keyctl (2)
|
|
manual pages for more information.
|
|
.P
|
|
The \fBkeyctl\fP() wrappers are listed on the
|
|
.BR keyctl (3)
|
|
manual page.
|
|
.\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
.SH UTILITIES
|
|
.P
|
|
A program is provided to interact with the kernel facility by a number of
|
|
subcommands, e.g.:
|
|
.P
|
|
.RS
|
|
.B keyctl add user foo bar @s
|
|
.RE
|
|
.P
|
|
See the
|
|
.BR keyctl (1)
|
|
manual page for information on that.
|
|
.P
|
|
The kernel has the ability to upcall to userspace to fabricate new keys. This
|
|
can be triggered by \fBrequest_key\fP(), but userspace is better off using
|
|
\fBadd_key\fP() instead if it possibly can.
|
|
.P
|
|
The upcalling mechanism is usually routed via the
|
|
.BR request\-key (8)
|
|
program. What this does with any particular key is configurable in:
|
|
.P
|
|
.RS
|
|
.I /etc/request\-key.conf
|
|
.br
|
|
.I /etc/request\-key.d/
|
|
.RE
|
|
.P
|
|
See the
|
|
.BR request\-key.conf (5)
|
|
and the
|
|
.BR request\-key (8)
|
|
manual pages for more information.
|
|
.\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
.SH SEE ALSO
|
|
.ad l
|
|
.nh
|
|
.BR keyctl (1),
|
|
.BR keyctl (3),
|
|
.BR keyrings (7),
|
|
.BR persistent\-keyring (7),
|
|
.BR process\-keyring (7),
|
|
.BR session\-keyring (7),
|
|
.BR thread\-keyring (7),
|
|
.BR user\-keyring (7),
|
|
.BR user\-session\-keyring (7),
|
|
.BR pam_keyinit (8)
|