Linux远程连接工具 SSH (OpenSSH)

  • Post author:
  • Post category:linux


【OpenSSH简述】

OpenSSH 是一组用于安全地访问远程计算机的连接工具。它可以作为rlogin、rsh rcp以及telnet的直接替代品使用。更进一步,其他任何TCP/IP连接都可以通过SSH安全地进行隧道/转发。OpenSSH 对所有的传输进行加密,从而有效地阻止了窃听、连接劫持,以及其他网络级的攻击。OpenSSH 由 OpenBSD project 维护。SSH默认使用的是TCP的22号端口,也是基于C/S架构,SSH有两个版本v1与v2(优先使用)。

sshv2基于双方主机的协商选择使用最安全的MAC方式 ,其有如下特点:

1、加密机制及MAC机制由双方协商选定;

2、基于DH实现密钥交换,基于RSA或DSA实现身份认证;

3、客户端通过检查服务器端的主机密钥来判断是否能够继续通信;

【SSH工作流程】

(1)OpenSSH使用C/S架构:

(2)服务端工具(S):

sshd

(3)客户端工具(C):ssh命令、putty、xshell、securecrt、sshshellclient;

【SSH配置文件】

[1]


:/etc/ssh/ssh_config (默认)

[2]:/etc/sysconfig/sshd (脚本配置文件)

[3]:   systemctl start sshd (重新启动服务)

选项



Host



只对能够匹配后面字串的计算机有效。

“*”

表示所有的计算机

#############################################################################################

#

sshd_config(5)

for more information.

# This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/bin

# The strategy used for options in the default sshd_config shipped with

# OpenSSH is to specify options with their default value where

# possible, but leave them commented.  Uncommented options change a

# default value.

#Port 22  #修改默认监听的端口;


port 7777

#把sshd的监听端口改成7777;

#AddressFamily any  #监听的地址家族,指定是监听在IPV4上还是IPV6上,any表示所有;

#ListenAddress 0.0.0.0  #指定监听的地址 (0.0.0.0表示本机的所有地址);

#ListenAddress ::

# Disable legacy (protocol version 1) support in the server for new

# installations. In future the default will change to require explicit

# activation of protocol 1

Protocol 2

# HostKey for protocol version 1

#HostKey /etc/ssh/ssh_host_key #使用shhv1用到的主机密钥;

# HostKeys for protocol version 2

#HostKey /etc/ssh/ssh_host_rsa_key

#HostKey /etc/ssh/ssh_host_dsa_key

# Lifetime and size of ephemeral version 1 server key

#KeyRegenerationInterval 1h

#ServerKeyBits 1024 #密钥长度;

# Logging

# obsoletes QuietMode and FascistLogging

#SyslogFacility AUTH

SyslogFacility AUTHPRIV

#LogLevel INFO

# Authentication:

#LoginGraceTime 2m #登录宽限期;

#PermitRootLogin yes #是否允许管理员直接登录;

#StrictModes yes

#MaxAuthTries 6 #最大密码输入错误次数;

#MaxSessions 10 #最大会话个数;

#########################################################################################

【拷贝数据】

[1] csp  SRC   DEST  (

scp是secure copy,进行远程拷贝文件的命令

)

[2]将本机文件复制到远程服务器上


# scp  /path/to/somefile… USERNAME@HOST:/path/to/somewhere

[3]将远程服务器上的文件复制到本机


# scp  USERNAME@HOST:/path/to/somewhere /path/to/somewhere

scp参数:

-r: 复制目录时使用(实现递归复制),scp默认不能复制目录;

-p: 保持源文件的元数据信息,包括mode和timestamp

-q: 静默模式,复制过程不显示状态信息;

-p PORT: 指定ssh协议监听的端口(远程主机)。


注意两点:


1.如果远程服务器防火墙有特殊限制,scp便要走特殊端口,具体用什么端口视情况而定,命令格式如下:


#scp -p 4588 root@192.168.1.59:/usr/local/sin.sh      /home/allen


2.使用scp要注意所使用的用户是否具有可读取远程服务器相应文件的权限。



版权声明:本文为genglei1022原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。