快捷搜索:  汽车  科技

linux 远程ssh(Linux服务器配置-SSH远程登录管理)

linux 远程ssh(Linux服务器配置-SSH远程登录管理)-2 强制ssh只支持SSH-2协议。-1 强制ssh只支持SSH-1协议。功能:用于登录到远程主机和在远程主机上执行命令的程序。语法:ssh [options] [user@]hostname主要选项:

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(1)

上文:Linux服务器配置-SSH远程登录管理(一)

一、 在配置和使用中用到的主要命令

1、 ssh 命令

英文描述:OpenSSH SSH client (remote login program)

功能:用于登录到远程主机和在远程主机上执行命令的程序。

语法:ssh [options] [user@]hostname

主要选项:

-1 强制ssh只支持SSH-1协议。

-2 强制ssh只支持SSH-2协议。

-4 强制ssh只使用IPv4地址。

-6 强制ssh只使用IPv6地址。

-l login_name 指定要在远程计算机上登录的用户。

-p port 指定要连接到远程主机上的端口。默认端口为22。

2、 scp命令

英文描述:secure copy (remote file copy program)

功能:在网络上的主机之间复制文件。

语法:scp [options] [[user@]host1:]file1 ...[[user@]host2:]file2

主要选项:

-1 强制scp只支持SSH-1协议。

-2 强制scp只支持SSH-2协议。

-4 强制scp只使用IPv4地址。

-6 强制scp只使用IPv6地址。

-C: 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)

-p: 保留原文件的修改时间,访问时间和访问权限。

-l limit 限制使用带宽,以Kbit/s指定。

-P port 指定要连接到远程主机上的端口。注意,这个选项用大写的“P”来表示。默认端口为22 。

-r 递归复制整个目录。

-v 详细显示信息。

3、 ssh-keygen命令

英文描述:authentication key generation management and conversion

功能:生成、管理和转换认证密钥。

语法:ssh-keygen [options]

主要选项:

-B 显示指定的公钥/私钥文件的 bubblebabble 摘要。

-b bits 指定要创建的密钥长度。RSA密钥的最小是1024位,默认值是2048位。

DSA密钥必须恰好是FIPS 186-2所指定的1024位。

ECDSA密钥,-b标志确定为:256、384或521位。

Ed25519键的长度是固定的,忽略-b标志。

-C comment 提供一个新注释。

-F hostname 在 known_hosts 文件中搜索指定的 hostname ,并列出所有的匹配项。这个选项主要用于查找散列过的主机名/IP地址,还可以和 -H 选项联用打印找到的公钥的散列值。

-f filename 指定密钥文件名。

-g 在使用 -r 打印指纹资源记录的时候使用通用的 DNS 格式。

-H 对 known_hosts 文件进行散列计算。这将把文件中的所有主机名/IP地址替换为相应的散列值。原来文件的内容将会添加一个".old"后缀后保存。这些散列值只能被 ssh 和sshd 使用。这个选项不会修改已经经过散列的主机名/IP地址,因此可以在部分公钥已经散列过的文件上安全使用。

-N new_passphrase 提供一个新的密码。

-P passphrase 提供旧密码。

-p 要求改变某私钥文件的密码而不重建私钥。程序将提示输入私钥文件名、原来的密码、以及两次输入新密码。

-R hostname 从 known_hosts 文件中删除所有属于 hostname 的密钥。这个选项主要用于删除经过散列的主机(参见 -H 选项)的密钥。

-r hostname 打印名为 hostname 的公钥文件的 SSHFP 指纹资源记录。

-t type 指定要创建密钥对的类型。

SSH-1协议版本:rsa1。

SSH-2协议版本:rsa 、dsa、ecdsa、ed25519。

-v 详细显示信息。

-y 读取OpenSSH专有格式的公钥文件,并OpenSSH公钥显示在标准输出上。

二、通过密码登录认证配置

配置实例如下图所示:

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(2)

1. 安装SSH服务

yum -y install openssh openssh-server

注:SSH服务在系统安装完毕后,就已经安装完成,不需要单独安装。

2. 修改SSH服务端配置文件

  • 在CentOS6系统中

cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config.bak #备份原文件

vim /etc/ssh/sshd_config #编辑配置文件

Protocol 2

SyslogFacility AUTHPRIV

PermitRootLogin no

PasswordAuthentication yes

ChallengeResponseAuthentication no

GSSAPIAuthentication yes

GSSAPICleanupCredentials yes

UsePAM yes

AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES

AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT

AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE

