LinOTP рджреЛ-рдХрд╛рд░рдХ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рд╕рд░реНрд╡рд░

рдЫрд╡рд┐

рдЖрдЬ рдореИрдВ рдХреЙрд░реНрдкреЛрд░реЗрдЯ рдиреЗрдЯрд╡рд░реНрдХ, рд╕рд╛рдЗрдЯреЛрдВ, рд╕реЗрд╡рд╛рдУрдВ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рджреЛ-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рд░реНрд╡рд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рд╕рд░реНрд╡рд░ рдмрдВрдбрд▓ рдХрд╛рдо рдХрд░реЗрдЧрд╛: LinOTP + FreeRadiusред

рд╣рдореЗрдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ?
рдпрд╣ рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдореБрдХреНрдд, рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдЕрдкрдиреЗ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рднреАрддрд░, рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдкреНрд░рджрд╛рддрд╛рдУрдВ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИред

рдпрд╣ рд╕реЗрд╡рд╛ рдЕрдиреНрдп рдУрдкрди рд╕реЛрд░реНрд╕ рдЙрддреНрдкрд╛рджреЛрдВ рдХреЗ рд╡рд┐рдкрд░реАрдд рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ, рдХрд╛рдлреА рджреГрд╢реНрдп рд╣реИ, рдФрд░ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рдиреАрддрд┐рдпреЛрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд▓реЙрдЧрд┐рди + рдкрд╛рд╕рд╡рд░реНрдб + (рдкрд┐рди + рдУрдЯреАрдкреАрдЯреЛрдХрди)) рдХрд╛ рднреА рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИред рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╣ рдПрд╕рдПрдордПрд╕ рднреЗрдЬрдиреЗ рд╡рд╛рд▓реА рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рд╣реЛрддрд╛ рд╣реИ (LinOTP рдХреЙрдиреНрдлрд╝рд┐рдЧ-> рдкреНрд░реЛрд╡рд╛рдЗрдбрд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди-> рдПрд╕рдПрдордПрд╕ рдкреНрд░реЛрд╡рд╛рдЗрдбрд░), Google рдСрдЯреЗрдВрдЯрд┐рд╕рд┐рдкреЗрдЯрд░ рдЬреИрд╕реЗ рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдХреЛрдб рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдмрд╣реБрдд рдХреБрдЫред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд▓реЗрдЦ рдореЗрдВ рдорд╛рдиреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕реЗрд╡рд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред

рдпрд╣ рд╕рд░реНрд╡рд░ рд╕рд┐рд╕реНрдХреЛ рдПрдПрд╕рдП, рдУрдкрдирд╡реАрдкреАрдПрди рд╕рд░реНрд╡рд░, рдЕрдкрд╛рдЪреЗ 2, рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓рдЧрднрдЧ рд╕рднреА рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдПрдХ RADIUS рд╕рд░реНрд╡рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдореЗрдВ рдПрд╕рдПрд╕рдПрдЪ рдХреЗ рд▓рд┐рдП)ред

рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ:

1) рдбреЗрдмрд┐рдпрди 8 (рдЬреЗрд╕реА) - рдЖрд╡рд╢реНрдпрдХ! (рд▓реЗрдЦ 9 рдХреЗ рдЕрдВрдд рдореЗрдВ рдбреЗрдмрд┐рдпрди 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 <linotp2@lsexperts.de> 2048 bit RSA key F86258E5, : 2010-05-10 Keys 1-1 of 1 for "913DFF12F86258E5".  , N)   Q) > 

рдЙрддреНрддрд░: рез

