xref: /openbsd-src/usr.bin/login/login.1 (revision 1e5a9493c17863605b607cc32738d5439b513872)
1.\"	$OpenBSD: login.1,v 1.34 2024/08/16 16:11:06 florian Exp $
2.\"
3.\" Copyright (c) 1980, 1990, 1993
4.\"	The Regents of the University of California.  All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\" 3. Neither the name of the University nor the names of its contributors
15.\"    may be used to endorse or promote products derived from this software
16.\"    without specific prior written permission.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
19.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28.\" SUCH DAMAGE.
29.\"
30.\"	@(#)login.1	8.2 (Berkeley) 5/5/94
31.\"
32.Dd $Mdocdate: August 16 2024 $
33.Dt LOGIN 1
34.Os
35.Sh NAME
36.Nm login
37.Nd log into the computer
38.Sh SYNOPSIS
39.Nm login
40.Op Fl fp
41.Op Fl h Ar hostname
42.Op Fl L Ar local-addr
43.Op Fl R Ar remote-addr
44.Op Fl u Ar username
45.Op Ar user
46.Sh DESCRIPTION
47The
48.Nm
49utility logs users (and pseudo-users) into the computer system.
50.Pp
51If no user is specified, or if a user is specified and authentication
52of the user fails,
53.Nm
54prompts for a user name.
55Authentication of users is normally done via passwords, though
56external authentication mechanisms may be used (see
57.Xr login.conf 5 ) .
58To specify the alternate authentication mechanism
59.Va style ,
60the string
61.Pf : Va style
62is appended to the user name (i.e.,
63.Ar user : Ns Va style ) .
64.Pp
65The options are as follows:
66.Bl -tag -width Ds
67.It Fl f
68The
69.Fl f
70option is used when a user name is specified to indicate that proper
71authentication has already been done and that no password need be
72requested.
73This option may only be used by the superuser.
74.It Fl h Ar hostname
75Specifies the host from which the connection was received.
76This option may only be used by the superuser.
77.It Fl L Ar local-addr
78The
79.Fl L
80option specifies the local address of a socket.
81This information is passed on to any classify script (see
82.Xr login.conf 5 ) .
83.It Fl p
84By default,
85.Nm
86discards any previous environment.
87The
88.Fl p
89option disables this behavior.
90.It Fl R Ar remote-addr
91The
92.Fl R
93option specifies the remote address of a socket.
94This information is passed on to any classify script (see
95.Xr login.conf 5 ) .
96.It Fl u Ar username
97Specifies the remote user that initiated the connection.
98This option may only be used by the superuser.
99.El
100.Pp
101If the file
102.Pa /etc/nologin
103exists (and the
104.Dq ignorenologin
105boolean is not set in the user's login class),
106.Nm
107displays its contents to the user and exits.
108This is used by
109.Xr shutdown 8
110to prevent users from logging in when the system is about to go down.
111.Pp
112If the file
113.Pa /etc/fbtab
114exists,
115.Nm
116changes the protection and ownership of certain devices specified in this
117file.
118.Pp
119If the file
120.Pa /var/log/failedlogin
121exists,
122.Nm
123will record failed login attempts in this file.
124.Pp
125Immediately after logging a user in,
126.Nm
127displays the system copyright notice, the date and time the user last
128logged in, the date and time of the last unsuccessful login (if the file
129.Pa /var/log/failedlogin
130exists), the message of the day as well as other information.
131If the file
132.Dq Pa .hushlogin
133exists in the user's home directory, all of these messages are suppressed.
134This is to simplify logins for non-human users.
135.Nm
136then records an entry in the
137.Xr wtmp 5
138and
139.Xr utmp 5
140files and executes the user's command interpreter.
141.Pp
142.Nm
143enters information into the environment (see
144.Xr environ 7 )
145specifying the user's home directory
146.Pq Ev HOME ,
147command interpreter
148.Pq Ev SHELL ,
149search path
150.Pq Ev PATH ,
151terminal type
152.Pq Ev TERM ,
153and user name
154.Po both Ev LOGNAME and Ev USER
155.Pc .
156.Pp
157The standard shells,
158.Xr csh 1
159and
160.Xr sh 1 ,
161do not fork before executing the
162.Nm
163utility.
164.Pp
165Note that if
166.Nm
167is invoked by a non-root user, it will execute
168.Xr su 1
169in
170.Nm
171emulation mode instead.
172.Sh ENVIRONMENT
173.Nm
174sets the following environment variables:
175.Bl -tag -width REMOTEHOST
176.It Ev HOME
177The user's home directory, as specified by the password database.
178.It Ev SHELL
179The user's shell, as specified by the password database.
180.It Ev TERM
181The user's terminal type, if it can be determined.
182.It Ev LOGNAME
183The user's login name.
184.It Ev USER
185Same as
186.Ev LOGNAME .
187.It Ev MAIL
188The user's mailbox.
189.It Ev REMOTEHOST
190The name of the host from which the user logged in, if the
191.Fl h
192flag was specified.
193.It Ev REMOTEUSER
194The name of the remote user who initiated the connection, if the
195.Fl u
196flag was specified.
197.El
198.Pp
199Other environment variables may be specified in
200.Pa /etc/login.conf
201via the
202.Dq setenv
203capability.
204.Sh FILES
205.Bl -tag -width /var/log/failedlogin -compact
206.It Pa /etc/fbtab
207changes device protections
208.It Pa /etc/login.conf
209login configuration
210.It Pa /etc/motd
211message-of-the-day
212.It Pa /etc/nologin
213disallows logins
214.It Pa /var/log/failedlogin
215failed login account records
216.It Pa /var/log/lastlog
217last login account records
218.It Pa /var/log/wtmp
219login account records
220.It Pa /var/mail/user
221system mailboxes
222.It Pa /var/run/utmp
223current logins
224.It Pa \&.hushlogin
225makes login quieter
226.El
227.Sh SEE ALSO
228.Xr chpass 1 ,
229.Xr passwd 1 ,
230.Xr su 1 ,
231.Xr readpassphrase 3 ,
232.Xr setusercontext 3 ,
233.Xr fbtab 5 ,
234.Xr login.conf 5 ,
235.Xr utmp 5 ,
236.Xr environ 7
237.Sh HISTORY
238A
239.Nm
240utility appeared in
241.At v2 .
242