[root@node1 scripts]# echo $RANDOM 4245 [root@node1 scripts]# echo $RANDOM 22740 RANDOM的隨機數范圍為0~32767,因此,加密性不是很好,可以通過在輸出的隨機數后增加加密字符串(就是和密碼生成有關的一個字符串)的方式解決,最后再一起執行md5sum操作並截取結果的后n位,這樣一來,就無法根據隨機數范圍0~32767來猜出具體結果了。 [root@node1 scripts]# echo king$RANDOM king22063 [root@node1 scripts]# echo king$RANDOM|md5sum 3fbe359b707854cabcbc96af50b717e4 - [root@node1 scripts]# echo king$RANDOM|md5sum|cut -c 8-15 eda56360
[root@node1 scripts]# openssl rand -base64 8 L6rJK6fykP4= [root@node1 scripts]# openssl rand -base64 80 7lWMxZTmmPwLCwkO24BxHX82CX2eOv7DGoS+Wsolo+L86dgfSQts7sokjDvG5uk2 6rQwrqqu1MIpFpyKtCNvEwSnh43/OWZAzqREA4NOkLA= 令數字與大小寫字符相結合,並且帶上特殊字符,可以達到很長的位數,這樣的隨機數很安全。
[root@node1 scripts]# date +%s%N 1602673097974691108
[root@node1 scripts]# head /dev/urandom|cksum 2360985463 1289 /dev/random設備存儲着系統當前運行環境的實時數據。它可以看作系統在某個時候的唯一值,因此可以用作隨機數元數據。我們可以通過文件讀取的方式,讀到里面的數據。/dev/urandom這個設備的數據與random里的一樣。只是,它是非阻塞的隨機數發生器,讀取操作不會產生阻塞。
[root@node1 scripts]# cat /proc/sys/kernel/random/uuid 01018ade-6388-45d9-8fd0-a14e2032c5c3 UUID碼全稱是通用唯一識別碼(Universally Unique Identifier,UUID),它是一個軟件建構的標准,亦為自由軟件基金會(Open Software Foundation,OSF)的組織在分布式計算環境(Distributed Computing Environment,DCE)領域的一部分。 UUID的目的是讓分布式系統中的所有元素都能有唯一的辨識信息,而不需要通過中央控制端來做辨識信息的指定。如此一來,每個人都可以創建不與其他人發生沖突的UUID。在這樣的情況下,就不需要考慮數據庫創建時的名稱重復問題了。它會讓網絡中任何一台計算機所生成的UUID碼都是互聯網整個服務器網絡中唯一的編碼。它的原信息會加入硬件、時間、機器當前運行信息等。
mkpasswd命令依賴於數據包expect,因此必須通過“yum install expect–y”命令先安裝該數據包: [root@node1 scripts]# mkpasswd -l 9 -d 2 -c 3 -C 3 -s 1 3TYKmb*9k 相關參數說明如下: -l # (length of password, default = 9) #<==指定密碼長度。 -d # (min # of digits, default = 2) #<==指定密碼中數字的數量。 -c # (min # of lowercase chars, default = 2) #<==指定密碼中小寫字母的數量。 -C # (min # of uppercase chars, default = 2) #<==指定密碼中大寫字母的數量。 -s # (min # of special chars, default = 1) #<==指定密碼中特殊字符的數量。
[root@node1 ~]# mkpasswd -l 9 -d 2 -c 3 -C 3 -s 1 |md5sum|cut -c 2-10 ae9f4de5a [root@node1 ~]# cat /proc/sys/kernel/random/uuid |md5sum |cut -c 2-10 c86a47f40 [root@node1 ~]# openssl rand -base64 8|md5sum |cut -c 2-10 c3aeb3623 [root@node1 ~]# date +%s%N|md5sum |cut -c 2-10 1e5d15e0f [root@node1 ~]# head /dev/urandom|cksum|md5sum |cut -c 2-10 0450c1874 [root@node1 ~]# echo king$RANDOM|md5sum|cut -c 2-10 74962dd54