рдЕрдЧрд▓рд╛:

 # 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 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ: рд╣рд╛рдБ
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд╛рд╕рд╡рд░реНрдб рдмрдирд╛рдПрдБ Linotp: "YourPassword"
рд╕реНрд╡-рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ ?: рд╣рд╛рдБ
MySQL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ ?: рд╣рд╛рдБ
рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╣рд╛рдВ рд╣реИ: рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ
рд╕рд░реНрд╡рд░ рдкрд░ LinOTP рдбреЗрдЯрд╛рдмреЗрд╕ (рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдирд╛рдо) рдмрдирд╛рдПрдБ: LinOTP2
рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдПрдБ: LinOTP2
рд╣рдордиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗрдЯ рдХрд┐рдпрд╛: "YourPassword"
рдХреНрдпрд╛ рдореБрдЭреЗ рдЕрдм рдЖрдзрд╛рд░ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? (рдРрд╕рд╛ рдХреБрдЫ "рдХреНрдпрд╛ рдЖрдк рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реИрдВ рдХрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ ..."): рд╣рд╛рдБ
MySQL рд░реВрдЯ рдкрд╛рд╕рд╡рд░реНрдб рджрд░реНрдЬ рдХрд░реЗрдВ рдЬреЛ рдЗрд╕рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рджреМрд░рд╛рди рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛: "YourPassword"
рд╣реЛ рдЧрдпрд╛ред

(рд╡реИрдХрд▓реНрдкрд┐рдХ, рдЖрдк рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ)

 # apt-get install linotp-adminclient-cli 

(рд╡реИрдХрд▓реНрдкрд┐рдХ, рдЖрдк рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ)

 # apt-get install libpam-linotp 

рдФрд░ рдЗрд╕рд▓рд┐рдП рдЕрдм рд╣рдорд╛рд░рд╛ Linotp рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдпрд╣рд╛рдВ рдЙрдкрд▓рдмреНрдз рд╣реИ:

 "<b>https</b>: //IP_/manage" 

рдореИрдВ рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдореЗрдВ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ред

рдЕрдм, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд! FreeRadius рдЙрдард╛рдПрдВ рдФрд░ рдЗрд╕реЗ Linotp рд╕реЗ рд▓рд┐рдВрдХ рдХрд░реЗрдВред

FreeRadius рдФрд░ 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 / рдореЙрдбреНрдпреВрд▓ / рдкрд░реНрд▓ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ

 # nano /etc/freeradius/modules/perl 

рд╣рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рдкреИрд░рд╛рдореАрдЯрд░ рдореЗрдВ perl linotp рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдкрде рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

 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.XX)/validate/simplecheck REALM=webusers1c RESCONF=LocalUser Debug=True SSL_CHECK=False 

рдпрд╣рд╛рдВ рдореИрдВ рдереЛрдбрд╝рд╛ рдФрд░ рдзреНрдпрд╛рди рджреВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ:

рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдлрд╛рдЗрд▓ рдХрд╛ рдкреВрд░рд╛ рд╡рд┐рд╡рд░рдг:
рд▓рд╛рдЗрдирдЯреЙрдк рд╕рд░реНрд╡рд░ рдХрд╛ #IP (рд╣рдорд╛рд░реЗ рд▓рд┐рдиреЛрдЯ рд╕рд░реНрд╡рд░ рдХрд╛ рдЖрдИрдкреА рдкрддрд╛)
URL = https: //172.17.14.103/validate/simplecheck
# рд╣рдорд╛рд░рд╛ рдХреНрд╖реЗрддреНрд░ рдЬрд┐рд╕реЗ рд╣рдо LinOTP рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдореЗрдВ рдмрдирд╛рдПрдВрдЧреЗред)
REALM = рд░рд┐рдпрд░рдПрдо 1
# рдЬреВрдЬрд╝реЗрд╡реЗрд░ рд╕рдореВрд╣ рдХрд╛ рдирд╛рдо рдЬреЛ рд▓рд┐рдиреЙрдЯ рдкреА рд╡реЗрдмрдореЙрд░реНрдб рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
RESCONF = flat_file
# рдЧреЛрдж рд▓реЗрдиреЗ рд╡рд╛рд▓рд╛: рдпрджрд┐ рд╕рдм рдХреБрдЫ рдареАрдХ рд▓рдЧрддрд╛ рд╣реИ рддреЛ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ
рдбрд┐рдмрдЧ = рд╕рддреНрдп
#optional: рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдкреНрд░рдорд╛рдг рдкрддреНрд░ рд╣реИрдВ, рдЕрдиреНрдпрдерд╛ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ (рдПрд╕рдПрд╕рдПрд▓ рдпрджрд┐ рд╣рдо рдЕрдкрдирд╛ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ)
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 USER\REALM 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 рдХреЙрдиреНрдлрд╝рд┐рдЧ -> UserIdResolvers -> рдирдпрд╛ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ
рдЪреБрдиреЗрдВ рдХрд┐ рд╣рдо рдХреНрдпрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ: LDAP (AD win, LDAP samba), рдпрд╛ SQL, рдпрд╛ рд╕реНрдерд╛рдиреАрдп рдлреНрд▓реИрдЯрдлрд╝рд╛рдЗрд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ред

