Ⅰ ssh遠程連接伺服器執行命令
首先說一下使用ssh遠程連接伺服器執行命令的方法:
為了方便描述,這里把測試伺服器稱之為A1,目標伺服器稱之為A2
如果可以直接登錄到A2,則配置成功!
下面來說問題:
ssh在遠程連接伺服器執行命令的時候,經常會遇到環境變數的問題,如下:
如果出現上面的提示,則說明環境變數配置有問題。
先來說解決辦法
問題解決!
這里就要說明bash有兩種方式interactive + login shell模式和non-interactive + non-login shell模式
在伺服器上執行命令,走的是interactive + login shell模式,而通過遠程登錄執行命令,走的是non-interactive + non-login shell模式。
這兩種模式對於環境變數的讀取是有區別的。
Shell首先會載入/etc/profile文件,然後再嘗試依次去載入下列三個配置文件之一,一旦找到其中一個便不再接著尋找:
~/.bash_profile
~/.bash_login
~/.profile
所以當遠程執行命令時,我們只需要讓~/.bashrc文件中的環境變數與/etc/profile中的環境變數一致即可!
參考:
如何解決SSH遠程執行命令找不到環境變數的問題
Ⅱ 如何通過ssh工具遠程連接linux伺服器
1、首先伺服器必須設置密碼或公鑰登錄
2、開放防火牆允許訪問sshd埠
netstat -ntlp查看埠
iptables -nvL檢查防火牆
3、用secureCRT或者putty或者xshell等工具,連接伺服器IP或域名
Ⅲ 請教如何用ssh連接遠程伺服器
目前,遠程連接伺服器的類型有以下幾種:
① 文字介面的明文傳輸:Telnet、RSH為主,很少用到。
② 文字介面的加密傳輸:以SSH為主,已經取代了上面的明文傳輸方式。
③ 圖形介面:XDMCP、VNC、XRDP等較為常見。
這篇文章只為實戰,不為普及概念性知識。所以我只講解在工作中最常用到的技術SSH。關於SFTP技術和VNC技術,請查閱我的其他博客。
好,先來看一下SSH的相關技術:
SSH,英文全程是Secure Shell Protocol(安全的殼程序協議)。SSH是現在公司基本上都在使用的一種文字介面的加密傳輸技術,採用的是非對稱秘鑰系統。
對於SSH的原理,你們可以參考我的另外一篇博客,我把鏈接貼在這里:
SSH原理
⑴來吧,我們先來查看一下sshd這個服務(這就是SSH的遠程連接必須開啟的服務,屬於系統自帶),注意,一般這個sshd服務是默認自動開啟的。
注意:切記authorized_keys這個文件的許可權必須是644
Ⅳ ssh怎麼連接遠程伺服器
Mac端
打開Mac的終端 輸入ssh 用戶名@IP地址 -p 埠號,或者在程序塢中右鍵終端圖標,選擇新建遠程連接,選擇「安全Shell(ssh)」然後點擊右邊伺服器下面的加號,在輸入框中如遠程連接的伺服器的名稱或IP地址,然後點擊 好。在「安全Shell(ssh)」的伺服器就可以看見你剛才添加的伺服器,選中剛添加的伺服器 用戶輸入框中輸入遠程伺服器的用戶名,點擊連接。終端會新跳出一個窗口,輸入遠程伺服器的用戶密碼即可完成連接。
Win端
打開cmd 輸入ssh 用戶名@IP地址 -p 埠號,或者使用putty,xshell第三方工具
安卓端
下載juicessh根據提示完成
Ⅳ Mac使用Shell(終端)SSH連接遠程伺服器的方法
前提:要有你需要連接的伺服器的ip,埠號,伺服器上的賬戶和密碼
1、首先打開終端,然後輸入sudo su - 回車進入根目錄
2、然後輸入:ssh -p 埠號 伺服器用戶名@ip (例如ssh -p 22 [email protected])回車,到這會讓你輸入yes或者no來確認是否連接,輸入yes回車
3、然後輸入在伺服器上的用戶密碼回車
4、到此進入的是你在伺服器上的賬戶的目錄,即為連接成功
最後輸入sudo su -進入伺服器的根目錄,進行操作
連接設置別名
使用vi命令編輯一下~/.ssh/config這個文件(如果目錄下沒有這個文件,可以新建一個),接著按下面格式添加內容:
另外,如果想查看當前有哪些配置了別名的伺服器,可以使用命令cat ~/.ssh/config | grep 「Host」來查看
Ⅵ SSH多種遠程登錄方法
使用 SSH 登錄伺服器有兩種方法: 用戶賬號登錄 和 使用公鑰登錄
直接使用以下命令
另外可以配置主機別名,這個和 使用公鑰登錄 差不多,區別是無需指定公鑰地址而已,這里就不重復了。
方法一:(在命令行中指定私鑰文件)
方法二:(使用 ssh-agent 代理)
方法三:(在 SSH 配置中指定私鑰文件)
使用跳板機登錄的方法在我看來不算其它登錄方式,它用到的還是本章的內容。
如果我把這三種方法都用了呢?即既使用了 -i ~/.ssh/id_rsa_server ,又使用了 ssh-agent ssh-add ~/.ssh/id_rsa_server ,還使用了域名主機配置 IdentityFile ~/.ssh/id_rsa 。
答案很簡單,SSH 會先使用 -i ~/.ssh/id_rsa_server ,如果登錄失敗,則使用 ssh-agent ssh-add ~/.ssh/id_rsa_server ,找不到合適的公鑰的話,再使用 IdentityFile ~/.ssh/id_rsa ,還是失敗的話則提示輸入密碼,如果允許賬號登錄的話,否則整個登錄失敗。
Ⅶ 如何使用SSH登錄遠程伺服器
Windows下有很多SSH工具。在這里用的是Putty。如果安裝了Git並配置使用Putty的話,就不需要另外在安裝Putty了。使用SSH連接伺服器的命令如下:ssh IP地址
一般來說為了安全性考慮,埠號等一些參數並不會使用默認值。這樣的話命令就變成這樣:
ssh 用戶名@IP地址 -p 埠號
如果連接成功的話會提示你輸入遠程伺服器的密碼。全部成功之後SSH就會顯示遠程伺服器的提示符,這時候就說明連接成功了。
每次登錄SSH都需要輸入密碼很麻煩,而且可能不太安全。SSH還能使用另外一種登錄方式,也就是使用密鑰登錄。這種登錄方式需要客戶端生成一堆公鑰私鑰對,然後將公鑰添加到伺服器中,這樣下次就可以直接登錄了。
首先生成SSH密鑰,依照提示輸入信息即可。默認生成在用戶主目錄中的.ssh文件夾中。帶pub的是公鑰,接下來需要添加到伺服器中。
ssh-keygen
然後將本地公鑰添加到伺服器中,需要使用另一個命令:
scp -P 埠號 本地文件路徑 用戶名@遠程伺服器地址:遠程路徑
然後登陸伺服器,找到復制進去的公鑰,將公鑰名字改為authorized_keys並添加到對應的.ssh文件夾中。然後退出SSH重新登陸試試,成功的話不需要輸入密碼就會直接進入遠程伺服器。
Ⅷ 如何通過SSH遠程連接計算機
命令格式: ssh [-p port] user@remote
user 是在遠程機器上的用戶名,如果不指定的話默認為當前用戶
remote 是遠程機器的地址,可以是 IP/域名,或者是 後面會提到的別名
port 是 SSH Server 監聽的埠,如果不指定,就為默認值 22
ssh 這個終端命令只能在 Linux 或者 UNIX 系統下使用
如果在 Windows 系統中,可以安裝 PuTTY 或其它遠程 連接軟體即可
在工作中,SSH 伺服器的埠號很有可能不是 22,如果遇到這種情況就需要使用 -p 選項,指定正確的埠號,否則無法正常連接到伺服器。相關內容黑馬程序員軟體測試的基礎班都有,你要想學的話,基礎班有活動的話還免費。有人帶著之後基本上自己就有方向了。
Ⅸ Mac下使用SSH遠程登錄伺服器
MAC 是自帶SSH的,可以使用whereis查看是否存在,在終端執行下面的命令: 執行完後會列印存在路徑 之後查看現有進程,執行下列命令: 執行完後會列印現有進程,但是你會發現找不到ssh對應的進程 下列為我的終端執行命令後的結果 這時候如果直接使用SSH命令連接本地主機或者遠程主機會遇到下列錯誤: 解決方法:打開系統偏好設置,在共享中,打開遠程登錄,如下圖: 之後使用ssh localhost來測試一下,如果提示輸入密碼來認證就沒問題了。 之後再grep一下進程就可以看到ssh進程在運行了: 可以通過ssh命令連接其他主機,例如: ssh [email protected] 也可以通過ssh命令連接其他伺服器,例如:ssh -p 埠 用戶名@伺服器ip地址