เชเชเซ เชนเซเช เชเซเชฐเซเชชเซเชฐเซเช เชจเซเชเชตเชฐเซเช, เชธเชพเชเชเซเชธ, เชธเซเชตเชพเช, ssh เชจเซ เชธเซเชฐเชเซเชทเชฟเชค เชฐเชพเชเชตเชพ เชฎเชพเชเซ เชฆเซเชตเชฟ-เชชเชฐเชฟเชฌเชณ เชชเซเชฐเชฎเชพเชฃเซเชเชฐเชฃ เชธเชฐเซเชตเชฐ เชเซเชตเซ เชฐเซเชคเซ เชธเซเช เชเชฐเชตเซเช เชคเซ เชถเซเชฐ เชเชฐเชตเชพ เชฎเชพเชเชเซ เชเซเช. เชธเชฐเซเชตเชฐ เชจเซเชเซเชจเชพ เชธเชเชฏเซเชเชจเชจเซ เชเชฒเชพเชตเชถเซ: LinOTP + FreeRadius.
เชถเชพ เชฎเชพเชเซ เชเชชเชฃเชจเซ เชคเซเชจเซ เชเชฐเซเชฐ เชเซ?
เช เชเช เชธเชเชชเซเชฐเซเชฃเชชเชฃเซ เชฎเชซเชค, เช
เชจเซเชเซเชณ เชเชเซเชฒ เชเซ, เชคเซเชจเชพ เชชเซเชคเชพเชจเชพ เชจเซเชเชตเชฐเซเชเชฎเชพเช, เชคเซเชคเซเชฏ-เชชเชเซเชท เชชเซเชฐเชฆเชพเชคเชพเชเชฅเซ เชธเซเชตเชคเชเชคเซเชฐ.
เช
เชจเซเชฏ เชเชชเชจ เชธเซเชฐเซเชธ เชชเซเชฐเซเชกเชเซเชเซเชธเชฅเซ เชตเชฟเชชเชฐเซเชค เช เชธเซเชตเชพ เชเซเชฌ เช เช
เชจเซเชเซเชณ เชเซ, เชเชเชฆเชฎ เชตเชฟเชเซเชฏเซเช
เชฒ เชเซ, เช
เชจเซ เชฎเซเชเซ เชธเชเชเซเชฏเชพเชฎเชพเช เชซเชเชเซเชถเชจเซเชธ เช
เชจเซ เชชเซเชฒเชฟเชธเซเชเชจเซ เชชเชฃ เชธเชชเซเชฐเซเช เชเชฐเซ เชเซ (เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, login+password+(PIN+OTPToken)). API เชฆเซเชตเชพเชฐเชพ, เชคเซ sms เชฎเซเชเชฒเชตเชพเชจเซ เชธเซเชตเชพเช (LinOTP Config->Provider Config->SMS Provider) เชธเชพเชฅเซ เชเชเซเชเซเชค เชฅเชพเชฏ เชเซ, Google Authentificator เชเซเชตเซ เชฎเซเชฌเชพเชเชฒ เชเชชเซเชฒเชฟเชเซเชถเชจ เชฎเชพเชเซ เชเซเชก เชเชจเชฐเซเช เชเชฐเซ เชเซ เช
เชจเซ เชเชฃเซเช เชฌเชงเซเช. เชฎเชจเซ เชฒเชพเชเซ เชเซ เชเซ เชคเซเชฎเชพเช เชเชฐเซเชเชพ เชเชฐเซเชฒเซ เชธเซเชตเชพ เชเชฐเชคเชพเช เชคเซ เชตเชงเซ เช
เชจเซเชเซเชณ เชเซ
เช เชธเชฐเซเชตเชฐ Cisco ASA, OpenVPN เชธเชฐเซเชตเชฐ, Apache2 เช เชจเซ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ RADIUS เชธเชฐเซเชตเชฐ (เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชกเซเชเชพ เชธเซเชจเซเชเชฐเชฎเชพเช SSH เชฎเชพเชเซ) เชฆเซเชตเชพเชฐเชพ เชชเซเชฐเชฎเชพเชฃเซเชเชฐเชฃเชจเซ เชธเชชเซเชฐเซเช เชเชฐเชคเซ เชฒเชเชญเช เชฆเชฐเซเช เชตเชธเซเชคเซ เชธเชพเชฅเซ เชธเชเชชเซเชฐเซเชฃ เชฐเซเชคเซ เชเชพเชฎ เชเชฐเซ เชเซ.
เชคเซ เชเชฐเซเชฐเซ เชเซ:
1) เชกเซเชฌเชฟเชฏเชจ 8 (เชเซเชธเซ) - เชเชฐเซเชฐเซ! (เชกเซเชฌเชฟเชฏเชจ 9 เชชเชฐ เชเซเชฐเชพเชฏเชฒ เชเชจเซเชธเซเชเซเชฒเซเชถเชจ เชฒเซเชเชจเชพ เช เชเชคเซ เชตเชฐเซเชฃเชตเซเชฒ เชเซ)
เชชเซเชฐเชพเชฐเชเชญ เชเชฐเซ:
เชกเซเชฌเชฟเชฏเชจ 8 เชเชจเซเชธเซเชเซเชฒ เชเชฐเซ เชฐเชนเซเชฏเซเช เชเซ.
LinOTP เชฐเซเชชเซเชเซเชเชฐเซ เชเชฎเซเชฐเซ:
# echo 'deb http://www.linotp.org/apt/debian jessie linotp' > /etc/apt/sources.list.d/linotp.list
เชเซเช เชเชฎเซเชฐเซ เชฐเชนเซเชฏเชพ เชเซ:
# gpg --search-keys 913DFF12F86258E5
เชเซเชเชฒเซเชเชตเชพเชฐ "เชธเซเชตเชเซเช" เชเชจเซเชธเซเชเซเชฒเซเชถเชจ เชฆเชฐเชฎเชฟเชฏเชพเชจ, เช เชเชฆเซเชถ เชเชฒเชพเชตเซเชฏเชพ เชชเชเซ, เชกเซเชฌเชฟเชฏเชจ เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เชเชฐเซ เชเซ:
gpg: ัะพะทะดะฐะฝ ะบะฐัะฐะปะพะณ `/root/.gnupg'
gpg: ัะพะทะดะฐะฝ ะฝะพะฒัะน ัะฐะนะป ะฝะฐัััะพะตะบ `/root/.gnupg/gpg.conf'
gpg: ะะะะะะะะ: ะฟะฐัะฐะผะตััั ะฒ `/root/.gnupg/gpg.conf' ะตัะต ะฝะต ะฐะบัะธะฒะฝั ะฟัะธ ััะพะผ ะทะฐะฟััะบะต
gpg: ัะพะทะดะฐะฝะฐ ัะฐะฑะปะธัะฐ ะบะปััะตะน `/root/.gnupg/secring.gpg'
gpg: ัะพะทะดะฐะฝะฐ ัะฐะฑะปะธัะฐ ะบะปััะตะน `/root/.gnupg/pubring.gpg'
gpg: ะฝะต ะทะฐะดะฐะฝั ัะตัะฒะตัั ะบะปััะตะน (ะธัะฟะพะปัะทัะนัะต --keyserver)
gpg: ัะฑะพะน ะฟัะธ ะฟะพะธัะบะต ะฝะฐ ัะตัะฒะตัะต ะบะปััะตะน: ะฟะปะพั
ะพะน URI
เช เชชเซเชฐเชพเชฐเชเชญเชฟเช gnupg เชธเซเชเช
เชช เชเซ. เช เซเช เชเซ. เชซเชเซเชค เชซเชฐเซเชฅเซ เชเชฆเซเชถ เชเชฒเชพเชตเซ.
เชกเซเชฌเชฟเชฏเชจเชจเชพ เชชเซเชฐเชถเซเชจ เชฎเชพเชเซ:
gpg: ะฟะพะธัะบ "913DFF12F86258E5" ะฝะฐ hkp ัะตัะฒะตัะต keys.gnupg.net
(1) LSE LinOTP2 Packaging <[email protected]>
2048 bit RSA key F86258E5, ัะพะทะดะฐะฝ: 2010-05-10
Keys 1-1 of 1 for "913DFF12F86258E5". ะะฒะตะดะธัะต ัะธัะปะฐ, N) ะกะปะตะดัััะธะน ะธะปะธ Q) ะัั
ะพะด>
เช เชฎเซ เชเชตเชพเชฌ เชเชชเซเช เชเซเช: 1
เชเชเชฒเซเช:
# gpg --export 913DFF12F86258E5 | apt-key add -
# apt-get update
mysql เชเชจเซเชธเซเชเซเชฒ เชเชฐเซ. เชธเชฟเชฆเซเชงเชพเชเชคเชฎเชพเช, เชคเชฎเซ เชฌเซเชเชพ sql เชธเชฐเซเชตเชฐเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ, เชชเชฐเชเชคเซ เชธเชฐเชณเชคเชพ เชฎเชพเชเซ เชนเซเช เชคเซเชจเซ เชเชชเชฏเซเช LinOTP เชฎเชพเชเซ เชญเชฒเชพเชฎเชฃ เชฎเซเชเชฌ เชเชฐเซเชถ.
(เชฒเชฟเชจเชเชเซเชชเซ เชกเซเชเชพเชฌเซเชเชจเซ เชชเซเชจเชเชฐเซเชชเชฐเซเชเชพเชเชเชฟเชค เชเชฐเชตเชพ เชธเชนเชฟเชคเชจเซ เชตเชงเชพเชฐเชพเชจเซ เชฎเชพเชนเชฟเชคเซ, เชฎเชพเชเซเชจเชพ เชธเชคเซเชคเชพเชตเชพเชฐ เชฆเชธเซเชคเชพเชตเซเชเซเชฎเชพเช เชฎเชณเซ เชถเชเซ เชเซ.
# apt-get install mysql-server
# apt-get update
(เชซเชฐเซเชฅเซ เช
เชชเชกเซเชเซเชธ เชคเชชเชพเชธเชตเชพเชฅเซ เชจเซเชเชธเชพเชจ เชฅเชถเซ เชจเชนเซเช)
LinOTP เช
เชจเซ เชตเชงเชพเชฐเชพเชจเชพ เชฎเซเชกเซเชฏเซเชฒเซเชธ เชเชจเซเชธเซเชเซเชฒ เชเชฐเซ:
# apt-get install linotp
เช
เชฎเซ เชเชจเซเชธเซเชเซเชฒเชฐเชจเชพ เชชเซเชฐเชถเซเชจเซเชจเชพ เชเชตเชพเชฌ เชเชชเซเช เชเซเช:
Apache2 เชจเซ เชเชชเชฏเซเช เชเชฐเซ: เชนเชพ
เชเชกเชฎเชฟเชจ เชฒเชฟเชจเซเชเชช เชฎเชพเชเซ เชชเชพเชธเชตเชฐเซเชก เชฌเชจเชพเชตเซ: โเชคเชฎเชพเชฐเซ เชชเชพเชธเชตเชฐเซเชกโ
เชธเซเชต-เชนเชธเซเชคเชพเชเซเชทเชฐเชฟเชค เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชเชจเชฐเซเช เชเชฐเซ?: เชนเชพ
MySQL เชจเซ เชเชชเชฏเซเช เชเชฐเซ?: เชนเชพ
เชกเซเชเชพเชฌเซเช เชเซเชฏเชพเช เชธเซเชฅเชฟเชค เชเซ: เชฒเซเชเชฒเชนเซเชธเซเช
เชธเชฐเซเชตเชฐ เชชเชฐ LinOTP เชกเซเชเชพเชฌเซเช (เชเชงเชพเชฐ เชจเชพเชฎ) เชฌเชจเชพเชตเซ: LinOTP2
เชกเซเชเชพเชฌเซเช เชฎเชพเชเซ เช
เชฒเช เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ เชฌเชจเชพเชตเซ: LinOTP2
เช
เชฎเซ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ เชฎเชพเชเซ เชชเชพเชธเชตเชฐเซเชก เชธเซเช เชเชฐเซเชฏเซ เชเซ: "เชคเชฎเชพเชฐเซ เชชเชพเชธเชตเชฐเซเชก"
เชถเซเช เชฎเชพเชฐเซ เชนเชตเซ เชกเซเชเชพเชฌเซเช เชฌเชจเชพเชตเชตเซ เชเซเชเช? ("เชถเซเช เชคเชฎเซ เชเชฐเซเชเชฐ เชเชเซเชเซ เชเซ..." เชเซเชตเซเช เชเชเชเช): เชนเชพ
เชเชจเซเชธเซเชเซเชฒ เชเชฐเชคเซ เชตเชเชคเซ เชคเชฎเซ เชฌเชจเชพเชตเซเชฒ MySQL เชฐเซเช เชชเชพเชธเชตเชฐเซเชก เชฆเชพเชเชฒ เชเชฐเซ: โเชคเชฎเชพเชฐเซ เชชเชพเชธเชตเชฐเซเชกโ
เชฅเช เชเชฏเซเช
(เชตเซเชเชฒเซเชชเชฟเช, เชคเชฎเชพเชฐเซ เชคเซเชจเซ เชเชจเซเชธเซเชเซเชฒ เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชจเชฅเซ)
# apt-get install linotp-adminclient-cli
(เชตเซเชเชฒเซเชชเชฟเช, เชคเชฎเชพเชฐเซ เชคเซเชจเซ เชเชจเซเชธเซเชเซเชฒ เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชจเชฅเซ)
# apt-get install libpam-linotp
เช เชจเซ เชคเซเชฅเซ เช เชฎเชพเชฐเซเช Linotp เชตเซเชฌ เชเชจเซเชเชฐเชซเซเชธ เชนเชตเซ เช เชนเซเช เชเชชเชฒเชฌเซเชง เชเซ:
"<b>https</b>: //IP_ัะตัะฒะตัะฐ/manage"
เชนเซเช เชตเซเชฌ เชเชจเซเชเชฐเชซเซเชธเชฎเชพเช เชธเซเชเชฟเชเชเซเชธ เชตเชฟเชถเซ เชฅเซเชกเซ เชตเชพเชฐ เชชเชเซ เชตเชพเชค เชเชฐเซเชถ.
เชนเชตเซ, เชธเซเชฅเซ เชฎเชนเชคเซเชตเชจเซ เชตเชธเซเชคเซ! เช เชฎเซ FreeRadius เชจเซ เชตเชงเชพเชฐเซเช เชเซเช เช เชจเซ เชคเซเชจเซ Linotp เชธเชพเชฅเซ เชฒเชฟเชเช เชเชฐเซเช เชเซเช.
LinOTP เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเชตเชพ เชฎเชพเชเซ เชซเซเชฐเซเชฐเซเชกเชฟเชฏเชธ เช เชจเซ เชฎเซเชกเซเชฏเซเชฒ เชเชจเซเชธเซเชเซเชฒ เชเชฐเซ
# apt-get install freeradius linotp-freeradius-perl
เชเซเชฒเชพเชฏเชเช เช เชจเซ เชฏเซเชเชฐ เชคเซเชฐเชฟเชเซเชฏเชพ เชฐเซเชชเชฐเซเชเชพเชเชจเซ เชฌเซเชเช เชช เชฒเซ.
# mv /etc/freeradius/clients.conf /etc/freeradius/clients.old
# mv /etc/freeradius/users /etc/freeradius/users.old
เชเชพเชฒเซ เชเซเชฒเชพเชฏเชเช เชซเชพเชเชฒ เชฌเชจเชพเชตเซ:
# touch /etc/freeradius/clients.conf
เช เชฎเชพเชฐเซ เชจเชตเซ เชฐเซเชชเชฐเซเชเชพ เชซเชพเชเชฒเชจเซ เชธเชเชชเชพเชฆเชฟเชค เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช (เชฌเซเชเช เชช เชฒเซเชงเซเชฒ เชฐเซเชชเชฐเซเชเชพเชจเซ เชเชชเชฏเซเช เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ เชเชฐเซ เชถเชเชพเชฏ เชเซ)
# nano /etc/freeradius/clients.conf
client 192.168.188.0/24 {
secret = passwd # ะฟะฐัะพะปั ะดะปั ะฟะพะดะบะปััะตะฝะธั ะบะปะธะตะฝัะพะฒ
}
เชเชเชณ, เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชเชจเซ เชซเชพเชเชฒ เชฌเชจเชพเชตเซ:
# touch /etc/freeradius/users
เช เชฎเซ เชซเชพเชเชฒเชจเซ เชธเชเชชเชพเชฆเชฟเชค เชเชฐเซเช เชเซเช, เชคเซเชฐเชฟเชเซเชฏเชพเชจเซ เชเชนเซเช เชเซเช เชเซ เช เชฎเซ เชชเซเชฐเชฎเชพเชฃเซเชเชฐเชฃ เชฎเชพเชเซ เชชเชฐเซเชฒเชจเซ เชเชชเชฏเซเช เชเชฐเซเชถเซเช.
# nano /etc/freeradius/users
DEFAULT Auth-type := perl
เชเชเชณ, เชซเชพเชเชฒเชฎเชพเช เชซเซเชฐเชซเชพเชฐ เชเชฐเซ /etc/freeradius/modules/perl
# nano /etc/freeradius/modules/perl
เชเชชเชฃเซ เชฎเซเชกเซเชฏเซเชฒ เชชเซเชฐเชพเชฎเซเชเชฐเชฎเชพเช เชชเชฐเซเชฒ เชฒเชฟเชจเซเชเชช เชธเซเชเซเชฐเชฟเชชเซเชเชจเซ เชชเชพเชฅ เชธเซเชชเชทเซเช เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ:
Perl { .......
.........
<source lang="bash">module = /usr/lib/linotp/radius_linotp.pm
... ..
เชเชเชณ, เช
เชฎเซ เชเช เชซเชพเชเชฒ เชฌเชจเชพเชตเซเช เชเซเช เชเซเชฎเชพเช เชเชชเชฃเซ เชเชนเซเช เชเซเช เชเซ เชเช (เชกเซเชฎเซเชจ, เชกเซเชเชพเชฌเซเช เช
เชฅเชตเชพ เชซเชพเชเชฒ)เชฎเชพเชเชฅเซ เชกเซเชเชพ เชฒเซเชตเซ.
# touch /etc/linotp2/rlm_perl.ini
# nano /etc/linotp2/rlm_perl.ini
URL=https://IP_ะฒะฐัะตะณะพ_LinOTP_ัะตัะฒะตัะฐ(192.168.X.X)/validate/simplecheck
REALM=webusers1c
RESCONF=LocalUser
Debug=True
SSL_CHECK=False
เชนเซเช เช เชนเซเช เชฅเซเชกเซ เชตเชงเซ เชตเชฟเชเชคเชฎเชพเช เชเชเชถ เชเชพเชฐเชฃ เชเซ เชคเซ เชฎเชนเชคเซเชตเชชเซเชฐเซเชฃ เชเซ:
เชเชฟเชชเซเชชเชฃเซเช เชธเชพเชฅเซ เชซเชพเชเชฒเชจเซเช เชธเชเชชเซเชฐเซเชฃ เชตเชฐเซเชฃเชจ:
linOTP เชธเชฐเซเชตเชฐเชจเซ #IP (เช
เชฎเชพเชฐเชพ LinOTP เชธเชฐเซเชตเชฐเชจเซเช IP เชธเชฐเชจเชพเชฎเซเช)
URL=https://172.17.14.103/validate/simplecheck
#เช
เชฎเชพเชฐเซ เชตเชฟเชธเซเชคเชพเชฐ เชเซ เช
เชฎเซ LinOTP เชตเซเชฌ เชเชจเซเชเชฐเชซเซเชธเชฎเชพเช เชฌเชจเชพเชตเซเชถเซเช.)
REALM=rearm1
# เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ เชเซเชฅเชจเซเช เชจเชพเชฎ เชเซ LinOTP เชตเซเชฌ เชฎเชเชฒเชฎเชพเช เชฌเชจเชพเชตเซเชฒ เชเซ.
RESCONF=flat_file
#เชตเซเชเชฒเซเชชเชฟเช: เชเซ เชฌเชงเซเช เชฌเชฐเชพเชฌเชฐ เชเชพเชฎ เชเชฐเชคเซเช เชนเซเชฏ เชคเซ เชเชฟเชชเซเชชเชฃเซ เชเชฐเซ
เชกเซเชฌเช = เชธเชพเชเซเช
#เชตเซเชเชฒเซเชชเชฟเช: เชเชจเซ เชเชชเชฏเซเช เชเชฐเซ, เชเซ เชคเชฎเชพเชฐเซ เชชเชพเชธเซ เชธเซเชต-เชนเชธเซเชคเชพเชเซเชทเชฐเชฟเชค เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ เชนเซเชฏ, เช
เชจเซเชฏเชฅเชพ เชเชฟเชชเซเชชเชฃเซ เชเชฐเซ (เชเซ เชเชชเชฃเซ เช
เชฎเชพเชฐเซเช เชชเซเชคเชพเชจเซเช เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เชฌเชจเชพเชตเซเช เช
เชจเซ เชคเซเชจเซ เชเชเชพเชธเชตเชพ เชฎเชพเชเซเช เชคเซ SSL)
SSL_CHECK=เชเซเชเซเช
เชเชเชณ, เชซเชพเชเชฒ /etc/freeradius/sites-available/linotp เชฌเชจเชพเชตเซ
# touch /etc/freeradius/sites-available/linotp
# nano /etc/freeradius/sites-available/linotp
เช เชจเซ เชคเซเชฎเชพเช เชฐเซเชชเชฐเซเชเชพเชจเซ เชจเชเชฒ เชเชฐเซ (เชเชเชเชชเชฃ เชธเชเชชเชพเชฆเชฟเชค เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชจเชฅเซ):
authorize {
#normalizes maleformed client request before handed on to other modules (see '/etc/freeradius/modules/preprocess')
preprocess
# If you are using multiple kinds of realms, you probably
# want to set "ignore_null = yes" for all of them.
# Otherwise, when the first style of realm doesn't match,
# the other styles won't be checked.
#allows a list of realm (see '/etc/freeradius/modules/realm')
IPASS
#understands something like USER@REALM and can tell the components apart (see '/etc/freeradius/modules/realm')
suffix
#understands USERREALM and can tell the components apart (see '/etc/freeradius/modules/realm')
ntdomain
# Read the 'users' file to learn about special configuration which should be applied for
# certain users (see '/etc/freeradius/modules/files')
files
# allows to let authentification to expire (see '/etc/freeradius/modules/expiration')
expiration
# allows to define valid service-times (see '/etc/freeradius/modules/logintime')
logintime
# We got no radius_shortname_map!
pap
}
#here the linotp perl module is called for further processing
authenticate {
perl
}
เชเชเชณ เชเชชเชฃเซ เชธเชฟเชฎ เชฒเชฟเชเช เชฌเชจเชพเชตเซเชถเซเช:
# ln -s ../sites-available/linotp /etc/freeradius/sites-enabled
เชตเซเชฏเชเซเชคเชฟเชเชค เชฐเซเชคเซ, เชนเซเช เชกเชฟเชซเซเชฒเซเช เชคเซเชฐเชฟเชเซเชฏเชพ เชธเชพเชเชเซเชธเชจเซ เชฎเชพเชฐเซ เชจเชพเชเซเช เชเซเช, เชชเชฐเชเชคเซ เชเซ เชคเชฎเชจเซ เชคเซเชฎเชจเซ เชเชฐเซเชฐ เชนเซเชฏ, เชคเซ เชคเชฎเซ เชเชพเช เชคเซ เชคเซเชฎเชจเซ เชฐเซเชชเชฐเซเชเชพเชฎเชพเช เชซเซเชฐเชซเชพเชฐ เชเชฐเซ เชถเชเซ เชเซ เช เชฅเชตเชพ เชคเซเชฎเชจเซ เช เชเซเชทเชฎ เชเชฐเซ เชถเชเซ เชเซ.
# rm /etc/freeradius/sites-enabled/default
# rm /etc/freeradius/sites-enabled/inner-tunnel
# service freeradius reload
เชนเชตเซ เชเชพเชฒเซ เชตเซเชฌ เชซเซเชธ เชชเชฐ เชชเชพเชเชพ เชเชเช เช
เชจเซ เชคเซเชจเซ เชฅเซเชกเซ เชตเชงเซ เชตเชฟเชเชคเชฎเชพเช เชเซเชเช:
เชเชชเชฐเชจเชพ เชเชฎเชฃเชพ เชเซเชฃเซ LinOTP Config -> UserIdResolvers -> New เชชเชฐ เชเซเชฒเชฟเช เชเชฐเซ
เช
เชฎเชจเซ เชเซ เชเซเชเช เชเซ เชคเซ เช
เชฎเซ เชชเชธเชเชฆ เชเชฐเซเช เชเซเช: LDAP (AD win, LDAP samba), เช
เชฅเชตเชพ SQL, เช
เชฅเชตเชพ Flatfile เชธเชฟเชธเซเชเชฎเชจเชพ เชธเซเชฅเชพเชจเชฟเช เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเช.
เชเชฐเซเชฐเซ เชซเซเชฒเซเชกเซเชธ เชญเชฐเซ.
เชเชเชณ เช
เชฎเซ REALMS เชฌเชจเชพเชตเซเช เชเซเช:
เชเชชเชฐเชจเชพ เชเชฎเชฃเชพ เชเซเชฃเซ, LinOTP Config -> Realms -> New เชชเชฐ เชเซเชฒเชฟเช เชเชฐเซ.
เช
เชจเซ เช
เชฎเชพเชฐเชพ REALMS เชจเซ เชจเชพเชฎ เชเชชเซ, เช
เชจเซ เช
เชเชพเช เชฌเชจเชพเชตเซเชฒ UserIdResolvers เชชเชฐ เชชเชฃ เชเซเชฒเชฟเช เชเชฐเซ.
เชซเซเชฐเซเชฐเซเชกเชฟเชฏเชธเชจเซ /etc/linotp2/rlm_perl.ini เชซเชพเชเชฒเชฎเชพเช เช เชคเชฎเชพเชฎ เชกเซเชเชพเชจเซ เชเชฐเซเชฐ เชเซ, เชเซเชฎ เชเซ เชฎเซเช เชเชชเชฐ เชฒเชเซเชฏเซเช เชเซ, เชคเซเชฅเซ เชเซ เชคเชฎเซ เชคเซเชจเซ เชธเชเชชเชพเชฆเชฟเชค เชจ เชเชฐเซเชฏเซเช เชนเซเชฏ, เชคเซ เชนเชฎเชฃเชพเช เชเชฐเซ.
เชธเชฐเซเชตเชฐ เชฌเชงเซเช เชเซเช เชตเซเชฒเซเช เชเซ.
เชเชฎเซเชฐเซ
เชกเซเชฌเชฟเชฏเชจ 9 เชชเชฐ LinOTP เชธเซเช เชเชฐเซ เชฐเชนเซเชฏเซเช เชเซ:
เชธเซเชฅเชพเชชเชจ:
# echo 'deb http://linotp.org/apt/debian stretch linotp' > /etc/apt/sources.list.d/linotp.list
# apt-get install dirmngr
# apt-key adv --recv-keys 913DFF12F86258E5
# apt-get update
# apt-get install mysql-server
(เชกเชฟเชซเซเชฒเซเช เชฐเซเชชเซ, เชกเซเชฌเชฟเชฏเชจ 9 mysql (mariaDB) เชฎเชพเช เชฐเซเช เชชเชพเชธเชตเชฐเซเชก เชธเซเช เชเชฐเชตเชพเชจเซ เชเชซเชฐ เชเชฐเชคเซเช เชจเชฅเซ, เช เชฒเชฌเชคเซเชค เชคเชฎเซ เชคเซเชจเซ เชเชพเชฒเซ เชเซเชกเซ เชถเชเซ เชเซ, เชชเชฐเชเชคเซ เชเซ เชคเชฎเซ เชธเชฎเชพเชเชพเชฐ เชตเชพเชเชเซ เชเซ, เชคเซ เช เชเชฃเซ เชตเชพเชฐ "เชฎเชนเชพเชเชพเชตเซเชฏ เชจเชฟเชทเซเชซเชณเชคเชพ" เชคเชฐเชซ เชฆเซเชฐเซ เชเชพเชฏ เชเซ, เชคเซเชฅเซ เช เชฎเซ เชคเซเชจเซ เชธเซเช เชเชฐเซเชถเซเช. เชเซเชเชชเชฃ เชฐเซเชคเซ)
# mysql -u root -p
use mysql;
UPDATE user SET Password = PASSWORD('ััั_ะฟะฐัะพะปั') WHERE User = 'root';
exit
# apt-get install linotp
# apt-get install linotp-adminclient-cli
# apt-get install python-ldap
# apt install freeradius
# nano /etc/freeradius/3.0/sites-enabled/linotp
เชเซเชก เชชเซเชธเซเช เชเชฐเซ (JuriM เชฆเซเชตเชพเชฐเชพ เชฎเซเชเชฒเชตเชพเชฎเชพเช เชเชตเซเชฏเซ เชเซ, เชคเซเชจเชพ เชฎเชพเชเซ เชคเซเชฎเชจเซ เชเชญเชพเชฐ!):
เชธเชฐเซเชตเชฐ linotp {
เชธเชพเชเชญเชณเซ {
ipaddr = *
เชชเซเชฐเซเช = 1812
type=auth
}
เชธเชพเชเชญเชณเซ {
ipaddr = *
เชชเซเชฐเซเช = 1813
type = acct
}
เช เชงเชฟเชเซเชค เชเชฐเซ {
เชชเซเชฐเซเชต เชชเซเชฐเชเซเชฐเชฟเชฏเชพ
เช เชชเชกเซเช {
&control:Auth-Type := Perl
}
}
เชชเซเชฐเชฎเชพเชฃเชฟเชค เชเชฐเซ {
เชเชฅ-เชชเซเชฐเชเชพเชฐ เชชเชฐเซเชฒ {
เชชเชฐเซเชฒ
}
}
เชจเชพเชฎเซเช {
เชฏเซเชจเชฟเชเซเชธ
}
}
เชธเชเชชเชพเชฆเชฟเชค เชเชฐเซ /etc/freeradius/3.0/mods-enabled/perl
เชชเชฐเซเชฒ {
เชซเชพเชเชฒเชจเชพเชฎ = /usr/share/linotp/radius_linotp.pm
func_authenticate = เชชเซเชฐเชฎเชพเชฃเชฟเชค เชเชฐเซ
func_authorize = เช เชงเชฟเชเซเชค เชเชฐเซ
}
เชเชฎเชจเชธเซเชฌเซ, เชกเซเชฌเชฟเชฏเชจ 9 เชฎเชพเช radius_linotp.pm เชฒเชพเชเชฌเซเชฐเซเชฐเซ เชฐเชฟเชชเซเชเซเชเชฐเซเชเชฎเชพเชเชฅเซ เชเชจเซเชธเซเชเซเชฒ เชเชฐเซเชฒเซ เชจเชฅเซ, เชคเซเชฅเซ เช เชฎเซ เชคเซเชจเซ เชเซเชฅเชฌเชฎเชพเชเชฅเซ เชฒเชเชถเซเช.
# apt install git
# git clone https://github.com/LinOTP/linotp-auth-freeradius-perl
# cd linotp-auth-freeradius-perl/
# cp radius_linotp.pm /usr/share/linotp/radius_linotp.pm
เชนเชตเซ เชเชพเชฒเซ เชธเชเชชเชพเชฆเชฟเชค เชเชฐเซเช /etc/freeradius/3.0/clients.conf
เชเซเชฒเชพเชฏเชเช เชธเชฐเซเชตเชฐเซเชธ {
ipaddr = 192.168.188.0/24
เชเซเชชเซเชค = เชคเชฎเชพเชฐเซ เชชเชพเชธเชตเชฐเซเชก
}
เชนเชตเซ เชจเซเชจเซ /etc/linotp2/rlm_perl.ini เชจเซ เช เซเช เชเชฐเซเช
เช เชฎเซ เชกเซเชฌเชฟเชฏเชจ 8 เชชเชฐ เชเชจเซเชธเซเชเซเชฒ เชเชฐเชคเซ เชตเชเชคเซ เชคเซ เช เชเซเชก เชชเซเชธเซเช เชเชฐเซเช เชเซเช (เชเชชเชฐ เชตเชฐเซเชฃเชตเซเชฒ)
เชคเซ เชฌเชงเชพ เชตเชฟเชเชพเชฐ เชฎเซเชเชฌ เชเซ. (เชนเชเซ เชธเซเชงเซ เชเชเชพเชธเชพเชฏเซเชฒ เชจเชฅเซ)
เชนเซเช เชธเชฟเชธเซเชเชฎเซ เชธเซเช เชเชฐเชตเชพ เชชเชฐ เชเซเชเชฒเซเช เชฒเชฟเชเชเซเชธ เชจเซเชเซ เชฎเซเชเซเชถ เชเซเชจเซ เชฎเซเชเชพเชญเชพเชเซ เชฆเซเชตเชฟ-เชชเชฐเชฟเชฌเชณ เชชเซเชฐเชฎเชพเชฃเซเชเชฐเชฃ เชธเชพเชฅเซ เชธเซเชฐเชเซเชทเชฟเชค เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ:
เชฎเชพเช เชฆเซเชตเชฟ-เชชเชฐเชฟเชฌเชณ เชชเซเชฐเชฎเชพเชฃเซเชเชฐเชฃ เชธเซเช เชเชฐเซ เชฐเชนเซเชฏเซเช เชเซ
เชเซเช เชตเชฃ
เชเชชเชฐเชพเชเชค, เชเชฃเซ เชธเชพเชเชเซเชธเชจเชพ เชธเซเชฎเซ เชเซ-เชซเซเชเซเชเชฐ เชเชฅเซเชจเซเชเชฟเชเซเชถเชจเชจเซ เชธเชชเซเชฐเซเช เชเชฐเซ เชเซ (WordPress เชฎเชพเชเซ, LinOTP เชฎเชพเชเซ เชคเซเชจเซเช เชชเซเชคเชพเชจเซเช เชเชพเชธ เชฎเซเชกเซเชฏเซเชฒ เชชเชฃ เชเซ.
เชฎเชนเชคเซเชตเชชเซเชฐเซเชฃ เชนเชเซเชเชค! Google Authenticator เชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพ เชฎเชพเชเซ โGoogle autentificatorโ เชฌเซเชเซเชธเชจเซ เชเซเช เชเชฐเชถเซ เชจเชนเซเช! เชคเซเชฏเชพเชฐเซ QR เชเซเชก เชตเชพเชเชเซ เชถเชเชพเชคเซ เชจเชฅเซ... (เชตเชฟเชเชฟเชคเซเชฐ เชนเชเซเชเชค)
เช เชฒเซเช เชฒเชเชตเชพ เชฎเชพเชเซ, เชจเซเชเซเชจเชพ เชฒเซเชเซเชจเซ เชฎเชพเชนเชฟเชคเซเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซเชฏเซ เชนเชคเซ:
เชฒเซเชเชเซเชจเซ เชเชญเชพเชฐ.
เชธเซเชฐเซเชธ: www.habr.com