рдЖрд╡рд╢реНрдпрдХ рдлрд╝реАрд▓реНрдб рднрд░реЗрдВред

рдЕрдЧрд▓рд╛, REALMS рдмрдирд╛рдПрдВ:
рдКрдкрд░реА рджрд╛рдПрдВ рдХреЛрдиреЗ рдореЗрдВ, LINOTP рдХреЙрдиреНрдлрд╝рд┐рдЧ -> рд╕реНрдерд╛рдиреЛрдВ -> рдирдпрд╛ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред
рдФрд░ рд╣рдорд╛рд░реЗ REALMS рдХреЛ рдПрдХ рдирд╛рдо рджреЗрдВ, рд╕рд╛рде рд╣реА рдкрд╣рд▓реЗ рдмрдирд╛рдП рдЧрдП UserIdResolvers рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

FreeRadius рдХреЛ рдпрд╣ рд╕рдм рдбреЗрдЯрд╛ /etc/linotp2/rlm_perl.ini рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдореИрдВрдиреЗ рдКрдкрд░ рд▓рд┐рдЦрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ рд╕рдВрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдЕрднреА рдХрд░реЗрдВред

рд╕рднреА рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдкреВрд░рдХ:

рдбреЗрдмрд┐рдпрди 9 рдкрд░ linotP рдХреА рд╕реНрдерд╛рдкрдирд╛ ( prikhodkov рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж)
# LinotP рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ /etc/apt/sources.list.d/linotp.list рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рд╢рд▓рдЬрдо рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ:

рдЗрдХреЛ " deb linotp.org/apt/debian stretch linotp"> /etc/apt/sources.list.d/linotp.list
apt-get update
apt-get install dirmngr
apt-key adv --recv-keys 913DFF12F86258E5

# рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдФрд░ рдореВрд▓ рд░реВрдк рд╕реЗ mysql рд╕рд░реНрд╡рд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ:

apt-get рд╕реНрдерд╛рдкрд┐рдд mysql-server

# Linotp рдФрд░ freeradius рд╕рдВрдХреБрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

apt-get install linotp linotp-adminclient-cli python-ldap freeradius python-passlib python-bcrypt git libio-all-lwp-perl libconfig-file-perl libtry-small-perl
# Freeradius рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдиреБрднреВрддрд┐ рдмрдирд╛рдПрдБ

ln -s /etc/freeradius/3.0/sites-available / etc / freeradius / рд╕рд╛рдЗрдЯреЗрдВ рдЙрдкрд▓рдмреНрдз
ln -s /etc/freeradius/3.0/sites-enabled / etc / freeradius / рд╕рд╛рдЗрдЯреЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВ
ln -s /etc/freeradius/3.0/clients.conf /etc/freeradius/clients.conf
ln -s /etc/freeradius/3.0/users / etc / freeradius / рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛

# Linotp-Cort-freeradius-perl рдореЙрдбреНрдпреВрд▓ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ

git рдХреНрд▓реЛрди рдХреНрд▓реЛрди github.com/LinOTP/linotp-auth-freeradius-perl
рд╕реАрдбреА рд▓рд┐рдиреЛрдЯрдк-рдХреЛрд░-рдлреНрд░реАрд░рд╛рдбрд┐рдпрд╕-рдкрд░реНрд▓ /
cp radius_linotp.pm /usr/share/linotp/radius_linotp.pm

