Skip to main content

ssh authentication with kerberos


This documentation have been tested on CentOS 7.

Install KDC

# yum install -y krb5-server krb5-workstation pam_krb5  

Hostname and resolving Set your hostname

  # hostnamectl set-hostname hanthana.ucsc.com
verify your hostname

# hostname Your domain should resolve. In case if you do not use dns service..
[danishka@kdc ~]$ cat /etc/hosts
192.168.1.101  hanthana.ucsc.com
127.0.0.1  localhost.localdomain localhost 
::1  localhost6.localdomain6 localhost6


Server Configuration

# ls /var/kerberos/krb5kdc/
kadm5.acl  kdc.conf
 
ACL grant all privileges to anyone with admin role. 
Replace EXAMPLE.COM with your realm.
 
# cd  /var/kerberos/krb5kdc/
# cat kadm5.acl 
*/admin@UCSC *
 
# cat kdc.conf 
[kdcdefaults]
 kdc_ports = 88
 kdc_tcp_ports = 88

[realms]
 UCSC.COM = {
  #master_key_type = aes256-cts
  acl_file = /var/kerberos/krb5kdc/kadm5.acl
  dict_file = /usr/share/dict/words
  admin_keytab = /var/kerberos/krb5kdc/kadm5.keytab
  supported_enctypes = aes256-cts:normal aes128-cts:normal des3-hmac-sha1:normal arcfour-hmac:normal camellia256-cts:normal camellia128-cts:normal des-hmac-sha1:normal des-cbc-md5:normal des-cbc-crc:normal
 }


Client Configuration
# cat /etc/krb5.conf

includedir /etc/krb5.conf.d/

