ssh 筆記

ssh

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

centos6: ssh 192.168.135.7
或者 指定用戶名連接: ssh wang@192.168.135.7

linux 里面遠程登錄的小匯總: ssh scp telnet sftp slogin
windows 客戶端 : xshell putty CRT … (遠程登錄工具

server (服務器端): sshd

ssh 客戶端:
ssh, 配置文件:/etc/ssh/ssh_config
Host PATTERN
StrictHostKeyChecking no 首次登錄不顯示檢查提示
格式:ssh [user@]host [COMMAND]
ssh [-l user] host [COMMAND] // ssh zhang@192.168.135.7 who — 登錄進去,執行命令,并返回
-p port:遠程服務器監聽的端口 // ss -nt // ssh 192.168.135.164 -p 8021
-b:指定連接的源IP
-v:調試模式
-C:壓縮方式
-X: 支持x11轉發
-Y:支持信任x11轉發
ForwardX11Trusted yes
-t: 強制偽tty分配
ssh -t remoteserver1 ssh remoteserver2

默認服務器的端口是22 , 修改端口 ?
vim /etc/ssh/sshd_config
Port 8021
—————————
systemctl reload sshd — 服務器重新生效

centos6: ssh 192.168.135.7 -p 8021 –需要填寫端口(因為不是之前的默認端口)

-b:指定連接的源IP ?
添加ip : ip a a 192.168.135.8/24 dev eth0 ip a a 192.168.135.10/24 dev eth0
好了 現在有 3個IP了
cnetos6: ssh 192.168.135.164
centos7: ss -nt — 查看
如果 3個ip 我就指定某個地址 連接centos 7
6: ssh -b 192.168.135.8 192.168.135.164
7: who 查看IP的發起者

-v:調試模式 ?
ssh -v -b 192.168.135.8 192.168.135.164 –查看詳細的過程

-X: 支持x11轉發? -Y:支持信任x11轉發 ?
理論是:如果你ssh 上去 不僅敲命令 還顯示圖形的話
顯示理論: 如果你不在機房 安裝oracle 的話 遠程 可以圖片安裝(2.Xstart工具實現)
6: ssh 192.168.135.164 -X

-t: 強制偽tty分配?
如果c機器做了安全策略,只允許B機器連接 ,但是a機器想連接怎么辦?
a–b—c
iptables -A INPUT -s 192.168.135.152 -j REJECT // c 上拒絕 a 訪問 — iptables -F 清除
a:ssh -t 192.168.135.189 ssh 192.168.135.164 — 跳板機
c: w — 查看
基于DH 算法做密鑰交換,基于RSA 或DSA 實現身份認證
ssh_host_rsa_key.pub

* 基于密鑰 key 的登錄方式 ***
7:cd .ssh –> known_hosts — 放的是 以前 遠程訪問過的主機 公鑰 –> 好處: 下次連接 不需要yes/no
6: cat /etc/ssh/ssh_host_rsa_key.pub — centos6 的公鑰

ssh_host_rsa_key 盜取私鑰 就可以迷糊主機
service sshd restart — 重啟服務
實驗 : 6 連接7 的時候 不需密碼了,基于key ?
1.ssh-keygen //客戶端生產秘鑰對 –默認rsa 算法 指定算法的話: ssh – keygen -t dsa
cd .ssh –> 下面生產 公鑰和私鑰
2.ssh-copy-id -i id_rsa.pub root@192.168.135.164 –> 將6的公鑰傳輸到7 上
3. 測試 ssh root@192.168.135.164 — 不需要密碼 ok
總結:A B 主機基于key 連接 A :創建秘鑰對 然后發送給B公鑰 A 就可以連接B 不需要密碼了 , B –> A 需要密碼
注意: B 主機 修改root密碼 都沒用 照樣 進去
注: 保護好 A 機器 ( 中軍大帳–秘鑰對 )
— 假如 A 秘鑰被盜取了, 可以連接 B 嗎?
scp id_rsa 192.168.135.152:/root 傳給 c cd /root/.ssh
測試 c 也不需要密碼 連接 b 了 ,–

注意: 假如以后自動化 1000000臺主機

問題: 解決 ssh 連接慢的問題 ?
vim /etc/ssh/sshd_config
GSSAPIAuthentication no
UseDNS no
—————————–
6:ssh-copy-id root@192.168.135.152 //6的公鑰傳給5
ssh root@192.168.135.152 – 不需要密碼
問題 :給秘鑰加密 ,因為秘鑰丟了很危險,基于key ?
6 cd .ssh/ –> ssh-keygen -p // 輸入口令 centos
[root@centos6 ~/.ssh]#cat id_rsa — 查看 秘鑰已經加密
–> 測試 ssh root@192.168.135.152 需要私鑰的密碼 ? 麻煩

需要私鑰的密碼 ? 麻煩
理論: 口令提交代理 ,我ssh的時候,代理自動提交口令
[root@centos6 ~/.ssh]#ssh- // 按tab 鍵
ssh-add ssh-agent ssh-copy-id ssh-keygen ssh-keyscan
ssh-agent bash // 代理程序的啟動
ssh-add //把私鑰托管給代理 . (效果:不要輸入公鑰的口令了)
注意: 每次退出需要跑一次代理 .

以上是linux 設置 遠程服務器 :
下面是 windows — xshell CRT 中遠程連接服務器

問題:平時在生產中 不是linux ssh 而是在windows 上的遠程工具ssh 服務器 crt xshell?
xshell 配置基于key驗證?
工具–> 新建用戶密鑰生產向導–> 下一步 .. 導出id_rsa_1024
你想連接誰,傳給他 :基于key 認證就靠它了 id_rsa_1024.pub
rz
cat id_rsa_1024.pub >> .ssh/authorized_keys — 追加進去
連接的時候 : 用戶身份驗證 –> 方法: public key 用戶名: root 用戶密鑰選擇
OK
CRT 配置基于key驗證?
tools –> create public key .. Identity.pub –> 格式不對,需要轉換
// touch .ssh/authorized_keys
//ssh-keygen -i -f Identity.pub –轉換
//ssh-keygen -i -f Identity.pub > .ssh/authorized_keys
ssh-keygen -i -f Identity.pub >> .ssh/authorized_keys // 轉換直接 追加到文件

—-
自動化 創建 基于key 100? 1000? 100000?
#!/bin/bash
rpm -q expect &> /dev/null ||yum -y -q install expect
ssh -keygen -P ” -f ~/.ssh/is_rsa &> /dev/null
while read ip password;do
user=root
expect << EOF
set timeout 10
spawn ssh root@192.168.135.152
expect {
“yes/no” {send “yes\n”;exp_continue }
“password” {send “$password\n”}
}
expect eof
EOF
done < hosts.txt

作業: 1. 創建CA ,申請證書 2.基于key驗證

———————————————————-

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/90966

(0)
百澗溪百澗溪
上一篇 2018-01-08
下一篇 2018-01-08

相關推薦

  • Apache-httpd工作模型

    httpd   httpd是由apache軟件基金會開發的一款著名的web服務器軟件。由于其開放源代碼,并且擁有跨平臺、功能強大、安全穩定等特性,而被廣泛使用。早期httpd是在修修補補的基礎上成長起來的,所以早期也叫作a pachey server,由于開發httpd的組織叫作apache,因此httpd也被稱作apache。httpd有三個長線維護版本,…

    Linux干貨 2017-02-15
  • rpm包及rmp命令詳解

    一、軟件運行環境          ? API: Application Programming Interface              國際標準&nbs…

    Linux干貨 2016-08-22
  • Linux目錄結構

    Linux目錄結構 查看目錄(/) 樹狀目錄結構: 常見目錄的解釋 Linux 下的文件類型 路徑 Linux目錄結構 查看目錄(/) 登錄系統后,在當前命令窗口下輸入命令: [root@localhost ~]# ls /bin   dev  home  lib64       media &nb…

    Linux干貨 2016-09-06
  • 系統基礎之shell腳本編程詳解3(函數)

    shell腳本編程詳解3:    在前兩節我們分別介紹了shell腳本編程的基礎和循環,判斷的知識,今天我們分享腳本的另一種用法,函數. 概論:     函數function是由若干條shell命令組成的語句塊,實現代碼重用和模塊化編程。    它與shell…

    Linux干貨 2016-08-22
  • 第五周作業

    1、顯示/boot/grub/grub.conf中以至少一個空白字符開頭的行; ~]# grep  “^[[:space:]]\{1,\}” /boot/grup/grup.conf                     &…

    2017-03-01
  • vsftpd虛擬用戶搭建

    首選的FTP服務器搭建方式 安裝vsftpd      yum install -y vsftpd      systemctl enable vsftpd     #設置開機啟動      systemctl is-enabled vsf…

    Linux干貨 2017-04-27
欧美性久久久久