# рд╣рдо рдЗрд╕ рдлреЙрд░реНрдо рдореЗрдВ linotp рдХреЗ рд▓рд┐рдП freeradius рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рд▓рд╛рддреЗ рд╣реИрдВ

рдмрд┐рд▓реНрд▓реА / рдЖрджрд┐ / рдлрд╝реНрд░реАрд░рд╛рдбрд┐рдпрд╕ / рд╕рд╛рдЗрдЯ-рд╕рдХреНрд╖рдо / рд▓рд┐рдиреЛрдЯрдк

рд╕рд░реНрд╡рд░ рд▓рд╛рдЗрдирдЯреЙрдк {
рд╕реБрдиреЛ {
ipaddr = *
port = 1812
рдкреНрд░рдХрд╛рд░ =
}
рд╕реБрдиреЛ {
ipaddr = *
рдкреЛрд░реНрдЯ = 1813
рдкреНрд░рдХрд╛рд░ = рдПрд╕реАрдЯреЗрдЯ
}
рдЕрдзрд┐рдХреГрдд рдХрд░реЗрдВ {
preprocess
рдЕрджреНрдпрддрди {
рдФрд░ рдирд┐рдпрдВрддреНрд░рдг: рдкреНрд░рд╛рдорд╛рдгрд┐рдХ-рдкреНрд░рдХрд╛рд░: = рдкрд░реНрд▓
}
}
рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░реЗрдВ {
рдкреНрд░рд╛рдорд╛рдгрд┐рдХ-рдкреНрд░рдХрд╛рд░ рдкрд░реНрд▓ {
рдкрд░реНрд▓
}
}
рд▓реЗрдЦрд╛рдВрдХрди {
рдпреВрдирд┐рдХреНрд╕
}
}
# Freeradius рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рд╕рд╛рдЗрдЯреЛрдВ рдореЗрдВ рд╣рдо рдХреЗрд╡рд▓ linotp рдЫреЛрдбрд╝рддреЗ рд╣реИрдВ

ls / etc / freeradius / рд╕рд╛рдЗрдЯреНрд╕-рд╕рдХреНрд╖рдо
linotp

# рдРрд╕реЗ рд╣реЛрд╕реНрдЯ рдЬреЛрдбрд╝реЗрдВ рдЬрд┐рдирд╕реЗ рд╣рдо рдлреНрд░реАрд░реЗрдбрд┐рдпрд╕ рдкрд░ рдХрдиреЗрдХреНрд╢рди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ

cat /etc/freeradius/clients.conf

рдЧреНрд░рд╛рд╣рдХ host1 {
ipaddr = IP_1
netmask = 32
рдЧреБрдкреНрдд = 'SECRET_1'
}
рдЧреНрд░рд╛рд╣рдХ host2 {
ipaddr = IP_2
netmask = 32
рдЧреБрдкреНрдд = 'SECRET_2'
}
# рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдо рдкрд░реНрд▓ рдХрдиреЗрдХреНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ

cat / etc / freeradius / рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛

DEFAULT рдкреНрд░рд╛рдорд╛рдгрд┐рдХ-рдкреНрд░рдХрд╛рд░: = perl
}

cat /etc/freeradius/3.0/mods-available/perl

рдкрд░реНрд▓ {
рдлрд╝рд╛рдЗрд▓ рдирд╛рдо = /usr/share/linotp/radius_linotp.pm
func_authenticate = рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рдирд╛
func_authorize = рдкреНрд░рд╛рдзрд┐рдХреГрдд рдХрд░рдирд╛

}
# рдореЙрдб-рдЗрдиреЗрдмрд▓реНрдб рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ, рдкреЗрд░реНрд▓ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрд╕-рдЕрд╡реЗрд▓реЗрдмрд▓ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рд╕реЗ рд╕рд┐рдорд┐рд▓рд┐рдВрдХ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ eap рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ

