查看端口狀態(tài)
netstat
-t : 指明顯示TCP端口
-u : 指明顯示UDP端口
-l : 僅顯示監(jiān)聽(tīng)套接字(所謂套接字就是使應(yīng)用程序能夠讀寫(xiě)與收發(fā)通訊協(xié)議(protocol)與資料的程序)
-p : 顯示進(jìn)程標(biāo)識(shí)符和程序名稱,每一個(gè)套接字/端口都屬于一個(gè)程序。
-n : 不進(jìn)行DNS輪詢,顯示IP(可以加速操作)
netstat -lanp 查看一臺(tái)服務(wù)器上面哪些服務(wù)及端口
netstat -ntlp //查看當(dāng)前所有tcp端口ssh-copy-id
- 用途: ssh免密登錄
- 安裝: brew install ssh-copy-id
- 使用: 免密登錄ssh-copy-id username@ip;公鑰登錄ssh-copy-id -i identify-file username@ip
ansible
- 用途:配置和自動(dòng)化工具,可在本機(jī)終端配置節(jié)點(diǎn),自動(dòng)發(fā)布配置和部署。ansible無(wú)需在節(jié)點(diǎn)安裝客戶端agent,它通過(guò)ssh與節(jié)點(diǎn)通信,配合ssh-copy-id使用。
- 安裝:brew install ansible
- 使用:在/etc/ansible/hosts下設(shè)置節(jié)點(diǎn);ansible -m command -a "linux cmd" 'nodename',linux cmd是要執(zhí)行的命令,nodename是在hosts下配置的節(jié)點(diǎn)集合名
- ssh原理,通過(guò)ssh登錄遠(yuǎn)程主機(jī)X時(shí),X會(huì)把自己的公鑰發(fā)送給本機(jī),本機(jī)輸入登錄密碼時(shí)會(huì)用這個(gè)公鑰進(jìn)行加密,然后把加密的結(jié)果傳輸給X,X用自己的私鑰進(jìn)行解密,如果解出的密碼正確,則本次登錄成功。由于傳輸過(guò)程中的密碼進(jìn)行了加密,且解密私鑰在X上,因此保證了傳輸過(guò)程密碼的安全性,但是也會(huì)有第三方在中間偽造X的風(fēng)險(xiǎn)。而ssh免密登錄的原理是把用戶在本機(jī)生成的公鑰追加到X的.ssh/authorized_keys文件中,在登錄時(shí)X會(huì)把一個(gè)隨機(jī)字符串發(fā)給本機(jī),本機(jī)用生成的私鑰進(jìn)行加密,將結(jié)果傳回X,X通過(guò)用戶追加的公鑰進(jìn)行解密,如果成功,證明用戶是可信的。