0
|
1 #
|
|
2 # based on http://blog.boa.nu/2012/11/two-factor-ssh-login-google-authenticator-and-selinux.html
|
|
3 #
|
|
4
|
|
5 r := $(shell grep Wrote: mylog | grep -v debuginfo | awk '{print $$2}')
|
|
6 b := $(shell basename ${r})
|
|
7 m := google-authenticator.pp
|
|
8
|
|
9 all:
|
|
10 rpmbuild --rebuild google-authenticator-1.0-0.gita096a62.fc24.6.src.rpm >mylog 2>&1
|
|
11 grep Wrote: mylog
|
|
12 make -f /usr/share/selinux/devel/Makefile
|
|
13
|
|
14
|
|
15 install:
|
|
16 [ -f ${r} ] || /bin/false
|
|
17 yum -y install ${r}
|
|
18 semodule -i ${m}
|
|
19 sed -i -e 's/PAM-1.0/PAM-1.0\nauth required pam_google_authenticator.so nullok/g' /etc/pam.d/sshd
|
|
20 sed -i -e 's/^ChallengeResponseAuthentication no/ChallengeResponseAuthentication yes/g' /etc/ssh/sshd_config
|
|
21 service sshd restart
|
|
22
|
|
23
|
|
24 setup:
|
|
25 google-authenticator
|
|
26 # authenticator setup creates the file with the wrong label.
|
|
27 restorecon ~/.google_authenticator
|
|
28
|
|
29
|
|
30 install-remote:
|
|
31 scp ${r} ${m} $$target:/tmp
|
|
32 ssh $$target "cd /tmp; yum -y install ${b}"
|
|
33 ssh $$target "cd /tmp; semodule -i ${m}"
|
|
34 ssh $$target "sed -i -e 's/PAM-1.0/PAM-1.0\nauth required pam_google_authenticator.so nullok/g' /etc/pam.d/sshd"
|
|
35 ssh $$target "sed -i -e 's/^ChallengeResponseAuthentication no/ChallengeResponseAuthentication yes/g' /etc/ssh/sshd_config"
|
|
36 ssh $$target "service sshd restart"
|
|
37
|
|
38 # make install-remote target=host.domain.tld
|