linux伺服器的一些配置(密碼過期策略、登入次數限制、私鑰登入等)

canfly666發表於2020-12-05

linux伺服器的一些配置

介紹關於linux伺服器的一些配置。


一、linux伺服器設定密碼過期策略

修改 /etc/login.defs 配置檔案,在用xshell登入到伺服器後,在命令列介面輸入 vim /etc/login.defs 進入伺服器配置檔案的修改介面,此時xshell介面如下:
在這裡插入圖片描述
其中該配置檔案中需要修改的幾個引數如下:

PASS_MAX_DAYS 60     #密碼最大有效期,此處引數PASS_MAX_DAYS為60,表示60天后,密碼會過期。99999表示永不過期。

PASS_MIN_DAYS 0      #兩次修改密碼的最小間隔時間,0表示可以隨時修改賬號密碼

PASS_MIN_LEN  8      #密碼最小長度,對於root無效

PASS_WARN_AGE 7      #密碼過期前多少天開始提示

在xshell介面輸入i,開啟vim的編輯功能,修改上面的引數來達到想要的密碼過期策略設定,比如上面的四個引數,代表linux伺服器使用者密碼的有效期為60天,兩次修改密碼的時間間隔為0天(即可以隨時修改密碼),使用者設定的密碼最小長度為8,在密碼過期前7天開始提示密碼將要過期。設定完成後按下Esc鍵,然後再輸入 :wq(注:需要前面的英文冒號)後按下Enter鍵,即對該配置檔案修改及配置成功。因為該配置檔案僅對之後系統新建的使用者有效,因此如果需要修改root使用者的密碼過期時間,可以先使用 chage -l root 指令檢視root使用者的密碼過期時間。
在這裡插入圖片描述
若想修改root使用者的密碼過期時間,輸入 chage -M 5 root 可將root使用者的密碼過期設定為5天后。輸入 chage -M 99999 root則將root使用者密碼設定為永不過期,對其他使用者的操作也如此。
在這裡插入圖片描述

示例:pandas 是基於NumPy 的一種工具,該工具是為了解決資料分析任務而建立的。

二、linux伺服器設定密碼登入次數限制

為了實現這個功能,主要需要修改兩個檔案 /etc/pam.d/sshd 和 /etc/pam.d/login 其中sshd是ssh登入的配置檔案,login是終端登入配置檔案。

登入失敗處理功能策略(ssh遠端連線登入)

首先在linux命令列介面輸入 vim /etc/pam.d/sshd進入sshd檔案的編輯介面,將配置程式碼新增至配置檔案的第一行,也就是#%PAM-1.0的下面如下:
在這裡插入圖片描述
引數說明:

#限制登入錯誤次數配置
auth required pam_tally2.so deny=3 unlock_time=20 #代表對普通使用者設定密碼錯誤3次之後便鎖定20s
auth required pam_tally2.so deny=3 unlock_time=20 even_deny_root root_unlock_time=20  #普通使用者和root使用者密碼錯誤3次之後鎖定20s

#各引數解釋:
even_deny_root #也限制root使用者;
deny=3 #設定普通使用者和root使用者連續錯誤登陸的最大次數,超過最大次數,則鎖定該使用者
unlock_time=20 #設定普通使用者鎖定後,多少時間後解鎖,單位是秒;
root_unlock_time #設定root使用者鎖定後,多少時間後解鎖,單位是秒;

修改好該配置檔案後按下ESC,輸入:wq 儲存退出後,該配置檔案即可生效。

登入失敗處理功能策略(伺服器端)

vim /etc/pam.d/system-auth (伺服器終端),其他操作均同上。

登入失敗處理功能策略(終端)

vim /etc/pam.d/login (終端),其他操作均同上。

三、linux伺服器設定公鑰登入

給linux伺服器配置公鑰登入首先需要生成公鑰和私鑰,生成祕鑰的方式有很多種,能直接在xshell等連線工具生成或者直接在伺服器生成,如果已有公鑰和私鑰,可以直接跳至修改配置檔案部分。如沒有祕鑰,以下提供一種伺服器生成祕鑰的方法,按照以下步驟輸入指令,生成公鑰和私鑰:

生成祕鑰

[root@VM-8-15-centos ~]# ssh-keygen -t rsa    #選擇rsa演算法加密生成公鑰和私鑰
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): test #輸入公鑰名
Enter passphrase (empty for no passphrase):   #輸入密碼
Enter same passphrase again:                  #再次輸入密碼
Your identification has been saved in test.
Your public key has been saved in test.pub.
The key fingerprint is:
SHA256:9o48dWPNIDUG7tKXI6y865I/dlFRU2ILoMJea3Cm7do root@VM-8-15-centos
The key's randomart image is:
+---[RSA 2048]----+
|          oo..=..|
|     .   o  =o + |
|      + = .o o.  |
|     . O =. o.   |
|      o S =o++   |
|       = +oo+.o  |
|       .+..+ .   |
|      o+++.      |
|      .=E=.      |
+----[SHA256]-----+

修改配置檔案

將生成的祕鑰檔案一個私鑰(無字尾)和一個公鑰(字尾.pub),移動至 .ssh資料夾(該操作目的為方便之後的配置)。在.ssh目錄下執行 以下指令:

[root@VM-8-15-centos .ssh]# cat test.pub >> ~/.ssh/authorized_keys    #將生成的公鑰輸出到authorized_keys檔案

[root@VM-8-15-centos .ssh]# chmod 600 authorized_keys				  #修改authized_keys的許可權

[root@VM-8-15-centos .ssh]# vim /etc/ssh/sshd_config				  #進入sshd_config配置檔案的修改介面
#新增或修改以下配置
RSAAuthentication yes		#是否開啟rsa驗證
PubkeyAuthentication yes    #是否啟用公鑰
AuthorizedKeysFile .ssh/authorized_keys   #公鑰儲存位置

PasswordAuthentication no: #是否使用密碼登入,如果想只使用私鑰登入,可以設定為no

在這裡插入圖片描述
配置檔案修改完成之後,輸入service sshd restart (注: centOS 6)或者 systemctl restart sshd.service (注:centOS 7)重啟sshd服務,使配置檔案生效,將生成的私鑰下載至本地,在xshell或者其他工具上匯入該私鑰(私鑰妥善保管),即可實現伺服器的私鑰登入。

linux伺服器修改預設賬戶使用者名稱

修改以下兩個配置檔案即可:
程式碼如下:

vim /etc/passwd 	#將第一行的第一個root替換為重新命名的使用者
vim /etc/shadow 	#將這一行中的root 替換為重新命名的使用者

如果碰到不能儲存退出的情況,使用 :wq! 指令強制儲存退出即可,修改完這兩個配置檔案之後,即可使用新的使用者名稱登入。

總結

這些都是在日常學習中的總結,第一次用csdn寫部落格,樣式啥的不太會,所以看起來會挺亂的,請見諒。

相關文章