summaryrefslogtreecommitdiff
path: root/cifs.upcall.rst.in
diff options
context:
space:
mode:
Diffstat (limited to 'cifs.upcall.rst.in')
-rw-r--r--cifs.upcall.rst.in200
1 files changed, 76 insertions, 124 deletions
diff --git a/cifs.upcall.rst.in b/cifs.upcall.rst.in
index 8f4ee62..1b8df3f 100644
--- a/cifs.upcall.rst.in
+++ b/cifs.upcall.rst.in
@@ -7,178 +7,131 @@ Userspace upcall helper for Common Internet File System (CIFS)
--------------------------------------------------------------
:Manual section: 8
-
********
SYNOPSIS
********
-.. code-block:: perl
-
- cifs.upcall [--trust-dns|-t] [--version|-v] [--legacy-uid|-l]
- [--krb5conf=/path/to/krb5.conf|-k /path/to/krb5.conf]
- [--keytab=/path/to/keytab|-K /path/to/keytab] {keyid}
-
-
+ cifs.upcall [--trust-dns|-t] [--version|-v] [--legacy-uid|-l]
+ [--krb5conf=/path/to/krb5.conf|-k /path/to/krb5.conf]
+ [--keytab=/path/to/keytab|-K /path/to/keytab] {keyid}
***********
DESCRIPTION
***********
-
This tool is part of the cifs-utils suite.
-\ **cifs.upcall**\ is a userspace helper program for the linux CIFS client
+``cifs.upcall`` is a userspace helper program for the linux CIFS client
filesystem. There are a number of activities that the kernel cannot
easily do itself. This program is a callout program that does these
things for the kernel and then returns the result.
-\ **cifs.upcall**\ is generally intended to be run when the kernel calls
+``cifs.upcall`` is generally intended to be run when the kernel calls
request-key(8) for a particular key type. While it can be run
directly from the command-line, it's not generally intended to be run
that way.
-
*******
OPTIONS
*******
-
-
-\ **-c**\
-
- This option is deprecated and is currently ignored.
-
-
-
-\ **--no-env-probe|-E**\
-
- Normally, \ **cifs.upcall**\ will probe the environment variable space of
- the process that initiated the upcall in order to fetch the value of
- \ ``$KRB5CCNAME``\ . This can assist the program with finding credential
- caches in non-default locations. If this option is set, then the
- program won't do this and will rely on finding credcaches in the
- default locations specified in \ *krb5.conf*\ . Note that this is never
- performed when the uid is 0. The default credcache location is always
- used when the uid is 0, regardless of the environment variable setting
- in the process.
-
-
-
-\ **--krb5conf|-k=/path/to/krb5.conf**\
-
- This option allows administrators to set an alternate location for the
- \ *krb5.conf*\ file that \ **cifs.upcall**\ will use.
-
-
-
-\ **--keytab=|-K=/path/to/keytab**\
-
- This option allows administrators to specify a keytab file to be
- used. When a user has no credential cache already established,
- \ **cifs.upcall**\ will attempt to use this keytab to acquire them. The
- default is the system-wide keytab \ */etc/krb5.keytab*\ .
-
-
-
-\ **--trust-dns|-t**\
-
- With krb5 upcalls, the name used as the host portion of the service
- principal defaults to the hostname portion of the UNC. This option
- allows the upcall program to reverse resolve the network address of
- the server in order to get the hostname.
-
- This is less secure than not trusting DNS. When using this option,
- it's possible that an attacker could get control of DNS and trick the
- client into mounting a different server altogether. It's preferable to
- instead add server principals to the KDC for every possible hostname,
- but this option exists for cases where that isn't possible. The
- default is to not trust reverse hostname lookups in this fashion.
-
-
-
-\ **--legacy-uid|-l**\
-
- Traditionally, the kernel has sent only a single uid= parameter to the
- upcall for the SPNEGO upcall that's used to determine what user's
- credential cache to use. This parameter is affected by the \ **uid=**\
- mount option, which also governs the ownership of files on the mount.
-
- Newer kernels send a creduid= option as well, which contains what uid
- it thinks actually owns the credentials that it's looking for. At
- mount time, this is generally set to the real uid of the user doing
- the mount. For multisession mounts, it's set to the fsuid of the mount
- user. Set this option if you want cifs.upcall to use the older \ **uid=**\
- parameter instead of the creduid= parameter.
-
-
-
-\ **--version|-v**\
-
- Print version number and exit.
-
-
-
+-c
+ This option is deprecated and is currently ignored.
+
+--no-env-probe|-E
+ Normally, ``cifs.upcall`` will probe the environment variable space of
+ the process that initiated the upcall in order to fetch the value of
+ ``$KRB5CCNAME``. This can assist the program with finding credential
+ caches in non-default locations. If this option is set, then the
+ program won't do this and will rely on finding credcaches in the
+ default locations specified in *krb5.conf*. Note that this is never
+ performed when the uid is 0. The default credcache location is always
+ used when the uid is 0, regardless of the environment variable setting
+ in the process.
+
+--krb5conf|-k=/path/to/krb5.conf
+ This option allows administrators to set an alternate location for the
+ *krb5.conf* file that ``cifs.upcall`` will use.
+
+--keytab=|-K=/path/to/keytab
+ This option allows administrators to specify a keytab file to be
+ used. When a user has no credential cache already established,
+ ``cifs.upcall`` will attempt to use this keytab to acquire them. The
+ default is the system-wide keytab */etc/krb5.keytab*.
+
+--trust-dns|-t
+ With krb5 upcalls, the name used as the host portion of the service
+ principal defaults to the hostname portion of the UNC. This option
+ allows the upcall program to reverse resolve the network address of
+ the server in order to get the hostname.
+
+ This is less secure than not trusting DNS. When using this option,
+ it's possible that an attacker could get control of DNS and trick the
+ client into mounting a different server altogether. It's preferable to
+ instead add server principals to the KDC for every possible hostname,
+ but this option exists for cases where that isn't possible. The
+ default is to not trust reverse hostname lookups in this fashion.
+
+--legacy-uid|-l
+ Traditionally, the kernel has sent only a single uid= parameter to the
+ upcall for the SPNEGO upcall that's used to determine what user's
+ credential cache to use. This parameter is affected by the uid=
+ mount option, which also governs the ownership of files on the mount.
+
+ Newer kernels send a creduid= option as well, which contains what uid
+ it thinks actually owns the credentials that it's looking for. At
+ mount time, this is generally set to the real uid of the user doing
+ the mount. For multisession mounts, it's set to the fsuid of the mount
+ user. Set this option if you want cifs.upcall to use the older uid=
+ parameter instead of the creduid= parameter.
+
+--version|-v
+ Print version number and exit.
************************
CONFIGURATION FOR KEYCTL
************************
-
-\ **cifs.upcall**\ is designed to be called from the kernel via the
+``cifs.upcall`` is designed to be called from the kernel via the
request-key callout program. This requires that request-key be told
-where and how to call this program. The current \ **cifs.upcall**\
+where and how to call this program. The current ``cifs.upcall``
program handles two different key types:
+cifs.spnego
+ This keytype is for retrieving kerberos session keys
+
+dns_resolver
+ This key type is for resolving hostnames into IP addresses. Support
+ for this key type may eventually be deprecated (see below).
+
+ To make this program useful for CIFS, you'll need to set up entries
+ for them in request-key.conf(5). Here's an example of an entry for
+ each key type::
-\ **cifs.spnego**\
-
- This keytype is for retrieving kerberos session keys
-
-
-
-\ **dns_resolver**\
-
- This key type is for resolving hostnames into IP addresses. Support
- for this key type may eventually be deprecated (see below).
-
- To make this program useful for CIFS, you'll need to set up entries
- for them in request-key.conf(5). Here's an example of an entry for
- each key type:
-
-
- .. code-block:: perl
-
#OPERATION TYPE D C PROGRAM ARG1 ARG2...
#========= ============= = = ================================
create cifs.spnego * * @sbindir@/cifs.upcall %k
create dns_resolver * * @sbindir@/cifs.upcall %k
-
-
- See request-key.conf(5) for more info on each field.
-
- The keyutils package has also started including a dns_resolver
- handling program as well that is preferred over the one in
- \ **cifs.upcall.**\ If you are using a keyutils version equal to or
- greater than 1.5, you should use \ ``key.dns_resolver``\ to handle the
- \ ``dns_resolver``\ keytype instead of \ **cifs.upcall**\ . See
- key.dns_resolver(8) for more info.
-
+ See request-key.conf(5) for more info on each field.
+ The keyutils package has also started including a dns_resolver
+ handling program as well that is preferred over the one in
+ ``cifs.upcall``. If you are using a keyutils version equal to or
+ greater than 1.5, you should use ``key.dns_resolver`` to handle the
+ ``dns_resolver`` keytype instead of ``cifs.upcall``. See
+ key.dns_resolver(8) for more info.
********
SEE ALSO
********
-
request-key.conf(5), mount.cifs(8), key.dns_resolver(8)
-
******
AUTHOR
******
-
Igor Mammedov wrote the cifs.upcall program.
Jeff Layton authored this manpage.
@@ -187,4 +140,3 @@ The maintainer of the Linux CIFS VFS is Steve French.
The Linux CIFS Mailing list is the preferred place to ask questions
regarding these programs.
-