ssh服务由服务端软件Openssh和客户端(常见的有ssh,SecureCRT,putty,xshell)组成,ssh服务默认使用22端口提供服务,它有两个不兼容的ssh协议版本,分别是1.x和2.x

下面我们看下服务端上的ssh相关软件

[root@greymouster ~]# rpm -qa openssh
openssh-.3p1-.el6.i686
[root@greymouster ~]# rpm -qa |grep openssh
openssh-askpass-.3p1-.el6.i686
openssh-clients-.3p1-.el6.i686
openssh-server-.3p1-.el6.i686
openssh-.3p1-.el6.i686
[root@greymouster ~]# rpm -qa openssh openssl
openssl-1.0.1e-.el6.i686
openssh-.3p1-.el6.i686
[root@greymouster ~]# ps -ef |grep ssh
root : ? :: /usr/sbin/sshd
root : ? :: sshd: root@pts/
root : pts/ :: grep ssh

ssh客户端包含ssh程序以及scp(远程拷贝)、slogin(远程登录)、sftp(安全FTP文件传输)等应用程序

Openssh是ssh服务端的软件之一,可同时支持ssh1和ssh2协议,可以在配置文件中使用protocol指令指定只支持其中一种或两种都支持,默认情况下centos5.x系统默认配置的是仅支持ssh2协议

[root@greymouster ~]# less /etc/ssh/sshd_config
# Disable legacy (protocol version ) support in the server for new
# installations. In future the default will change to require explicit
# activation of protocol
Protocol

查看ssh的端口

[root@greymouster ~]# netstat -lntup|grep ssh
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1526/sshd
tcp 0 0 :::22 :::* LISTEN 1526/sshd

linux客户端通过ssh连接

[root@greymouster ~]# ssh -p22 root@192.168.1.199
[root@greymouster ~]# ssh -p22 root@192.168.1.199  /user/bin/free 命令(全路径)  到其他机器上执行命令(不会切换到机器上)
The authenticity of host '[192.168.1.199]:60222 ([192.168.1.199]:22)' can't be established.
RSA key fingerprint is d2:ad:69:ef:5e:55:43:c2:2d:c7:cc:fd:79:cd:af:c2.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.1.199]:22' (RSA) to the list of known hosts.
reverse mapping checking getaddrinfo for 69.169.37.106.static.bjtelecom.net [192.168.1.199] failed - POSSIBLE BREAK-IN ATTEMPT!
root@192.168.1.199's password:
Last login: Tue Jan 3 21:48:32 2017 from 1.180.212.133

当第一次连接的时候,本地会产生一个密钥文件 ~/.ssh/known_hosts

ssh客户端附带的远程拷贝scp命令

scp的基本语法使用:scp -secure copy

推:PUSH

scp -P22 -r -p /temp/data  root@192.168.1.199:/tmp

拉:PULL

scp -P22 -rp root@192.168.1.169:/tmp/data /opt/

[root@greymouster tmp]# cat /tmp/a.text
1111
1111
1111
[root@greymouster tmp]# scp -P22 /tmp/a.text root@192.168.1.199:/opt
把当前机器的 /tmp/a.text 文件拷贝到192.168.1.199 /opt 目录下
The authenticity of host '192.168.1.199 (192.168.1.199)' can't be established.
RSA key fingerprint is 32:0a:c0:7e:2a:a3:e2:dd:56:81:ca:d1:65:ba:a0:0b.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.199' (RSA) to the list of known hosts.
root@192.168.1.199's password:
a.text 100% 15 0.0KB/s 00:00
[root@greymouster tmp]#
[root@greymouster tmp]# scp -P22 root@192.168.1.199:/opt/b.text /tmp/
把192.168.1.199上的/opt/b.text文件拷贝到本机器的 /tmp/目录下

root@192.168.1.199's password:
b.text 100% 4 0.0KB/s 00:00
[root@greymouster tmp]# ls /tmp

 scp 为远程拷贝文件或目录的命令

-P(大写) 端口

-r  表示拷贝目录

-p  表示在拷贝前后保持文件或目录属性

注:scp是全量拷贝,效率不高       rsync 是增量拷贝

linux sftp客户端连接sftp服务器

[root@greymouster tmp]# sftp -oPort=22 root@192.168.1.199
Connecting to 192.168.1.199...
root@192.168.1.199's password:
sftp> ls -l
-rw------- 1 root root 1399 Dec 6 05:35 anaconda-ks.cfg
-rw-r--r-- 1 root root 44227 Dec 6 05:35 install.log
-rw-r--r-- 1 root root 10033 Dec 6 05:33 install.log.syslog
sftp> put /tmp/a.text 将/tmp/a.text上传到192.168.1.199 的家目录

Uploading /tmp/a.text to /root/a.text
/tmp/a.text 100% 15 0.0KB/s 00:00
sftp> ls -l
-rw-r--r-- 1 root root 15 Jan 11 01:04 a.text
-rw------- 1 root root 1399 Dec 6 05:35 anaconda-ks.cfg
-rw-r--r-- 1 root root 44227 Dec 6 05:35 install.log
-rw-r--r-- 1 root root 10033 Dec 6 05:33 install.log.syslog
sftp> get install.log 将192.168.1.199 的家目录install.log 下载到本机
sftp> put /tmp/a.text /ceshi/ 上传到指定目录下
sftp> get a.sh /home 下载到指定目录下

windows客户端连接sftp的方法  

点击SecureCRT 文件-->连接sftp标签

sftp> put "C:\a.txt"
正在把 a.txt 上传到 /root/a.txt
100% 3 字节 3 字节/s 00:00:00
sftp>

sftp> get /root/a.txt
  正在从 /root/a.txt 下载 a.txt
  100% 3 字节 3 字节/s 00:00:00
  sftp>

过滤注释查看配置文件

[root@greymouster home]# egrep -v "^#|^$" /etc/ssh/sshd_config

  

  

更改ssh配置

[root@greymouster ~]# vi /etc/ssh/sshd_config

# sshd_config(5) for more information.

# The strategy used for options in the default sshd_c
onfig shipped with
# OpenSSH is to specify options with their default va
lue where
# possible, but leave them commented. Uncommented op
tions change a
# default value. #Port 22 #ssh连接默认端口22
#PermitRootLogin no # root用户是否禁止远程登录
#PermitEmptyPasswords no #禁止空密码登录
#UseDNS no #不使用DNS
#GSSAPIAuthentication no #让ssh连接更快

修改配置文件后要重启ssh服务

[root@greymouster ~]# /etc/init.d/sshd restart
停止 sshd: [确定]
正在启动 sshd: [确定]

扫描的软件安装  

[root@greymouster ~]# yum install nmap -y 

[root@greymouster ~]# nmap 192.168.1.199 -p1-65535

Starting Nmap 5.51 ( http://nmap.org ) at 2017-01-11 00:08 CST
Nmap scan report for 192.168.1.199
Host is up (0.000011s latency).
Not shown: 65531 closed ports
PORT STATE SERVICE
22/tcp open ssh
111/tcp open rpcbind
3306/tcp open mysql
54573/tcp open unknown Nmap done: 1 IP address (1 host up) scanned in 1.66 seconds

禁止某个ip

[root@greymouster ~]# iptables -A INPUT ! -s 10.0.0.8 -j DROP 

linux 系统的ssh服务的更多相关文章

  1. linux系统的ssh服务开启方法

      操作方法: 1.编辑sshd_config文件 root@linux:~# vi /etc/ssh/sshd_config 2.检查如下配置项: PasswordAuthentication ye ...

  2. Linux系统下ssh的相关配置详细解析

    Linux系统下ssh的相关配置进行了详细的分析介绍. ssh是大家常用的登录linux服务器的方式,但是为了安全考虑,有时候我们需要针对ssh做一些特殊处理,本文记录笔者曾经做过的一些修改,供大家参 ...

  3. linux系统的crond服务

    linux系统中有一个服务,用来做周期性运行的例行任务,这个服务就是crond服务.执行这项服务的命令 就是crontab命令了.而linux下的任务调度又分为系统任务调度和用户任务调度两个大类. 系 ...

  4. 使用mybatis assembly插件打成tar包,在linux系统中运行服务

    使用mybatis assembly插件打成tar包,在linux系统中运行服务 assembly插件插件地址: 链接:https://pan.baidu.com/s/1i6bWPxF 密码:gad5 ...

  5. win10下Linux子系统开启ssh服务

    原文:win10下Linux子系统开启ssh服务 为了便于交流共同学习,博主QQ群242629020(stm32-MCU认认真真交流群) 欢迎批评指导!!!电梯:https://jq.qq.com/? ...

  6. kali linux 开启配置ssh服务

    1.    一.配置SSH参数 修改sshd_config文件,命令为: vi /etc/ssh/sshd_config 将#PasswordAuthentication no的注释去掉,并且将NO修 ...

  7. 『学了就忘』Linux服务管理 — 75、Linux系统中的服务

    目录 1.服务的介绍 2.Windows系统中的服务 3.Linux系统中服务的分类 4.独立的服务和基于xinetd服务的区别 5.如何查看一个服务是独立的服务还是基于xinetd的服务 (1)查看 ...

  8. Linux系统的ssh与sshd服务

    当主机中开启openssh服务,那么就对外开放了远程连接的接口 ssh为openssh服务的客户端,sshd为openssh服务的服务端 远程管理工具ssh具有数据加密传输.网络开销小以及应用平台范围 ...

  9. 如何开启Centos6.4系统的SSH服务

    无论是Centos6.4系统的虚拟电脑还是服务器,始终感觉直接在命令行中操作不方便:比如全选.复制.粘贴.翻页等等.比如服务器就需要在机房给服务器接上显示器.键盘才操作感觉更麻烦.所以就可借助SSH( ...

随机推荐

  1. 使用内部变量,删除,替换,UNSET,等字符操作

    使用内部变量,删除,替换,UNSET,等字符操作 FREDDY=freddy   删除字符串前几2个字符: [root@localhost tmp]# echo ${FREDDY:2} eddy   ...

  2. 杂项-公司-百科:伯克希尔·哈撒韦-un

    ylbtech-杂项-公司-百科:伯克希尔·哈撒韦 伯克希尔·哈撒韦公司由沃伦·巴菲特(Warren Buffett)创建于1956年,是一家主营保险业务,在其他许多领域也有商业活动的公司.其中最重要 ...

  3. Docker - 避免启动container后运行shell脚本执行完成后docker退出container

    问题 最近在使用 Dockerfile 启动容器,发现使用Dockerfile调用容器里面的shell,当shell执行完成以后,docker会退出容器. 分析 Docker 在执行shell的时候, ...

  4. java多态介绍温故而知新

    多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作. 多态性是对象多种表现形式的体现. 现实中,比如我们按下 F1 键这个动作: 如果当前在 Flas ...

  5. ORACLE和MYSQL函数

    函数 编号 类别 ORACLE MYSQL 注释 1 数字函数 round(1.23456,4) round(1.23456,4) 一样: ORACLE:select round(1.23456,4) ...

  6. javascript中的类方法、构造方法、原型方法的对比

    如果你已经接触js很久了,那么应该可以看看我总结的是否正确,如果你刚开始学习,那么通过我的总结,你可以更快的区别他们,记得我刚接触js时,这一块反正是模糊了很久! 1,长相的区别: function ...

  7. 使用CallableStatement接口调用存储过程

    直接上下代码: package com.learn.jdbc.chap07; import java.sql.CallableStatement; import java.sql.Connection ...

  8. java游戏制作之水果忍者

    水果忍者的原理很简单,主要就是采用随机的方式是画面上面出现水果. package Fruitninja; import java.awt.Dimension; import java.awt.Grap ...

  9. canvas二进制字符下落

      ?   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 3 ...

  10. eclipse egit(分支管理 下)

    在Git的分支merge中,不可能没有代码的冲突问题,特别在跟别人分工合作时.那该怎么解决? 1.新建一个conflict分支,在dev方法下添加一句 System.out.println(“Crea ...