遠端訪問及控制——ssh
遠端訪問及控制——ssh
ssh
ssh是什麼
- 是一種安全通道協議
- 對通訊資料進行了加密處理,用於遠端管理
- 服務名稱:sshd
- 服務端主程式: /usr/sbin/sshd
- 服務端配置檔案: /etc/ssh/sshd_config
使用者登入控制
AllowUsers zhangsan lisi@192.168.100.11
#表示只允許zhangsan登入,lisi在192.168.100.11主機上登入
PermitRootLogin no#空密碼登入
LoginGraceTime 2m#限制登入時間為2分鐘
MaxAuthTries 6#限制重試次數為6次
PasswordAuthentication yes#啟用密碼驗證,密碼對驗證
PubkeyAuthentication yes#指定公鑰庫位置
遠端命令
ssh user@host -p 埠號#遠端安全登入
scp user@host:file1 file2#將目標主機中的file1檔案複製到本主機重命令為file2(下載)
scp file1 user@host:file2#將本主機上的file1檔案複製到目標主機上重新命名為file2(上傳)
sftp user@host#安全FTP上下載(登入的為user的家目錄)
構建ssh金鑰
構建金鑰對驗證的ssh體系
- 建立金鑰對
私鑰檔案:id_rsa
公鑰檔案:id_rsa.pub - 上傳公鑰檔案
id_rsa.pub - 匯入公鑰資訊
公鑰庫檔案:/home/lisi/.ssh/authorized_keys - 使用金鑰對驗證方式
- 即以服務端的使用者lisi的身份進行登入
ssh-keygen命令
- 可用的加密演算法:RSA、ECDSA或DSA
ssh-keygen -t ecdsa
scp ~/.ssh/id_ecdsa.pub root@172.16.16.22:/tmp
mkdir /home/lisi/.ssh
cat /tmp/id_ecdsa.pub >> /home/lisi.ssh/authorized_keys
tail -l /home/lisi/.ssh/authorizedz-keys
客戶端使用金鑰對驗證登入
- 驗證使用者:伺服器的使用者
- 驗證密碼:客戶端的使用者的私鑰短語
免密登入
免密登入即代理,有一定的安全風險,但是使用者伺服器對客戶機的控制比較方便管理。有密碼的情況下需要輸入 ssh-agent bash ,沒有就不用了。
- 伺服器上輸入 :ssh-keygen -t rsa
- 伺服器上輸入:ssh-copy-id 192.168.188.130(客戶機ip)
- 伺服器上輸入: ssh-agent bash (如果設定的時候沒有設定密碼,此步驟可以省略)
- 伺服器上輸入:ssh- add
- 輸入密碼金鑰
代理成功!無密碼直接登入! - ssh root@192.168.188.130
Tcp Wrappers
保護機制的實現方式
- 方式1:通過tcpd程式對其他服務程式進行包裝
- 方式2:由其他服務程式呼叫libwrap.so.*連結庫
訪問控制策略的配置檔案
/etc/hosts.allow #相當於白名單
/etc/hosts.deny #相當於黑名單
設定訪問控制策略
- 策略格式:服務程式列表:客戶端地址列表
- 服務程式列表
多個服務以逗號分隔,ALL表示所有服務 - 客戶端地址列表
多個地址以逗號分隔,ALL表示所有列表
允許使用萬用字元?和*
網段地址,如192.168.10._ 或者192.168.2.0/24
區域地址,如 .benet.com
TCP Wrappers策略應用
- 檢查hosts.allow,找到匹配則允許訪問
- 再檢查hosts.deny,找到則拒絕訪問
- 若兩個檔案中均無匹配策略,則預設允許訪問
相關文章
- SSH遠端訪問及控制
- 詳解Linux中SSH遠端訪問控制Linux
- Linux SSH遠端訪問Linux
- “SSH”讓遠端控制更安全(轉)
- windows terminal ssh 免密訪問遠端伺服器Windows伺服器
- Redis遠端訪問Redis
- 威聯通NAS VirtualizationStation 安裝ubuntu配置SSH遠端訪問Ubuntu
- Go實現ssh執行遠端命令及遠端終端Go
- TeamViewer遠端訪問View
- 配置 RAC 節點以便可以使用 SSH 進行遠端訪問
- 基於SSH遠端訪問WSL2(非長期穩定版本)
- rabbitmq 新增遠端訪問功能MQ
- PostgreSQL 9.6 配置遠端訪問SQL
- linux遠端訪問問題薦Linux
- 01 . Go語言實現SSH遠端終端及WebSocketGoWeb
- 遠端客戶端 訪問 ASM 例項客戶端ASM
- mysql如何允許遠端訪問MySql
- jupyter notebook 遠端訪問
- mysql賬戶新增遠端訪問MySql
- NAS如何實現遠端訪問
- 遠端訪問jupyter notebook
- django:runserver實現遠端訪問DjangoServer
- 遠端登錄檔訪問 (轉)
- Docker 如何開啟遠端訪問Docker
- Git 安全遠端訪問:SSH 金鑰對生成、新增和連線步驟解析Git
- vnc遠端訪問,推薦四款免費又好用的vnc遠端訪問軟體VNC
- 訪問jboss上EJB遠端介面問題
- 使用 Frp 和 Docker 通過遠端桌面和 SSH 來遠端控制 Windows(反向代理)FRPDockerWindows
- windows開了遠端控制訪問老提示密碼賬號不正確Windows密碼
- 使用遠端控制操作遠端xp sp2的問題
- 遠端訪問技術指什麼
- 遠端訪問技術是什麼
- postgresql遠端不能訪問 - PostgreSQL9.4.5SQL
- 遠端資料庫的訪問 (轉)資料庫
- VNC遠端控制,VNC遠端控制連線WindowsVNCWindows
- SSH 隧道遠端連線
- SSH遠端登入原理
- AIX下ssh信任關係建立後ssh 遠端訪問仍然需要輸入密碼問題解決 - 目錄許可權問題AI密碼