今日修煉
ssh遠程登錄
ssh由Secure Shell(安全的Shell)簡寫而來。
ssh首先是一個協議,定義瞭如何通過終端安全地訪問遠程的服務器。其次,在Linux中,它也是一個遠程登錄工具的名稱,一個命令行的名稱。sshd則是為ssh遠程登錄服務的後臺守護進程。大多情況下,運維人員需要使用ssh來登錄遠程服務器,以進行管理作業。
在Windows操作系統的電腦上,需要安裝Windows版本的SSH軟件,比如PuTTy。自Windows 7開始,Windows操作系統自帶的PowerShell也是一個不錯的ssh替代產品。
在Linux絕大部分發行版中,ssh工具早已裝好,你只需要打開一個Shell終端,鍵入ssh命令即可登錄遠程服器。
1)ssh的使用
# ssh [email protected]
# ssh -t [email protected] cat /var/log/messages
# ssh [email protected] -p 2222
# ssh 192.168.22.129
第一行命令,sshs以root身份,登錄192.168.22.129服務器。
第二行命令中,使用了參數-t,後面跟了另一個命令行“cat /var/log/messages”,即能過ssh遠程執行命令。
第三行命令,登錄的目標主機的ssh端口不是22,而是2222。
第四行命令,省略了用戶名,會使用當前用戶的用戶名去登錄。
2)openSSH的安裝
在大多數Linux發行版下,都安裝了openSSH。如果你的主機上沒有安裝ssh,則可以這樣安裝:
# yum install -y openssh-server
3)ssh的關啟
# systemctl start sshd //啟動
# systemctl stop sshd //停止
# systemctl restart sshd //重啟
# systemctl enable sshd //設為自動啟動
# systemctl disable sshd //不允許自動啟動
4)在防火牆中允許ssh
在本機防火牆中開通ssh服務或22端口,相當於允許外面的客戶端來遠程訪問本機。命令如下:
# firewall-cmd --permanent --add-service=ssh
# firewall-cmd --reload
如果知道ssh監聽的端口,也可以開通端口。如一般情況下,ssh監聽的是22號端口。
# firewall-cmd --permanent --add-port=22/tcp
# firewall-cmd --reload
5)ssh客戶端的配置
這裡講ssh,往往有兩個意思:ssh客戶端和sshd服務端守護進程。所以,對應的,也有兩個配置文件:
ssh服務端配置文件:/etc/ssh/sshd_config
ssh客戶端配置文件:/etc/ssh/ssh_config
在本機(ssh_config駐留的主機)上使用ssh這個命令去登錄別的主機,受到客戶端配置文件的約束。具體設置可以通過下面的命令查找:
# man 5 ssh_config
6)ssh服務端的配置
服務端配置文件是/etc/ssh/sshd_config,修改其中內容後,重新啟動服務才能生效。從遠程登錄到本機(sshd_config駐留的主機)將受到這個配置的影響。
# systemctl restart sshd
下面是阿郎哥感興趣的幾個配置:
#Port 22
缺省的情況下,監聽的端口是22。如果去掉前面的#,把22修改成其他的端口,可以在這裡改。如改成:Port 2222
但是要記得將2222打上SELinux的標籤。
# semanage port -a -t ssh_port_t -p tcp 2222
#PermitRootLogin yes
缺省允許root遠程登錄。將#去掉,寫成“PermitRootLogin no”。生產服務器上,最好禁止root用戶登錄。
#PubkeyAuthentication yes
缺省這個是禁用的。如果去掉前面的註釋符號#,將不接受密碼驗證方式。只能配成免密碼登錄方式。
AuthorizedKeysFile .ssh/authorized_keys
缺省的情況下,會在各個用戶的家目錄下的隱藏目錄~/.ssh下一個名叫authorized_keys裡記錄遠程用戶上傳來的公鑰文件的內容。一般是通過ssh-copy-id上傳id_rsa.pub,並其中的內容追加到authorized_keys後面。
#DenyUsers xiaoming zhuzhu
一般情況下,看不到DenyUsers命令。如果啟用這個,將會禁止xiaoming(小明)和zhuzhu(豬豬)登錄。
Linux文件系統的管理
1994年2月14日,Linux基金會發布了一個文件結構標準,Filesystem Hierarchy Standard,簡稱FHS,用以規範Linix及Unix系列操作系統的文件結構 。FHS目前更新到3.0版,只有Linux操作系統在遵守。
我們在Shell終端內,運行ls命令,便可以看到Linux的文件結構。
# ls -lh /
對於存放文件的空間,人們有時稱其為目錄,有時稱其為路徑,或者文件夾。根據FHS,Linux主要目錄或路徑如下:
/ ,根目錄
/bin,存放所有用戶可用的、二進制的(被編譯過)基本命令
/dev,存放設備及特殊文件
/etc,存放本機系統配置
/home,存放系統用戶的文件的地方
/lib,存放共享庫的地方
/media,臨時掛載cdrom、USB等設備的地方,CentOS上使用的是/run
/mnt,掛載外部的文件系統如nfs或者cdrom、USB或移動硬盤等設備
/opt,有時你看不到這個目錄,跟/usr/local一樣,供用戶安裝程序的地方
/proc,存放內核及進程信息,是一個虛擬文件系統
/run,臨時掛載cdrom、USB等設備的地方
/sbin,存放系統命令,全部是二進制文件,據說都是系統管理員使用的命令
/srv,這個目錄被用來存放對外分享的資源
/sys,存放內核及系統信息,是一個虛擬文件系統
/tmp,存放臨時的地方
/usr/include,存放C語言程序包含的頭文件
/usr/src,存放源代碼
/var,存放不斷增長的信息,如果郵件、日誌、數據庫等
今日命令清單:
43. useradd xiaoming //添加一個叫xiaoming的用戶
44. groupadd jail //添加一個叫jail的用戶組
45. useradd -G jail zhuzhu //添加一個叫zhuzhu的用戶,並將其加入jail附加組
46. gpasswd -a xiaoming wheel //將用戶xiaoming添加到wheel組
47. passwd zhuzhu //為用戶zhuzhu設置密碼
48. cat /etc/passwd //查看/etc/passwd的內容
49. id xiaoming //查看用戶xiaoming的基本信息
50. echo ‘123456’ | sha512sum //用sha512算法加密字串“123456”
51. grub2-mkpasswd-pbkdf2 //生成grub密碼
52. grub2-mkconfig -o /boot/grub2/grub.cfg //生成grub2啟動菜單
53. ssh-keygen //生成公鑰私鑰對
54. ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected] //將公鑰上傳到目標服務器
55. ssh [email protected] //使用root身份登錄遠程主機
56. less ~/.ssh/authorized_keys //用less命令查看公鑰存儲文件的內容
57. systemctl start sshd //啟動sshd服務
58. systemctl stop sshd //停止sshd服務
59. systemctl restart sshd //重啟sshd服務
60. systemctl enable sshd //將sshd服務設為自動啟動
61. systemctl disable sshd //不允許sshd自動啟動
62. firewall-cmd --permanent --add-service=ssh //添加ssh服務,永久有效
63. firewall-cmd --reload //讓防火牆的新規則立即生效
64. man 5 ssh_config //查看Linux用戶手冊中第5部分ssh_config的幫助信息
65. semanage port -a -t ssh_port_t -p tcp 2222 //將端口2222貼上ssh_port_t標籤
66. ls -ld /root //顯示目錄的詳細信息
67. ls -la /root //顯示目錄下的隱藏文件
68. mkdir /test //創建目錄
69. rm -rf /test //刪除目錄
70. du -h /usr //查看目錄及其包含的文件佔用磁盤空間大小
71. ls -R /etc //列舉目錄及其子目錄下的所有文件
72. cd /test //切換到/test目錄下
73. cd ~ //切換到當前用戶的家目錄
74. cd //切換到當前用戶的家目錄
75. cd . //切換到當前目錄,及字符“.”代表當前目錄
76. cd .. //切換到當前目錄的上一級目錄
77. pwd //查看當前目錄
78. rmdir /empty //刪除空目錄。如果目錄下有文件則刪除不了
閱讀更多 大別阿郎 的文章
關鍵字: PowerShell Windows 登錄