What are the tasks of ssh and sshd respectively?
I know that sshd is the SSH daemon and also acts as SSH server. I am more interested in the details. From the man page of ssh,
https://linux.die.net/man/1/ssh
There are some high level explanations, like that it is a program for logging in on a remote machine and executing commands and so, but there are not much details about what being the work of the sshd and what is being done by ssh.
Any ideas?
BR
Patrik
EDIT
I am aware that the there is a man page for sshd as well,
https://linux.die.net/man/8/sshd
However, this did not give provide much more answers to my questions. There are things that is a bit more obscure at work here and which would be nice to know.
- Eg. is the TCP connection set up in the sshd and in that case, how can ssh access it?
- Is the session set up in sshd for both for both outgoing and incoming connections or does the ssh program deal with this for outgoing connections?
- Does the sshd always handle the connections or does it delegate it to ssh? In that case how?
linux ssh openssh sshd rhel-6
add a comment |
I know that sshd is the SSH daemon and also acts as SSH server. I am more interested in the details. From the man page of ssh,
https://linux.die.net/man/1/ssh
There are some high level explanations, like that it is a program for logging in on a remote machine and executing commands and so, but there are not much details about what being the work of the sshd and what is being done by ssh.
Any ideas?
BR
Patrik
EDIT
I am aware that the there is a man page for sshd as well,
https://linux.die.net/man/8/sshd
However, this did not give provide much more answers to my questions. There are things that is a bit more obscure at work here and which would be nice to know.
- Eg. is the TCP connection set up in the sshd and in that case, how can ssh access it?
- Is the session set up in sshd for both for both outgoing and incoming connections or does the ssh program deal with this for outgoing connections?
- Does the sshd always handle the connections or does it delegate it to ssh? In that case how?
linux ssh openssh sshd rhel-6
@KamilMaciorowski Yup, obviously :). Anyway that did not really give me the information needed. One of the things that confuses me is that the TCP connection feels as if it should be set up in the sshd, so how does the ssh program access that one?
– patrik
Jan 17 at 10:08
add a comment |
I know that sshd is the SSH daemon and also acts as SSH server. I am more interested in the details. From the man page of ssh,
https://linux.die.net/man/1/ssh
There are some high level explanations, like that it is a program for logging in on a remote machine and executing commands and so, but there are not much details about what being the work of the sshd and what is being done by ssh.
Any ideas?
BR
Patrik
EDIT
I am aware that the there is a man page for sshd as well,
https://linux.die.net/man/8/sshd
However, this did not give provide much more answers to my questions. There are things that is a bit more obscure at work here and which would be nice to know.
- Eg. is the TCP connection set up in the sshd and in that case, how can ssh access it?
- Is the session set up in sshd for both for both outgoing and incoming connections or does the ssh program deal with this for outgoing connections?
- Does the sshd always handle the connections or does it delegate it to ssh? In that case how?
linux ssh openssh sshd rhel-6
I know that sshd is the SSH daemon and also acts as SSH server. I am more interested in the details. From the man page of ssh,
https://linux.die.net/man/1/ssh
There are some high level explanations, like that it is a program for logging in on a remote machine and executing commands and so, but there are not much details about what being the work of the sshd and what is being done by ssh.
Any ideas?
BR
Patrik
EDIT
I am aware that the there is a man page for sshd as well,
https://linux.die.net/man/8/sshd
However, this did not give provide much more answers to my questions. There are things that is a bit more obscure at work here and which would be nice to know.
- Eg. is the TCP connection set up in the sshd and in that case, how can ssh access it?
- Is the session set up in sshd for both for both outgoing and incoming connections or does the ssh program deal with this for outgoing connections?
- Does the sshd always handle the connections or does it delegate it to ssh? In that case how?
linux ssh openssh sshd rhel-6
linux ssh openssh sshd rhel-6
edited Jan 17 at 10:18
Kamil Maciorowski
27.8k156184
27.8k156184
asked Jan 17 at 9:58
patrikpatrik
1207
1207
@KamilMaciorowski Yup, obviously :). Anyway that did not really give me the information needed. One of the things that confuses me is that the TCP connection feels as if it should be set up in the sshd, so how does the ssh program access that one?
– patrik
Jan 17 at 10:08
add a comment |
@KamilMaciorowski Yup, obviously :). Anyway that did not really give me the information needed. One of the things that confuses me is that the TCP connection feels as if it should be set up in the sshd, so how does the ssh program access that one?
– patrik
Jan 17 at 10:08
@KamilMaciorowski Yup, obviously :). Anyway that did not really give me the information needed. One of the things that confuses me is that the TCP connection feels as if it should be set up in the sshd, so how does the ssh program access that one?
– patrik
Jan 17 at 10:08
@KamilMaciorowski Yup, obviously :). Anyway that did not really give me the information needed. One of the things that confuses me is that the TCP connection feels as if it should be set up in the sshd, so how does the ssh program access that one?
– patrik
Jan 17 at 10:08
add a comment |
1 Answer
1
active
oldest
votes
Your question is unclear.
SSHD is a server ( Analogous to a web server serving https)
SSH is a client (Analogous to a browser).
In order to work, a compatible set of protocols and authentication mechanisms need to be negotiated. Generally the server defines what it will accept, and the client negotiates the best common protocol.
The SSH protocol itself is little.more then a well thought out, encrypted and authenticated tcp stream which typically allows tunnelling of other streams though it. Its common to use it to run interactive sessions like telnet, but it can equally be used to tunnrl/other protocols, or extended to allow scp file transfers. Generally the SSH client will defone the syntax, while both the client snd server need to work together to enable the functionality.
Typically the client (user) will authenticate itself to the server using the users credentials. The server wont typically authenticate to the client, but will provide its own (server) public key which can be fingerprinted, checked and remembered to frustrate MITM attacks.
Ok so let me guess a little here then. So what you mean is that for outgoing SSH sessions the ssh program comminicates with the server on the local machine, which then forwards the information to the remote server? Would this also mean that the SSH client does not hold its own TCP connection, but rather sends a request to the sshd and leave the sshd to do all network communication?
– patrik
Jan 17 at 10:17
1
An SSH client does not need to talk through a server. It is quite practical to run only an SSH client on 1 pc and only a server on another. (And common to - putty is an ssh client eith no correspodinding server). The ssh client makes a tcp connection directly to the remote server.
– davidgo
Jan 17 at 10:25
1
It is, in some cases, possible to run the ssh client do as to additionally listen on a port to encrypt snd firward connections made to it which were not originally encrypted.
– davidgo
Jan 17 at 10:27
I see, so it is actually no relation between the sshd and ssh?
– patrik
Jan 17 at 10:28
2
Except for running an agreed protocol, no. It is also common for an ssh server to be bundled with a client, but they can be seperated.
– davidgo
Jan 17 at 10:30
|
show 1 more comment
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1395302%2fwhat-are-the-tasks-of-ssh-and-sshd-respectively%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Your question is unclear.
SSHD is a server ( Analogous to a web server serving https)
SSH is a client (Analogous to a browser).
In order to work, a compatible set of protocols and authentication mechanisms need to be negotiated. Generally the server defines what it will accept, and the client negotiates the best common protocol.
The SSH protocol itself is little.more then a well thought out, encrypted and authenticated tcp stream which typically allows tunnelling of other streams though it. Its common to use it to run interactive sessions like telnet, but it can equally be used to tunnrl/other protocols, or extended to allow scp file transfers. Generally the SSH client will defone the syntax, while both the client snd server need to work together to enable the functionality.
Typically the client (user) will authenticate itself to the server using the users credentials. The server wont typically authenticate to the client, but will provide its own (server) public key which can be fingerprinted, checked and remembered to frustrate MITM attacks.
Ok so let me guess a little here then. So what you mean is that for outgoing SSH sessions the ssh program comminicates with the server on the local machine, which then forwards the information to the remote server? Would this also mean that the SSH client does not hold its own TCP connection, but rather sends a request to the sshd and leave the sshd to do all network communication?
– patrik
Jan 17 at 10:17
1
An SSH client does not need to talk through a server. It is quite practical to run only an SSH client on 1 pc and only a server on another. (And common to - putty is an ssh client eith no correspodinding server). The ssh client makes a tcp connection directly to the remote server.
– davidgo
Jan 17 at 10:25
1
It is, in some cases, possible to run the ssh client do as to additionally listen on a port to encrypt snd firward connections made to it which were not originally encrypted.
– davidgo
Jan 17 at 10:27
I see, so it is actually no relation between the sshd and ssh?
– patrik
Jan 17 at 10:28
2
Except for running an agreed protocol, no. It is also common for an ssh server to be bundled with a client, but they can be seperated.
– davidgo
Jan 17 at 10:30
|
show 1 more comment
Your question is unclear.
SSHD is a server ( Analogous to a web server serving https)
SSH is a client (Analogous to a browser).
In order to work, a compatible set of protocols and authentication mechanisms need to be negotiated. Generally the server defines what it will accept, and the client negotiates the best common protocol.
The SSH protocol itself is little.more then a well thought out, encrypted and authenticated tcp stream which typically allows tunnelling of other streams though it. Its common to use it to run interactive sessions like telnet, but it can equally be used to tunnrl/other protocols, or extended to allow scp file transfers. Generally the SSH client will defone the syntax, while both the client snd server need to work together to enable the functionality.
Typically the client (user) will authenticate itself to the server using the users credentials. The server wont typically authenticate to the client, but will provide its own (server) public key which can be fingerprinted, checked and remembered to frustrate MITM attacks.
Ok so let me guess a little here then. So what you mean is that for outgoing SSH sessions the ssh program comminicates with the server on the local machine, which then forwards the information to the remote server? Would this also mean that the SSH client does not hold its own TCP connection, but rather sends a request to the sshd and leave the sshd to do all network communication?
– patrik
Jan 17 at 10:17
1
An SSH client does not need to talk through a server. It is quite practical to run only an SSH client on 1 pc and only a server on another. (And common to - putty is an ssh client eith no correspodinding server). The ssh client makes a tcp connection directly to the remote server.
– davidgo
Jan 17 at 10:25
1
It is, in some cases, possible to run the ssh client do as to additionally listen on a port to encrypt snd firward connections made to it which were not originally encrypted.
– davidgo
Jan 17 at 10:27
I see, so it is actually no relation between the sshd and ssh?
– patrik
Jan 17 at 10:28
2
Except for running an agreed protocol, no. It is also common for an ssh server to be bundled with a client, but they can be seperated.
– davidgo
Jan 17 at 10:30
|
show 1 more comment
Your question is unclear.
SSHD is a server ( Analogous to a web server serving https)
SSH is a client (Analogous to a browser).
In order to work, a compatible set of protocols and authentication mechanisms need to be negotiated. Generally the server defines what it will accept, and the client negotiates the best common protocol.
The SSH protocol itself is little.more then a well thought out, encrypted and authenticated tcp stream which typically allows tunnelling of other streams though it. Its common to use it to run interactive sessions like telnet, but it can equally be used to tunnrl/other protocols, or extended to allow scp file transfers. Generally the SSH client will defone the syntax, while both the client snd server need to work together to enable the functionality.
Typically the client (user) will authenticate itself to the server using the users credentials. The server wont typically authenticate to the client, but will provide its own (server) public key which can be fingerprinted, checked and remembered to frustrate MITM attacks.
Your question is unclear.
SSHD is a server ( Analogous to a web server serving https)
SSH is a client (Analogous to a browser).
In order to work, a compatible set of protocols and authentication mechanisms need to be negotiated. Generally the server defines what it will accept, and the client negotiates the best common protocol.
The SSH protocol itself is little.more then a well thought out, encrypted and authenticated tcp stream which typically allows tunnelling of other streams though it. Its common to use it to run interactive sessions like telnet, but it can equally be used to tunnrl/other protocols, or extended to allow scp file transfers. Generally the SSH client will defone the syntax, while both the client snd server need to work together to enable the functionality.
Typically the client (user) will authenticate itself to the server using the users credentials. The server wont typically authenticate to the client, but will provide its own (server) public key which can be fingerprinted, checked and remembered to frustrate MITM attacks.
answered Jan 17 at 10:15
davidgodavidgo
44.1k75292
44.1k75292
Ok so let me guess a little here then. So what you mean is that for outgoing SSH sessions the ssh program comminicates with the server on the local machine, which then forwards the information to the remote server? Would this also mean that the SSH client does not hold its own TCP connection, but rather sends a request to the sshd and leave the sshd to do all network communication?
– patrik
Jan 17 at 10:17
1
An SSH client does not need to talk through a server. It is quite practical to run only an SSH client on 1 pc and only a server on another. (And common to - putty is an ssh client eith no correspodinding server). The ssh client makes a tcp connection directly to the remote server.
– davidgo
Jan 17 at 10:25
1
It is, in some cases, possible to run the ssh client do as to additionally listen on a port to encrypt snd firward connections made to it which were not originally encrypted.
– davidgo
Jan 17 at 10:27
I see, so it is actually no relation between the sshd and ssh?
– patrik
Jan 17 at 10:28
2
Except for running an agreed protocol, no. It is also common for an ssh server to be bundled with a client, but they can be seperated.
– davidgo
Jan 17 at 10:30
|
show 1 more comment
Ok so let me guess a little here then. So what you mean is that for outgoing SSH sessions the ssh program comminicates with the server on the local machine, which then forwards the information to the remote server? Would this also mean that the SSH client does not hold its own TCP connection, but rather sends a request to the sshd and leave the sshd to do all network communication?
– patrik
Jan 17 at 10:17
1
An SSH client does not need to talk through a server. It is quite practical to run only an SSH client on 1 pc and only a server on another. (And common to - putty is an ssh client eith no correspodinding server). The ssh client makes a tcp connection directly to the remote server.
– davidgo
Jan 17 at 10:25
1
It is, in some cases, possible to run the ssh client do as to additionally listen on a port to encrypt snd firward connections made to it which were not originally encrypted.
– davidgo
Jan 17 at 10:27
I see, so it is actually no relation between the sshd and ssh?
– patrik
Jan 17 at 10:28
2
Except for running an agreed protocol, no. It is also common for an ssh server to be bundled with a client, but they can be seperated.
– davidgo
Jan 17 at 10:30
Ok so let me guess a little here then. So what you mean is that for outgoing SSH sessions the ssh program comminicates with the server on the local machine, which then forwards the information to the remote server? Would this also mean that the SSH client does not hold its own TCP connection, but rather sends a request to the sshd and leave the sshd to do all network communication?
– patrik
Jan 17 at 10:17
Ok so let me guess a little here then. So what you mean is that for outgoing SSH sessions the ssh program comminicates with the server on the local machine, which then forwards the information to the remote server? Would this also mean that the SSH client does not hold its own TCP connection, but rather sends a request to the sshd and leave the sshd to do all network communication?
– patrik
Jan 17 at 10:17
1
1
An SSH client does not need to talk through a server. It is quite practical to run only an SSH client on 1 pc and only a server on another. (And common to - putty is an ssh client eith no correspodinding server). The ssh client makes a tcp connection directly to the remote server.
– davidgo
Jan 17 at 10:25
An SSH client does not need to talk through a server. It is quite practical to run only an SSH client on 1 pc and only a server on another. (And common to - putty is an ssh client eith no correspodinding server). The ssh client makes a tcp connection directly to the remote server.
– davidgo
Jan 17 at 10:25
1
1
It is, in some cases, possible to run the ssh client do as to additionally listen on a port to encrypt snd firward connections made to it which were not originally encrypted.
– davidgo
Jan 17 at 10:27
It is, in some cases, possible to run the ssh client do as to additionally listen on a port to encrypt snd firward connections made to it which were not originally encrypted.
– davidgo
Jan 17 at 10:27
I see, so it is actually no relation between the sshd and ssh?
– patrik
Jan 17 at 10:28
I see, so it is actually no relation between the sshd and ssh?
– patrik
Jan 17 at 10:28
2
2
Except for running an agreed protocol, no. It is also common for an ssh server to be bundled with a client, but they can be seperated.
– davidgo
Jan 17 at 10:30
Except for running an agreed protocol, no. It is also common for an ssh server to be bundled with a client, but they can be seperated.
– davidgo
Jan 17 at 10:30
|
show 1 more comment
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1395302%2fwhat-are-the-tasks-of-ssh-and-sshd-respectively%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
@KamilMaciorowski Yup, obviously :). Anyway that did not really give me the information needed. One of the things that confuses me is that the TCP connection feels as if it should be set up in the sshd, so how does the ssh program access that one?
– patrik
Jan 17 at 10:08