우선 유저 2명을 만들어 봅니다
root@server1 ~]# useradd clouduser1
[root@server1 ~]# useradd clouduser2
둘을 같은 비밀번호로 설정
[root@server1 ~]# grep clouduser /etc/shadow
clouduser1:/tGwHo99frFIu2LunqYMv0n7TpmsjyOIySUsFfnFvLWwWjR5JNZGNWuxMc2kaWmpdE5vLZl7za6gRaX1Bog8zKrokbH9W1:18820:0:99999:7::: clouduser2:$6$8HvcnEBJo1hm8AVu8sM/YBt4KzxsORiOIHr3mWUQibvKFQMaSnnmGlsAdZufF55BUO0FUJ/TdmvF63aOnxzQNbK1ve1eM0:18820:0:99999:7:::
하지만 두계정의 암호값은 다른다
암호화와 인코딩은 다르다!
암호화(random, 난수) rsa, dsa -> 소인수 분해
인코딩(base64)
clouduser2:
6 :알고리즘 $6 $2 $6=SHA512 $8HvcnEBJ : salt(난수)o1hm8AVu8sM
$1 = md5
$2 = blowfish
$5 = SHA256
암호 and 솔트 -> 암호+솔트 -> 암호+솔트->hash 알고리즘(md5,sha512) -> hash값 생성
hash 알고리즘 변경
[root@server1 ~]# authconfig --passalgo=md5 --update
[root@server1 ~]# authconfig --test | grep hashing
password hashing algorithm is md5
새로 생기는 것 부터 바뀐 해쉬 알고리즘 변경
[root@server1 ~]# grep atom /etc/shadow
atom:k4zlSsVf$OEYMQpoXVtI6n9oNE/k6T/:18820:0:99999:7:::
[root@server1 ~]# grep user1 /etc/shadow
user1:6$6LyHXvlSnlEb59C07ldZZT22LQodzr31BbMbej6X0aT4C95Mq7UBFF8d9MO.HnDQfjvzd9RHoKeWNjCH0J4DD427Ma37j0:18815:0:99999:7:::
clouduser1:/tGwHo99$frFIu2LunqYMv0n7TpmsjyOIySUsFfnFvLWwWjR5JNZGNWuxMc2kaWmpdE5vLZl7za6gRaX1Bog8zKrokbH9W1:18820:0:99999:7:::
길이가 확연히 차이 난다
원복!!
[root@server1 ~]# authconfig --passalgo=sha512 --update
vi /etc/login.defs 에서 확인 가능
passwd hash 알고리즘을 바꿔보았다!!