1. 制作密鑰對

丹東網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項目制作,到程序開發(fā),運營維護(hù)。成都創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。
在服務(wù)器上制作密鑰對。首先用密碼登錄到你打算使用密鑰登錄的賬戶,然后執(zhí)行以下命令:
[root@host ~]$ ssh-keygen == 下面是相應(yīng)的操作提示,以及密鑰生成的位置都會告訴我們。
Generating public/private rsa key pair.Enter file in which to save the key (/root/.ssh/id_rsa): == 按 EnterCreated directory '/root/.ssh'.Enter passphrase (empty for no passphrase): == 輸入密鑰鎖碼,或直接按 Enter 留空Enter same passphrase again: == 再輸入一遍密鑰鎖碼Your identification has been saved in /root/.ssh/id_rsa. == 私鑰Your public key has been saved in /root/.ssh/id_rsa.pub. == 公鑰The key fingerprint is:0f:d3:e7:1a:1c:bd:5c:03:f1:19:f1:22:df:9b:cc:08 root@host
在 當(dāng)前 用戶的家目錄中生成了一個 .ssh 的隱藏目錄,內(nèi)含兩個密鑰文件。id_rsa 為私鑰,id_rsa.pub 為公鑰。
2. 在服務(wù)器上安裝公鑰
鍵入以下命令,在服務(wù)器上安裝公鑰:
[root@host ~]$ cd .ssh
[root@host .ssh]$ cat id_rsa.pub authorized_keys
如此便完成了公鑰的安裝。為了確保連接成功,請保證以下文件權(quán)限正確:
[root@host .ssh]$ chmod 600 authorized_keys[root@host .ssh]$ chmod 700 ~/.ssh
3. 設(shè)置 SSH,打開密鑰登錄功能
編輯 /etc/ssh/sshd_config 文件,添加如下設(shè)置:
sudo vi /etc/ssh/sshd_config
RSAAuthentication yesPubkeyAuthentication yes
接著保存后 另外,請留意 root 用戶能否通過 SSH 登錄:PermitRootLogin yes
當(dāng)你完成全部設(shè)置,并以密鑰方式登錄成功后,再禁用密碼登錄:
PasswordAuthentication no
最后,重啟 SSH 服務(wù):
[root@host .ssh]$ service sshd restart
口令時效是一種系統(tǒng)機(jī)制,用于強制口令在特定的時間長度后失效。對用戶來說,這可能帶來了一些麻煩,但是它確保了口令會定期進(jìn)行更改,是一項很好的安全措施。默認(rèn)情況下,絕大多數(shù)的Linux分裝版本并沒有打開口令時效,不過要想打開卻非常簡單。
通過編輯/etc/login.defs,你可以指定幾個參數(shù),來設(shè)置口令實效的默認(rèn)設(shè)定:
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_WARN_AGE 7
當(dāng)設(shè)置口令時效的天數(shù)為99999時,實際上相當(dāng)于關(guān)閉了口令時效。一個更明智的設(shè)定一般是60天——每2個月強制更改一次密碼。
PASS_MIN_DAYS參數(shù)則設(shè)定了在本次密碼修改后,下次允許更改密碼之前所需的最少天數(shù)。PASS_WARN_AGE的設(shè)定則指明了在口令失效前多少天開始通知用戶更改密碼(一般在用戶剛剛登陸系統(tǒng)時就會收到警告通知)。
你也會編輯/etc/default/useradd文件,尋找INACTIVE和EXPIRE兩個關(guān)鍵詞:
INACTIVE=14EXPIRE=這會指明在口令失效后多久時間內(nèi),如果口令沒有進(jìn)行更改,則將賬戶更改為失效狀態(tài)。在本例中,這個時間是14天。而EXPIRE的設(shè)置則用于為所有新用戶設(shè)定一個密碼失效的明確時間(具體格式為“年份-月份-日期”)。
顯然,上述這些設(shè)定更改之后,只能影響到新建立的用戶。要想修改目前已存在的用戶具體設(shè)置,需要使用chage工具。
# chage -M 60 joe
這條命令將設(shè)置用戶joe的PASS_MAX_DAYS為60,并修改對應(yīng)的shadow文件。
你可以使用chage -l的選項,列出當(dāng)前的賬戶時效情況,而使用-m選項是設(shè)置PASS_MIN_DAYS, 用-W則是設(shè)置PASS_WARN_AGE,等等。chage工具可以讓你修改特定賬戶的所有密碼時效狀態(tài)。
注意,chage僅僅適用于本地系統(tǒng)的賬戶,如果你在使用一個類似LDAP這樣的認(rèn)證系統(tǒng)時,該工具會失效。如果你在使用LDAP作為認(rèn)證,而你又打算使用chage,那么,哪怕僅僅是試圖列出用戶密碼的時效信息,你也會發(fā)現(xiàn)chage根本不起作用。
制定一項策略,定義多長時間一個密碼必須進(jìn)行更改,然后強制執(zhí)行該策略,是非常不錯的一個做法。在解雇了某個雇員后,口令時效策略會保證該雇員不可能在被解雇3個月后發(fā)現(xiàn)他的口令依然可用。即使系統(tǒng)管理員忽略了刪除他的帳號,該帳號也會因密碼時效策略而被自動鎖定。當(dāng)然源碼天空
,這一點并不能成為不及時刪除該雇員帳號的理由,但是這個策略的確提供了一層額外的安全防護(hù),尤其是在過去常常忽視及時清理帳號的情況下。
1. 使用命令 pwgen 來生成一個長度為 10 個字符的獨特的隨機(jī)密碼。假如你還沒有安裝 pwgen,請使用 Apt 或 YUM 等包管理器來安裝它。
$ pwgen 101
生成一個獨特的隨機(jī)密碼
一口氣生成若干組長度為 50 個字符的唯一的隨機(jī)密碼!
$ pwgen 50
生成多組隨機(jī)密碼
2. 你還可以使用 makepasswd 來每次生成一個給定長度的獨特的隨機(jī)密碼。在你把玩 makepasswd 命令之前,請確保你已經(jīng)安裝了它。如若沒有安裝它,試試使用 Apt 或 YUM 包管理器來安裝 makepasswd這個軟件包。
生成一個長度為 10 個字符的隨機(jī)密碼。該命令產(chǎn)生的密碼的長度默認(rèn)為 10。
$ makepasswd
使用 makepasswd 生成獨特的密碼
生成一個長度為 50 個字符的隨機(jī)密碼。
$ makepasswd --char50
生成長度為 50 的密碼
生成 7 個長度為 20 個字符的隨機(jī)密碼。
$ makepasswd --char20--count 7
3. 使用帶“鹽”的 Crypt(注:這里應(yīng)該指的是一個函數(shù),可以參考這里 ) 來加密一個密碼。提供手動或自動添加 “鹽”。
對于那些不清楚 鹽 的意義的人,這里的 “鹽” 指的是一個隨機(jī)數(shù)據(jù),它作為密碼生成函數(shù)的一個額外的輸入, 目的是保護(hù)密碼免受詞典攻擊。
在執(zhí)行下面的操作前,請確保你已經(jīng)安裝了 mkpasswd。
下面的命令將帶 “鹽” 加密一個密碼。“鹽” 的值是隨機(jī)自動生成的。所以每次你運行下面的命令時,都將產(chǎn)生不同的輸出,因為它每次接受了隨機(jī)取值的 “鹽”。
$ mkpasswd tecmint
使用 Crypt 來加密密碼
現(xiàn)在讓我們來手動定義 “鹽” 的值。每次它將產(chǎn)生相同的結(jié)果。請注意你可以輸入任何你想輸入的值來作為 “鹽” 的值。
$ mkpasswd tecmint -s tt
帶“鹽”加密密碼
另外, mkpasswd 還是交互式的,假如你在命令中沒有提供密碼,它將主動詢問你來輸入密碼。
4. 使用 aes-256-cbc 加密算法并使用帶“鹽”的密碼(如 “tecmint”) 加密一個字符串(如 “Tecmint-is-a-Linux-Community”)。
# echo Tecmint-is-a-Linux-Community | openssl enc -aes-256-cbc -a -salt -pass pass:tecmint
在 Linux 中加密一個字符串
在上面例子中, echo 命令的輸出通過管道傳遞給了 openssl 命令,使得該輸出通過加密編碼方式(enc:Encoding with Cipher ) 所加密,這個過程中使用了 aes-256-cbc 加密算法,并附帶了密碼 (tecmint) 和 “鹽” 。
5. 使用 openssl 命令的 -aes-256-cbc 解密選項來解密上面的字符串。
# echo U2FsdGVkX18Zgoc+dfAdpIK58JbcEYFdJBPMINU91DKPeVVrU2k9oXWsgpvpdO/Z | openssl enc -aes-256-cbc -a -d -salt -pass pass:tecmint
在 Linux 中解密字符串
現(xiàn)在就是這些內(nèi)容了。
你想問得是php如何執(zhí)行shell命令把?
可以用system(),exec(),passthru()這三個函數(shù)實現(xiàn)
雖然這三個命令都能執(zhí)行l(wèi)inux系統(tǒng)的shell命令,但是其實他們是有區(qū)別的:
system() 輸出并返回最后一行shell結(jié)果。
exec() 不輸出結(jié)果,返回最后一行shell結(jié)果,所有結(jié)果可以保存到一個返回的數(shù)組里面。
passthru() 只調(diào)用命令,把命令的運行結(jié)果原樣地直接輸出到標(biāo)準(zhǔn)輸出設(shè)備上。
相同點:都可以獲得命令執(zhí)行的狀態(tài)碼
例子:system("ls -al");
【使用之前要在php.ini中把safe_mode關(guān)閉】
網(wǎng)站標(biāo)題:linuxpass命令,linux sshpass的用法
當(dāng)前路徑:http://chinadenli.net/article21/dsicpcd.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計、面包屑導(dǎo)航、企業(yè)建站、、外貿(mào)網(wǎng)站建設(shè)、用戶體驗
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)