[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log

[libdefaults]
 dns_lookup_realm = false
 ticket_lifetime = 24h
 renew_lifetime = 7d
 forwardable = true
 rdns = false
 default_realm = UCSC.COM
 default_ccache_name = KEYRING:persistent:%{uid}

[realms]
 UCSC.COM = {
  kdc = hanthana.ucsc.com
  admin_server = hanthana.ucsc.com
 }

[domain_realm]
 .ucsc.com = UCSC.COM
 ucsc.com = UCSC.COM

KDC Database

# kdb5_util create -s -r UCSC.COM
 
Start and enable kadmin and krbkdc services
# systemctl start kadmin.service 
# systemctl start krb5kdc.service 
# systemctl enable kadmin.service 
# systemctl enable krb5kdc.service 

Principals
Objects in the KDC database known as principals, those objects can be users or hosts.
So we need to add each principal for each object. 
# kadmin.local kadmin.local: addprinc root/admin kadmin.local: addprinc danishka kadmin.local: addprinc host/hanthana.ucsc.com kadmin.local: quit

Copy enrypted Kerberos keytab files

# kadmin.local
kadmin.local: addprinc -randkey host/hanthana.ucsc.com
kadmin.local: ktadd host/hanthana.ucsc.com
kadmin.local: quit
 
Configure ssh client to allow clients to use Kerberos authentication.

Edit /etc/ssh/ssh_config
 
GSSAPIAuthentication yes
GSSAPIDelegateCredentials yes
Now update PAM configuration
# authconfig  --enablekrb5 --update
Reload ssh configuration
# systemctl reload sshd.service
 
 
As local user you should able to get your token
[danishka@kdc ~]$ klist 
Ticket cache: KEYRING:persistent:1000:1000
Default principal: danishka@UCSC.COM

Valid starting       Expires              Service principal
08/28/2018 11:19:21  08/29/2018 10:56:50  krbtgt/UCSC.COM@UCSC.COM
 
In case if you get following result, run kinit instead
 
$ klist 
klist: Credentials cache keyring 'persistent:1000:1000' not found
[madura@localhost ~]$ kinit 
Password for danishka@UCSC.COM: 
[madura@localhost ~]$ klist 
Ticket cache: KEYRING:persistent:1000:1000
Default principal: danishka@UCSC.COM

Valid starting       Expires              Service principal
08/28/2018 11:19:21  08/29/2018 10:56:50  krbtgt/UCSC.COM@UCSC.COM  
 
 

Now SSH without password using your Kerberos token.

[danishka@kdc ~]$ ssh hanthana.ucsc.com
Last login: Tue Aug 28 13:49:19 2018 from 192.168.1.99

Create .pcap file
 
tcpdump -i any -w /tmp/tcpdump.pcap 

Comments

Popular posts from this blog

Chrome profile එක මැකීම

සාමාන්‍යන් අපි භාවිත කරන වෙබ් ගවේශක, එහෙම නැත්නම් බ්‍රවෘසර් වල ප්‍රොයිල් එකක් තියෙනව. කලක් භාවිත කරද්දි සමහර වෙලාවට මේක ක්‍රැශ් වෙන්න පුලුවන්. එක්කෝ අප්ග්‍රේඩ් කරද්දි ඉතා කලාතුරකින් වෙන්න පුලුවන්. අද හිතවත් ගුරුමහතෙක් වන ලක්ෂමන් තිලකරත්න සර් මේ කිහිප දෙනෙක්ට ක්‍රෝම් යාවත් කරාට පස්සේ ක්‍රෝම් නිසි ලෙස වැඩ නොකරන බව සඳහන් කළා. ඉතින් ලෙසිම විදිය පරණ ප්‍රොෆයිල් එක (පැතිකඩ) මකල දාන එක. පහත සඳහන් කරලා තියෙන්නේ අදාල මෙහෙයුම් පද්ධතිය අනුව ක්‍රෝම් ප්‍රොෆයිල් එක තිබෙන තැන. Windows 7, 8.1, and 10: C:\Users\ \AppData\Local\Google\Chrome\User Data\Default Mac OS X El Capitan: Users/ /Library/Application Support/Google/Chrome/Default Linux: /home/ /.config/google-chrome/default උදාහරණයක් ලෙස මේ මගේ (Linux) පරිගණකයේ ක්‍රෝම් ප්‍රෆයල් එක තිබෙන තැන. /home/danishka/.cnfig/google-chrome/Default මේ සඳහා ක්‍රෝම් ඇඩ්රස්බාර් එකෙ chrome://version/ ලෙස ටයිප් කරලා එන්ටර් කරන්න.  එවිට ලැබෙන තොරතුරු අතරේ Profile Path ලෙස Chrome හි profile එක තිබෙන තැන දිස්වේ.  දැන් ඉතින් මේක මකල දාන්න. වින්ඩෝස්

වේදනාත්මක නිහඬ බව

අපි ගොඩක් වෙලාවට නිස්කලන්ක, නිහඬ පරිසරයකට ආදරය කරනව. ඒ අත්දැකීම යළි යළිත් විදගන්න තරම් පෙරේත කමක් දක්වනව. නමුත් සමහර නිහඬ අවස්ථා ඉතාම වේදනාකාරයි. ඊයේ (2020 මාර්තු 14) රාත්‍රියේ  නින්දට ගිය පසු වරින් වර තාත්තව ඇහැරවන්න බැලුවේ, ඔහුට අවශ්‍ය බෙහෙත් සහ මුත්‍ර කිරීමට ඇවැසිදැයි පිරික්සීමටයි. වෙනදා "තාත්තේ චූ කරන්න ඔනද?" ඇසු විට "හා" කියා ප්‍රතිචාර දක්වන ඔහු ඊයේ රාත්‍රිය පුරාවට කිසිදු ප්‍රතිචාරයක් නොදක්වා නින්දේම සිටියා. අලුයම 3ටත් එලෙසමයි. අද උදේ දෙගිඩියාවෙන් මෙන් අවදි කළ පසුත් ඔහුගෙන් සුපුරුදු ලෙස "සුබ උදැසනක්" ප්‍රතිචාරයක් ලැබුනේ නැ. ඔව් දවසම තාත්ත ගොලුයි. ඉදහිට අසන ප්‍රශ්නයකට හිස සලයි. මගේ ජිවිතේටම තාත්ත කතා නොකර සිටි පලමු දවස අද. මේ වේදනාව වචනවලට පෙරලන්න දන්න කෙනෙක් ඉන්නවද මම නම් දන්නේ නැ. තාත්ත ඉස්සරහා එයාගේ ඇස් දිහා බලන් කිසිම දෙයක් නොවු විදියට තොර තෝංචියක් නැතිව කියෙව්වට අදත් මගේ බත් එකෙ කදුලු. අද මේ පිංතුරේ මතක් වුන නිසා අන්තර්ජාලේන් හොයල ගත්තා. මේ පිංතුරේ ඇත්තටම වෙන්නේ දියණියක් (අර්ධ වශයෙන් අංශභාගයට පත්) ඇගේ පියාට ඇවිදීමට සහාය වෙන පිංතූරයක

පරිගණක ආශ්‍රීත ව්‍යාපාර ලියාපදිංචියෙදි පොලිස් රිපෝර්ට් සහ හැක් කිරීමට ලියාපදිංචි වීම

පසුගිය දවසක මගේ මිතුරෙක්ට මෙන්න මේ අත්දැකීම විදගන්න ලැබුනා. 2018 දෙසැම්බර් මස ව්‍යාපාර ලියාපදිංචියක් සඳහා ඉදිරිපත් කළ අයදුම්පතට එච්ච දේ දැනගන්ට ඔහු ප්‍රාදේශීය ලේකම් කාර්යයාලයට ගිය විට අදාල අයදුම්පත යළි අතට ගන්නා සේවකයින් යුහුසුලුව කටයුතු කරන්නට ගන්නව. ඒ අතරෙදි මෙන්න මෙහෙම කතාවක් අවසානෙදි ඇහෙනව.. දැනට මෙරට අපණයන ආදායමින් සැලකිය යුතු මුදලක් ලැබෙන්නේ මෘදුකාංග සහ තොරතුරු තාක්ෂණ සේවා අපනයනය හරහා. මුදලින් ඇමරිකාණු ඩොලර් මිලියන 1000 කට අසාන්න අගයක් 2017 වසරෙදි තිබුනා. අපිට තව දුරටත් ගෘහසේවිකාවන්ගෙන් ලැබෙන විදේශ විනිමයෙන් හෝ සම්ප් ‍ රදායික අපණයන හරහා විදේශ විනිමය ගොඩ නගන්න බැ. ඒ නිසා රජයටත්, රජයේ සේවයේ ඉන්න ඉහළ නිළධාරින්ටත් තොරතුරු තාක්ෂණය හරහා ලබා ගත හැකි විදේශ විනිමය සහ එය වැඩි දියුණු කරගත හැකි ක් ‍ රමවේදයන් ගැන හිතන්න වෙනව. අපි මැණිකක් අපණයනය කරද්දි ලබන විදෙශ විනිමය සහ එක් ගෘහ සේවිකාවක් මෙරටට එවන මුදල සසදලා බලමු. මසකට එක් ගෘහ සේවිකාවක් මෙරටට එනව මුදල ඉතාම සුලු මුදලක් එක් මැණික් ගලක් සමඟ සැසදුවොත්. නමුත් මෙරටින් බැහැරව සේවය කරන ලක්‍ෂ ගණනක් වන ගෘහසේවික