Berkeley r-commands: Difference between revisions

Content deleted Content added
mNo edit summary
Authentication: example file
Line 45:
 
 
==AuthenticationProtocol==
 
The original Berkeley package that provides {{code|rlogin}} also features {{code|rcp}} (remote-copy, allowing files to be copied over the network) and [[Remote Shell|rsh]] (remote-shell, allowing commands to be run on a remote machine without the user logging into it). These share the {{code|hosts.equiv}} and {{code|.rhosts}} access-control scheme (although they connect to a different daemon, {{code|rshd}}).
 
As an example, the protocol is as follows:<ref>{{Cite report |url=https://datatracker.ietf.org/doc/rfc1282/ |title=BSD Rlogin |last=Kantor |first=Brian |date=1991-12 |publisher=Internet Engineering Task Force |issue=RFC 1282}}</ref><syntaxhighlight lang="bash">
Client:
<null>
user name on the client<null>
user name on the server<null>
terminal type/terminal baud rate<null>
 
Server:
</syntaxhighlight>The server would check that the user should have access. If so, it returns a message with nothing in it (not even a [[null character]]), meaning the connection is established.
 
For example:<syntaxhighlight lang="bash">
Client:
<null>
bostic<null>
kbostic<null>
vt100/9600<null>
 
Server:
</syntaxhighlight>Both share the {{code|hosts.equiv}} (applies to all users on the server) and {{code|.rhosts}} (applies to only the user that puts the file in the ) access-control scheme, although they connect to different daemons. {{code|rlogin}} connects to {{code|rlogind}}, while {{code|rsh}} connects to {{code|rshd}}.
 
{{code|hosts.equiv}} and {{code|.rhosts}} uses the same format. The following shows some aspects of the format:<ref>{{Cite web |title=.rhosts File Format for TCP/IP |url=https://www.ibm.com/docs/en/aix/7.2?topic=formats-rhosts-file-format-tcpip |access-date=2023-11-29 |website=www.ibm.com |language=en-us}}</ref><syntaxhighlight lang="bash">
host1
host2 user_a
-host3
+@group1 -user_b
-@group2
</syntaxhighlight>This allows all users from host1 to login, user_a from host2 to login, no users from host3, all users on group1 except user_b, and no users on group2.
 
==Commands==