ssh免密登陸

2021-10-01 05:39:19 字數 3527 閱讀 4986

ssh   --> 連線伺服器

ssh [email protected] -->連線10.0.0.1伺服器,使用root使用者

ssh 10.0.0.1 -->連線10.0.0.1伺服器,使用的使用者取決於當前登入系統的使用者

-p ssh [email protected] -p 22 指定連線對端伺服器的埠

scp 遠端拷貝

推送push

(1)將本地aa.com檔案, 推送到31伺服器的/root目錄下,使用的是31伺服器的root系統使用者身份

[root@backup ~]# scp aa.com [email protected]:/root/

拉取pull

(2)獲取31伺服器的/root/aa.com檔案,至本地/tmp目錄,使用的是31的root系統使用者身份

[root@backup ~]# scp [email protected]:/root/aa.com /tmp/

(3)拷貝目錄

-r 引數

-p 埠

-l 限速 #限速為8096kb,換算為mb,要除以 8096/8=1024kb=1mb

[root@backup ~]# scp -r -p2222 etc.tar.gz [email protected]:/tmp/

(4)scp建議:

1.通常用來拷貝配置檔案

2.大檔案方式

1.先打包,在推送

2.rsync方式

限速非常的重要

(1)使用者密碼:     lastpass |  1password

.....

(2)密碼複雜容易忘

(3)密碼簡單不安全

2.秘鑰方式:

鎖(公鑰) 鑰匙(私鑰)

1) 生成秘鑰對 172.16.1.61

[root@manager ~]# ssh-keygen -c [email protected]

2) 將a伺服器公鑰推送到b伺服器 172.16.1.61 ---> 172.16.1.31

[root@manager ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

#將61伺服器的root使用者的公鑰推送給31伺服器的root使用者

3) 測試a伺服器是否能免密碼登入b伺服器

[root@manager ~]# ssh '[email protected]'

last login: mon dec 2 11:03:45 2019 from m01

[root@backup ~]#

塞key

老師 公鑰 -----> 學生 公司的伺服器上

你想登入哪台伺服器

1.要知道那台伺服器的密碼

2.將你的公鑰放置對應伺服器的對應目錄下即可

ssh作為遠端連線服務,通常我們需要考慮到該服務的安全,所以需要對該服務進行安全方面的配置。

1.不使用公網ip位址

2.禁止root管理員直接登入 -->

3.更改遠端連線登陸的埠 --> 6666 3344 44555 52179

4.密碼認證方式改為金鑰認證 -->

ssh服務登入防護需進行如下配置調整,先對如下引數進行了解

vim /etc/ssh/sshd_config

port 6666 # 變更ssh服務遠端連線埠

permitrootlogin no # 禁止root使用者直接遠端登入

passwordauthentication no # 禁止使用密碼直接遠端登入

usedns no # 禁止ssh進行dns反向解析,影響ssh連線效率引數

gssapiauthentication no # 禁止gss認證,減少連線時產生的延遲

將如下具體配置新增至/etc/ssh/sshd_config檔案中,引數需根據實際情況進行調整

###ssh###

#port 6666

#passwordauthentication no

#permitrootlogin no

gssapiauthentication no

usedns no

###end###

fail2ban又是啥?

fail2ban可以監控系統日誌,並且根據一定規則匹配異常ip後使用firewalld將其遮蔽,尤其是針對一些爆破/掃瞄等非常有效。

[root@bgx ~]# systemctl start firewalld

[root@bgx ~]# systemctl enable firewalld

[root@bgx ~]# firewall-cmd --state

running

#放行sshd服務埠

#過載配置

[root@bgx ~]# firewall-cmd --reload

#檢視已放行埠

[root@bgx ~]# firewall-cmd --list-service

3.安裝fail2ban,需要有epel

[root@bgx ~]# yum install fail2ban fail2ban-firewalld mailx -y

4.配置fail2ban規則.local會覆蓋.conf檔案

[root@bgx fail2ban]# cat /etc/fail2ban/jail.local

[default]

ignoreip = 127.0.0.1/8

bantime = 86400

findtime = 600

maxretry = 5

banaction = firewallcmd-ipset

action = %(action_mwl)s

[sshd]

enabled = true

filter = sshd

port = 22

action = %(action_mwl)s

logpath = /var/log/secure

5.啟動服務,並檢查狀態

[root@bgx ~]# systemctl start fail2ban.service

[root@bgx ~]# fail2ban-client status sshd

6.清除被封掉的ip位址

[root@bgx ~]# fail2ban-client set sshd unbanip 10.0.0.1

7.ssh如何結合google authenticator 實現雙向驗證? (只支援你使用密碼的方式)

1.先輸入手機上的驗證碼

2.輸入密碼

ssh 免密登陸

摘要 在本地生成公鑰私鑰對,並將公鑰上傳至 server 端實現免密登陸。1.使用 ssh keygen 生成金鑰 ssh keygen t rsa f filename在生成金鑰對時,會要求輸入 passphrase generating public private rsa key pair.e...

ssh免密登陸

有兩台linux機器 node1 172.16.160.92 node2 172.16.160.91 先在node1 172.16.160.92 這台機器操作 生產金鑰 ssh keygen t rsa p 回車把id rsa.pub追加到授權的key裡面去。cat ssh id rsa.pub s...

SSH免密登陸

建立秘鑰 ssh keygen 傳送秘鑰 ssh copy id ip 登陸ssh ip 在進行ssh登陸的時候依然要輸入密碼的解決方案 是被登入機器的檔案許可權問題 使用者許可權 chmod 700 home hadoop ssh資料夾許可權 chmod 700 home hadoop ssh a...