掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
SSH 是 Linux 下進行遠程連接的基本工具,SSH對常用的用途就是登錄,SSH 命令可是完成遠程操作的神器啊,借助它我們可以把很多的遠程操作自動化掉,下面有大家講解一下SSH命令神奇的使用方法

ssh(選項)(參數(shù))
-1:強制使用ssh協(xié)議版本1;
-2:強制使用ssh協(xié)議版本2;
-4:強制使用IPv4地址;
-6:強制使用IPv6地址;
-A:開啟認證代理連接轉(zhuǎn)發(fā)功能;
-a:關(guān)閉認證代理連接轉(zhuǎn)發(fā)功能;
-b:使用本機指定地址作為對應(yīng)連接的源ip地址;
-C:請求壓縮所有數(shù)據(jù);
-F:指定ssh指令的配置文件;
-f:后臺執(zhí)行ssh指令;
-g:允許遠程主機連接主機的轉(zhuǎn)發(fā)端口;
-i:指定身份文件;
-l:指定連接遠程服務(wù)器登錄用戶名;
-N:不執(zhí)行遠程指令;
-o:指定配置選項;
-p:指定遠程服務(wù)器上的端口;
-q:靜默模式;
-X:開啟X11轉(zhuǎn)發(fā)功能;
-x:關(guān)閉X11轉(zhuǎn)發(fā)功能;
-y:開啟信任X11轉(zhuǎn)發(fā)功能。
語法看上去很死板累贅,其實用不到那么多。習(xí)慣中就只用這個
ssh name@server-ip
或者
ssh server-ip -l name
以上兩種方式都可以遠程登錄到服務(wù)器,server-ip代表遠程服務(wù)器的IP地址,name代表SSH登陸進遠程服務(wù)器的用戶名,一般為root。
如果遠程服務(wù)器的端口是其他的,在后面加上-p參數(shù)。
ssh name@server-ip -p 12345
連接成功終端就會提示繼續(xù)輸入用戶密碼,輸入就好了。
SSH登錄時有兩種驗證方式
為了避免每次都輸入密碼這種重復(fù)性工作,我們可以選擇使用公鑰進行遠程登錄。
本地生成密鑰對終端執(zhí)行 ssh-keygen 然后一路回車就行了,回車就是將密鑰對保存位置和打開密碼默認設(shè)置。執(zhí)行完畢會提示名為id_rsa和id_rsa.pub的私鑰文件和公鑰文件在/home/user/.ssh目錄下。
然后將公鑰上傳到遠程服務(wù)器
ssh-copy-id root@server-ip
server-ip為遠程服務(wù)器的IP地址。然后根據(jù)提示輸入密碼。當看到終端顯示
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'root@remoteserver"
and check to make sure that only the key(s) you wanted were added.
代表上傳成功,接著你可以只用使用“ssh root@server-ip”命令直接登陸遠程服務(wù)器,而不需要密碼了
就算是設(shè)置免密登陸,SSH命令后面需要帶的server-ip也夠麻煩的,過幾年普及IPV6地址,ssh登陸一次就欲仙欲死的。我們可以通過配置服務(wù)器別名的方式進一步免輸服務(wù)器的IP地址。
在/home/user/.ssh/目錄下新建config文件,內(nèi)容如下:
Host hostname
HostName server-ip
User root
IdentitiesOnly yes
保存退處即可。注意,第一行的hotname是你對服務(wù)器設(shè)置的別名,叫什么隨意。 第二行server-ip換成你的遠程服務(wù)器的IP。別真的傻乎乎的照搬復(fù)制了。
然后就可以執(zhí)行 “ssh hostname”命令(hostname換成你設(shè)置的別名)愉快的登陸進遠程服務(wù)器了。
如果報錯“Bad owner or permissions on /home/root/.ssh/config”字樣,那是權(quán)限的問題。
對config文件執(zhí)行
chmod 600 config
scp的拷貝命令。也可以直接使用,scp是linux系統(tǒng)下基于ssh登陸進行安全的遠程文件拷貝命令。當配置好ssh公鑰和別名,在scp上也一樣通用

我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流