AcceptEnv XMODIFIERS

X11Forwarding yes

Subsystem sftp /usr/libexec/openssh/sftp-server

注:如果不允许root用户登录,可将PermitRootLogin 项设为no。(默认允许root用户登录)

  • 在RHEL7系统中

cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config.bak #备份原文件

vim /etc/ssh/sshd_config #编辑配置文件

HostKey /etc/ssh/ssh_host_rsa_key

HostKey /etc/ssh/ssh_host_ecdsa_key

HostKey /etc/ssh/ssh_host_ed25519_key

SyslogFacility AUTHPRIV

PermitRootLogin no

PasswordAuthentication yes

ChallengeResponseAuthentication no

GSSAPIAuthentication yes

GSSAPICleanupCredentials yes

UsePAM yes

X11Forwarding yes

AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES

AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE

LC_MEASUREMENT

AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE

AcceptEnv XMODIFIERS

Subsystem sftp /usr/libexec/openssh/sftp-server

注:如果不允许root用户登录,可将PermitRootLogin 项设为no。(默认允许root用户登录)

3. 重启SSH服务

  • 在CentOS6系统中

service sshd restart

  • 在RHEL7系统中

systemctl restart sshd

4. 从客户端远程登录系统

  • 在Linux客户端上用ssh命令连接远程主机

安装SSH客户端软件

yum -y install openssh-clients

注:SSH服务在系统安装完毕后,就已经安装完成,不需要单独安装。

修改SSH客户端端配置文件

Host *

GSSAPIAuthentication yes

ForwardX11Trusted yes

SendEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES

SendEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT

SendEnv LC_IDENTIFICATION LC_ALL LANGUAGE

SendEnv XMODIFIERS

注:客户端配置文件一般不需要修改,除非有特定需求。如果提示输入密码项,时间过长,请将GSSAPIAuthentication改为no。

登录远程主机

在客户端上使用如下命令:

ssh snowfox@192.168.1.90 或 ssh -l snowfox 192.168.1.90

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(3)

由于客户端是第一次连接远程主机,系统要下载RSA公钥,这里输入yes。再次登录直接输入密码就可以了。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(4)

从上图可以看到由centos7-study主机登录到了centos6-test主机上。

退出远程主机

执行exit命令。

· 在Windows系统上使用SSH工具连接Linux主机

PuTTY工具下载地址:https://www.chiark.greenend.org.uk/~sgtatham/putty/

SecureCRT工具下载地址:https://www.vandyke.com/

Xshell工具下载地址:https://www.netsarang.com/zh/

以上三个软件都是常用的SSH工具,可以根据喜好自行下载使用。下面以Xshell为例。

进入Xshell官网,进行下载,【所有下载】->【家庭/学校免费】。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(5)

填写【姓名】和【邮件地址】,勾选【两者】,点击【下载】。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(6)

单击下载后,提示下载链接邮件已经发到您刚刚填写的邮箱,查看邮件并下载软件。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(7)

安装完成后,运行Xshell软件。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(8)

选择【文件】菜单->【新建】,开启【新建会话属性】页。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(9)

在【名称】中输入要创建的这个会话的名称。

在【协议】中选择SSH,即用SSH进行远程链接。

在【主机】中输入需要远程管理主机的IP地址。

在【端口号】中输入远程管理主机SSH服务的监听端口号,默认为22。

以上填写完成后,选择【用户身份认证】。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(10)

在【方法】中选择Password,即用密码验证方式进行连接认证。

在【用户名】中输入远程主机的用户名。(必须是远程主机中已存在的用户)。

在【密码】中输入远程主机的用户密码。

以上填写完成后,选择【终端】。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(11)

在【编码】中选择Unicode(UTF-8)编码,以便正确显示中文字符。

以上选择完成后,选择【键盘】。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(12)

在【BACKSPACE键序列】中选择ASCⅡ127(Ctrl ?)(l),设置退格键。

以上选择完成后,单击【连接】按钮,登录远程主机。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(13)

通过工具栏上的【配色方案】和【字体】按钮,选择适合的方案及字体。

linux 远程ssh(Linux服务器配置-SSH远程登录管理)(14)

至此已经通过Xshell工具软件,连接到了Linux远程主机。

以上是我在学习Linux系统中整理的一些学习要点,肯定会有不对的地方,希望各位大侠给与指正,我们共同学习!谢谢!

Linux服务器配置-SSH远程登录管理(三)

实例说明怎样配置SSH基于密钥对认证登录。

猜您喜欢: