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. 根据wsdl文件生成WebService客户端代码

    有时候在项目中,一个项目可能有好几个公司在做.系统之间难免会出现互相调用接口的现象,这时候有一种办法就是使用webService.本篇文章将介绍如何将对接系统提供的WebService接口,根据对方提 ...

  2. 【转】c# 判断指定文件是否存在

    private void button2_Click(object sender, EventArgs e) { if (File.Exists(@"E:\exists.txt") ...

  3. java代码从键盘输入次数,然后进行运算-----菜鸟如此菜

    package com.aaa; import java.util.Scanner; // //求两数相加的和.从键盘输入 public class ftwert { public static vo ...

  4. AJAX验证此ID是否有对应的name

    在表格输入一个ID,然后自动根据ID在数据库中查找是否有对应name 这是javascript部分,利用ajax验证 $(document).ready(function() { $("#c ...

  5. Sql Server优化之路

    本文只限coder级别层次上对Sql Server的优化处理简结,为防止专业DB人士有恶心.反胃等现象,请提前关闭此页面. 首先得有一个测试库,使用数据生成计划生成测试数据库(参考:http://de ...

  6. selenium - 驱动 chromedriver 初始化问题总结

    ChromeDriver切换浏览器语言 ChromeOptions options = new ChromeOptions(); options.addArguments("--lang=& ...

  7. py编码终极版

    说起python编码,真是句句心酸.算起来,反复折腾两个来月了.万幸的是,终于梳理清楚了.作为一个共产主义者,一定要分享给大家.如果你还在因为编码而头痛,那么赶紧跟着我咱们一起来揭开py编码的真相吧! ...

  8. Android 4学习(9):用户界面 - THE ANDROID WIDGET TOOLBOX

    Android内置了很多View,包括: TextView EditText Chronometer ListView Spinner Button ToggleButton ImageButton ...

  9. MySQL复制错误 The slave I/O thread stopsbecause master and slave have equal MySQL server UUIDs; these UUIDs must bedifferent for replication to work 解析

    在搭建Mysql主从复制时候,在执行完相关操作以后,通过命令查看是否主从复制成功的时候 show slave status\G; 在"Slave_SQL_Running_State" ...

  10. ansible命令详解

    查看ansible版本 import ansible print(ansible.__version__) 命令参数 -m:要执行的模块,默认为command -a:模块的参数 -u:ssh连接的用户 ...