OpenSSH

ssh: secure shell, protocol, 22/tcp, 安全的遠程登錄

OpenSSH: ssh協議的開源實現;

dropbear:另一個開源實現;

 SSH協議版本

v1: 基于CRC-32MAC,不安全;man-in-middle

v2:雙方主機協議選擇安全的MAC方式

基于DH算法做密鑰交換,基于RSADSA算法實現身份認證;

兩種方式的用戶登錄認證:

基于password

基于key

 OpenSSH:

C/S

C: ssh, scp, sftp

Windows客戶端:

xshell, putty, securecrt, sshsecureshellclient

S: sshd 

客戶端組件:

ssh, 配置文件:/etc/ssh/ssh_config 

格式:ssh [user@]host [COMMAND]

  ssh [-l user] host [COMMAND]

   -p port:遠程服務器監聽的端口;

   -X: 支持x11轉發;

   -Y:支持信任的x11轉發; 

  Host PATTERN

   PARAMETER VALUE 

  基于密鑰的認證:

   (1) 在客戶端生成密鑰對兒

   ssh -t rsa [-P ”] [-f “~/.ssh/id_rsa”]

例一:生成密鑰對

[root@localhost ~]# ssh-keygen

   (2) 把公鑰傳輸至遠程服務器對應用戶的家目錄

   ssh-copy-id [-i [identity_file]] [user@]machine

例一:傳輸公鑰

[root@localhost ~]# ssh-copy-id root@192.168.21.137

   (3) 測試

[root@localhost ~]# ssh root@192.168.21.137
Last login: Thu Jun 15 11:05:33 2017 from 192.168.21.137

scp命令:

scp [options] SRC… DEST/ 

存在兩種情形:

PULLscp [options] [user@]host:/PATH/FROM/SOMEFILE /PATH/TO/SOMEWHERE

PUSH: scp [options] /PATH/FROM/SOMEFILE [user@]host:/PATH/TO/SOMEWHERE

例一:把etc/fstab文件復制到另外一臺主機上

[root@localhost ~]# scp /etc/fstab root@192.168.21.137:/tmp/

常用選項:

-r: 遞歸復制;

-p: 保持原文件的屬性信息;

-q: 靜默模式

-P PORT: 指明remote host的監聽的端口; 

sftp命令:

sftp [user@]host

sftp> help

例一:以指定用戶的生份運行

[root@localhost ~]# sftp root@192.168.21.141
Connected to 192.168.21.141.
sftp>

服務器端:

sshd, 配置文件: /etc/ssh/sshd_config

常用參數:

Port 22022

ListenAddress ip

PermitRootLogin yes 

限制可登錄用戶的辦法:

AllowUsers user1 user2 user3

AllowGroups 

ssh服務的最佳實踐:

1、不要使用默認端口;

2、禁止使用protocol version 1;

3、限制可登錄用戶;

4、設定空閑會話超時時長;

5、利用防火墻設置ssh訪問策略;

6、僅監聽特定的IP地址;

7、基于口令認證時,使用強密碼策略;

# tr -dc A-Za-z0-9_ < /dev/urandom | head -c 30 | xargs

8、使用基于密鑰的認證;

9、禁止使用空密碼;

10、禁止root用戶直接登錄;

11、限制ssh的訪問頻度和并發在線數;

12、做好日志,經常分析; 

ssh協議的另一個實現:dropbear

(1) dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key -s 2048

dropbearkey -t dss -f /etc/dropbear/dropbear_dss_host_key

dropbear -p [ip:]port -F -E

 

 

原創文章,作者:kang,如若轉載,請注明出處:http://www.www58058.com/78334

(0)
kangkang
上一篇 2015-06-21 18:52
下一篇 2015-06-23 09:51

相關推薦

  • Linux 環境 SSD(固態硬盤)使用指南

    原文鏈接:http://www.jinbuguo.com/storage/ssd_usage.html 前言 因為SSD有著諸多與傳統機械式硬盤不同的特點,而且這些特點導致了SSD在實際使用中的性能和壽命與其使用方法緊密相關。所以并不是說買來一塊非常牛X的SSD就萬事大吉了。另一方面,SSD的性能并不像機械式硬盤那樣比較穩定(浮動范圍小),而是呈現出一種離散…

    Linux干貨 2015-04-08
  • 初探SElinux

    SELinux介紹: SELinux: Secure Enhanced Linux(安全強化的linux),是美國國家安全局(NSA=The National Security Agency)和 SCC(Secure Computing Corporation)開發的Linux的一個強制訪問控制的安全模塊。2000年以GNU GPL發布,Linux內核2.6…

    Linux干貨 2016-10-09
  • 加密解密基礎、PKI以及自建私有CA

    加密解密基礎、PKI以及自建私有CA 加密是以某種特殊的算法改變原有的信息數據,使得未授權的用戶即使獲得了已加密的信息,但因不知解密的方法,仍然無法了解信息的內容。 解密就是加密的逆向操作,將加密過的不可讀的數據經過處理,能夠是之前不可讀的信息還原成可讀信息。 PKI是Public Key Infrastructure的首字母縮寫,翻譯過來就是公鑰基礎設施;…

    Linux干貨 2016-12-07
  • Linux網站架構系列之Apache—-進階篇

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://nolinux.blog.51cto.com/4824967/1320167 本篇博文為Linux網站架構系列之apache的第二篇,我將帶大家一起學習apache的編譯參數,目錄結構和配置文件等方面的知識,實現對apac…

    Linux干貨 2016-08-15
  • Homework Week-11 加密、CA及DNS

    1、詳細描述一次加密通訊的過程,結合圖示最佳。 ——————————————————————&#…

    Linux干貨 2016-11-01
  • 運維學習筆記-看看別人家的Puppet代碼

    這篇博客的目的是通過分析Forge上的Puppet模塊來加深一些概念的理解,同時了解一些常用用法。 今天的例子是jfryman-nginx模塊,它是原puppetlabs-nginx模塊的升級版本,依賴3個Puppet公共模塊:puppetlabs-apt,puppetlabs-stdlib和puppetlabs-concat。安裝非常方便,puppet m…

    Linux干貨 2016-06-23
欧美性久久久久