ln -s /etc/freeradius/3.0/mods-available/perl/etc/freeradius/3.0/mods-enabled/perl
rm /etc/freeradius/3.0/mods-enabled/eap

# Linotp рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдСрдбрд┐рдЯ рдХрд░реЗрдВ

linotp-create-audkeykeys -f linotp.ini
# рд╣рдо рддреНрд░рд┐рдЬреНрдпрд╛ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдбреАрдбреА рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдиреЗрдХреНрдЯрд░ рдХрд╛ рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рддреЗ рд╣реИрдВ

cat /etc/linotp2/rlm_perl.ini

URL = https: // IP_LINOTP_SRV / рдорд╛рдиреНрдп / рд╕рд░рд▓ рдЪреЗрдХ
REALM = рджрд╛рдпрд░реЗ
RESCONF = рд▓реЛрдХрд▓рдпреВрдЬрд╝рд░
рдбрд┐рдмрдЧ = рд╕рддреНрдп
SSL_CHECK = рдЧрд▓рдд

рдореИрдВ рд╕рд┐рд╕реНрдЯрдо рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рд▓рд┐рдВрдХ рдиреАрдЪреЗ рдЫреЛрдбрд╝ рджреВрдБрдЧрд╛, рдЬрд┐рдиреНрд╣реЗрдВ рдЕрдХреНрд╕рд░ рджреЛ-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рджреНрд╡рд╛рд░рд╛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ:
Apache2 рдореЗрдВ рджреЛ-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛

рд╕рд┐рд╕реНрдХреЛ рдПрдПрд╕рдП рдХреЗ рд╕рд╛рде рд╕реЗрдЯрдЕрдк (рдПрдХ рдФрд░ рдЯреЛрдХрди рдкреАрдврд╝реА рд╕рд░реНрд╡рд░ рд╡рд╣рд╛рдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдПрд╕рдП рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕рдорд╛рди рд╣реИрдВ)ред

рджреЛ-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд╕рд╛рде рд╡реАрдкреАрдПрди

Ssh рдореЗрдВ рджреЛ-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ (LinOTP рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд╣рд╛рдВ рднреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ) - рд▓реЗрдЦрдХ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рддреБрдо рднреА рд╡рд╣рд╛рдБ LiOTP рдиреАрддрд┐рдпреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рддреЗрдВ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХрдИ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд╕реЗрдореА рдЯреВ-рдлреИрдХреНрдЯрд░ рдСрдереЗрдВрдЯрд┐рдХреЗрд╢рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ (рд▓рд┐рдиреЛрде рдХрд╛ рднреА рд╡рд░реНрдбрдкреНрд░реЗрд╕ рдХреЗ рд▓рд┐рдП рдЧрд┐рдердм рдкрд░ рдЕрдкрдирд╛ рд╡рд┐рд╢реЗрд╖ рдореЙрдбреНрдпреВрд▓ рд╣реИ), рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдЕрдкрдиреА рдХреЙрд░реНрдкреЛрд░реЗрдЯ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдХрдВрдкрдиреА рдХреЗ рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рдЕрдиреБрднрд╛рдЧ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдорд╣рддреНрд╡рдкреВрд░реНрдг рддрдереНрдп! Google рдкреНрд░рдорд╛рдгрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЙрдХреНрд╕ "Google рдСрдЯреЗрдВрдЯрд┐рдлрд┐рдХреЗрдЯрд░" рдХреА рдЬрд╛рдВрдЪ рди рдХрд░реЗрдВ! QR рдХреЛрдб рддрдм рдирд╣реАрдВ рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ... (рдЕрдЬреАрдм рддрдереНрдп)

рд▓реЗрдЦ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓реЗрдЦреЛрдВ рд╕реЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:
itnan.ru/post.php?c=1&p=270571
www.digitalbears.net/?p=469

рд▓реЗрдЦрдХреЛрдВ рдХреЛ рдзрдиреНрдпрд╡рд╛рджред

Source: https://habr.com/ru/post/hi462523/


All Articles