αααααΌαααΆααααα»αααΆααααααααΌαααΆαα αΌαααααΎααΈα ααααΆααα ααΆααααα·ααΆααΆαααΆααΈααααααααα»αααα α‘αΎαααΆααααα αααΎαα‘αΎαα αα·αααΆααΆααΆα’αααααααΎααααΆαα α¬ααααΌααααα’ααααααααααΌαααΆαα αΌαααααΎαααΆαααΈαααααΆααααΆααααΆαα½ααα αααα»αααααΆαααααααα’ααααααααα
αααααΆαααααααααααΆααααα αααα»αα αα»αααΆαα αααΎαααααΎααααΆαααα αα αααα·ααααΆ VPN αααααΆααααα αΆαα±ααααΎαααααααα½αα―αααΆααΆαααααααΆαααΆαααΆααααα’αΆα αα»αα α·αααααΆααααα»αααΆαααααααα·αααα·α αΌαααααΎααααΆααααααΆααααα»ααααα»αααααα’αααααΆαα
αααα»αα αα»ααααααααα»ααα·αααΆαααααΈααΎααααααααα α αΎαααΎαααααΌα α’αααααααααααααα ααααΎααααΆαααα αα αααα·ααααΆαααα α αΎαααΌα α’αααααααααααααα ααΎαααααΎ Cisco ASA 55xx ααΆα αααα αΌαααΈα ααααΆαα
αααααΆαα ααα½αα’αααααααΎααααΆααααΈα ααααΆαααΎαα‘αΎα α αΆαααΆα αααααΌαααααα½αααΈαα·αα·ααΈαααααΆααααΆαα αααα·αα·ααααααΆααα ααα»αααααααα»ααααααΆαα½αααααΆαααααααΌαααααααΎααααα·ααααααΆααααααα»ααααα·ααΆαα
αααααΆαααααα½αααΎα ααΎαααΆαααααΎααααααααααΆααα½ααααα»αααΆαααααΎααααΆααααΆααααααααααΆααααΈααααααΆαααααΆααααααΆααααΆαααα Cisco SSL VPN αααααααΎααΆααααααααΆαααααα½αααα α αΎαααΆαααααα»ααααααααΉαααααΆααα’αααααΈαααααααα ααααααααααΆαααααααααΆαα½αααΉαααΆαα αααΆααααααααΆαα·α αα½α αααα»α αα·αααΌααααααααΆαααααααα·ααΈα αΆαααΆα α (αααααααΆα’αααααΆα Cisco ASA αα αααα»αα αααααΆαα ααΆααααααααααααα’ααααα½α α αΎα)α
ααΈααααΆαααΊααααΌααα
ααααααααααααΆααααα’αααααααΆαααααααΎαααΆααααααααΆαααααα½ααα ααααααααααααααααΌαααΌααααααΎαααΆα
αααΎααααααΆααααΆαααα½αααΆαααΆ ααΆααΎααΆααααΎααααααααΆααααΆααααααΆα SMS α¬ααααΎααΌααΉα ααΆαααααααααΉα αα·αααΌα ααααα (α§ααΆα ααααα
ααΎααΌααααααα)α ααα»ααααααααααααΆααααΆααΎααααΈαααααααααΆαααα·αααααααααΆααααΆαααααααααΆαααααααΆαααα·αααααααααααα»ααααα»ααα·ααααα·αα
αα
α»ααααααααΆαααααααααα»αα±ααααααααααα·ααΈα₯ααα·αααααααΎααααΈα’αα»ααααααααΆαααααααααΆαααααααΎαααΆααααααααΆααααααααα ααααααααααααα₯ααα·ααααα ααΊαα·αααΆαααΆααααααααααΆαααΆαα·αααααααα
αααΎααα (αα
ααΈαααααΎααα½αααααααΎααΆαααααα»α αααααααααααΆααααΆααα·ααααααααααΆαααααααΆαα·αααααααααα ααα»ααααααΎαααΆααααααααααΆααΆαα
αααΆαααααααΎαααΆαα»αααΉαααΌααα)α
ααΌα
ααααααΎαααααΌαααΆαα
- ααΌαααΆαααΈαα»α
αααααΆαα§ααααααααααααΆααααααΆαα½α - multiOTP, FreeRADIUS αα·α nginx αααααΆααα
αΌαααααΎαααΆαααΈαααααΆαααααααααΆα (http://download.multiotp.net/ - αααα»αααΆαααααΎααΌαααΆααααααααααα½α
ααΆααααα
αααααΆαα VMware)
- αααΆαααΈααααααΎααααααα
- Cisco ASA αααα½αααΆ (αααααΆααααΆαααΆααααα½α αααα»αααααΎ ASDM)
- αα·αα·ααααααααΆαααααα·ααΈααΆαα½ααααααΆααααααααααΆα TOTP (α§ααΆα ααα αααα»αααααΎ Google Authenticator ααα»αααα FreeOTP ααΌα
ααααΆααΉαααααΎ)
αααα»αβααΉαβαα·αβαααα’α·αβα’αααΈβααααβαααβααΌαααΆαβααΆαβαααααΆαβαααβααα ααΆαααααα α’αααααΉαααα½αααΆα Debian Linux ααΆαα½α multiOTP αα·α FreeRADIUS αααααΆαααα‘αΎααα½α α αΎα ααααααα ααΆααααααααααΎααααΈααααΎααΆαααΆαα½αααααΆ αα·αα ααα»α αααααΆαααααααΆααααααΆααααΆαααααααααα OTP α
ααα αΆαααΈ 1. ααΎαα
αΆααααααΎααααααααα αα·αααααααα
ααΆααααααααααΆαααααΆαααααααΆαααααα’αααα
ααΆαααααΆαααΎα αααααααααααααααΆααααααΆαα½αααααααΆααααααΆααα«ααααα αααα»αβαα·αβααΆβα’αααβααΆααβααααΆβααΆαβααΆαβααΆβααΆβααΆβαααα·αβααα’βαααα»αβααΆαβααααΆααβααααΌαβαααβαααααΆααβα’αααβααααΎ root αααααΆααβααΈβααΆαβα
αΌαβααααΌαα α’αααααααααΌαααααΆααααααΌαααΆαααααααααααΆα (ααΆαααααΆαααΎαααΆααΊ '192.168.1.44' ααΆαα½αααΉαα
αααα
ααα
αΌα '192.168.1.1')α αααααΆααααΈαααα’αααα’αΆα
α
αΆααααααΎαααααααααα‘αΎααα·αα
ααααααααΎαα’αααααααΎααααΆαααααα»α Active Directory otpααΆαα½αααΉαααΆααααααααΆαα MySuperPassword.
ααα αΆα 2. ααα‘αΎαααΆααααααΆαα αα·αααΆαα
αΌαα’αααααααΎααααΆαα Active Directory
ααΎααααΈααααΎααΌα
αααα ααΎαααααΌαα
αΌαααααΎαα»αααΌα αα·ααααααααΆαααα
ααΆααα―αααΆα multiotp.phpαααααααΎαααααΎαααΉαααααααα
ααΆααααααααααΆααααααααΆααααααΆαααα
Active Directory α
α αΌααα ααΆαααα /usr/local/bin/multiotp/ α αΎαααααα·ααααα·ααΆααααααααΆααΆααααααααΆαααα
./multiotp.php -config default-request-prefix-pin=0
αααααααΆααΎααααΌαααΆααααα»ααααααα (α’α α·αααααααα) αα ααααααα αΌααααα»ααααα (0 α¬ 1)
./multiotp.php -config default-request-ldap-pwd=0
αααααααΆααΎααΆααααααααΆαααααααααΌαααΆαααΆαααΆααα ααααααα αΌααααα»ααααα (0 α¬ 1)
./multiotp.php -config ldap-server-type=1
αααααααααΆαααΈααα LDAP ααααΌαααΆαα ααα’α»ααααα αΆα (0 = αααΆαααΈααα LDAP ααααααΆ αααα»αααααΈααααααΎα 1 = Active Directory)
./multiotp.php -config ldap-cn-identifier="sAMAccountName"
αααααΆαααααααααααααααΌααααα αΆααααααα’αααααααΎααααΆαα (ααααααααααΉααααα αΆαααααααααααααααΆαααα)
./multiotp.php -config ldap-group-cn-identifier="sAMAccountName"
ααΏαααααααααααααΆαααααααα»ααα½αα
./multiotp.php -config ldap-group-attribute="memberOf"
αααααΆαααα·ααΈααΆααααααααααΆαααααααααΆααΎα’αααααααΎααααΆααααΆαααααα·αααα·αααααααα»αα¬α’αα
./multiotp.php -config ldap-ssl=1
ααΎαααα»ααα½αααααΎααΆαααααΆαααααααΆααα»ααααα·ααΆααα αααΆαααΈααα LDAP (αα·αααΆαα - ααΆα!)
./multiotp.php -config ldap-port=636
α ααααααααΆααααααΆαααα αααΆαααΈααα LDAP
./multiotp.php -config ldap-domain-controllers=adSRV.domain.local
α’αΆααααααΆααααΆαααΈααα Active Directory ααααα’αααα
./multiotp.php -config ldap-base-dn="CN=Users,DC=domain,DC=local"
ααΎαα ααα’α»ααααα αΆααααααααααααααΌαα αΆααααααΎααααααααα’αααααααΎααααΆαααα αααα»αααα
./multiotp.php -config ldap-bind-dn="[email protected]"
αααααΆααα’αααααααΎααααΆαααααααΆααα·αααα·ααααααααααα»α Active Directory
./multiotp.php -config ldap-server-password="MySuperPassword"
αααααΆααααΆααααααααΆααα’αααααααΎααααΆαα ααΎααααΈααααΆαααα ααΆαα Active Directory
./multiotp.php -config ldap-network-timeout=10
ααααααααα’ααααααααααΆααααααΆαααα Active Directory
./multiotp.php -config ldap-time-limit=30
ααΎαααααααααααααΆαααααΆααααααα·ααααα·ααΆαααΆαα αΌαα’αααααααΎααααΆαα
./multiotp.php -config ldap-activated=1
ααΆαααααΎα±ααααΆαααααααα ααΆααααααααααΆααααααΆαα Active Directory ααααα
./multiotp.php -debug -display-log -ldap-users-sync
ααΎαααΆαα αΌαα’αααααααΎααααΆααααΈ Active Directory
ααα αΆαααΈ 3. αααααΎαααΌα QR αααααΆαααααααΆαααααΆαα
α’αααΈααααααααΆααα
ααΈαααααΊααΆαααααααα»αα ααΎαα
ααα»α
αααααΆαααααααΆααααααααΆαααΈααα OTP αα
αααα»ααααααα·ααΈαα»ααα α
αΌα (αα»αααααα
ααααΌαααΆααααααααΆααααααΆαααΎααααααΆααα’αααααααααααα!) α αΎαα
α»α
ααΎαααΌαα»α "ααααα»ααα"α
αααααααααααααααΆααααααΉαααΆααααααααααΆααααααΌα QR ααΈαα ααΎααααααΎααααααΎαααΉαα’ααααααΈαα½ααααααα½ααααααααααΆα αΆα (αααααΈααΆααΆααα·ααΆα
αΆααΉααααα½αα±ααααΆααααΆααααα Google Authenticator / Authenticator / 2 Steps Authenticator) α αΎααααααααααΎαααααααααααΌαααΈααΈααααΆαααααΆα αΆααα
αααα»ααα·αα·ααααααααΆαααααα·ααΈαα
ααΎααΌααααααα
(ααΆα/α
αΆα αααα»αααΆαααααααΆαααΌα QR αααα
ααααΆααΎααααΈααααΎα±ααααΆαα·αα’αΆα
α’αΆαααΆα)α
αααααΆααααΈαααα αααααααααΆαααΆααααα ααΆααααααααΆααααααΆααα½ααααααααΉαα αΆααααααΎααααααΎααα αααα»ααααααα·ααΈααααα’ααααααααΆααααΆααα·ααα·ααΆααΈα
ααΎααααΈα±ααααααΆαα α’αααα’αΆα αα·αα·αααααΎαααΆαα αααα»αα ααα»α αααααΆααααΌα ααααΆα
ααααααα
αΌααααααα’αααααααΎααααΆαα αα·αααΆααααααααΆααααααααααΈαααααα·ααΈαα
ααΎααΌαααααααααα’αααα ααΎα’αααααΆαααα½αααΆαααααΎαααααΆαα·αααααΆααα? ααΌα
ααααααΎααααααα
αα»ααααα
ααα αΆα 4. ααΆαααααααα
ααΆαααααααααααααα αα·αααΆαααααΎαααααααααααα·ααααα·ααΆα FreeRADIUS
ααΌα
ααααααα»αααΆααααααΆααααΆαααΎ multiOTP ααααΌαααΆαααααααα
ααΆαααααααααα½α
α αΎαααΎααααΈααααΎααΆαααΆαα½α FreeRADIUS α’αααΈαααααα
αααααΊααααΌαααααΎαααΆαααΆαααααΎααααα αα·αααααααααααααΆαα’αααΈα
αααααααΌα VPN ααααααΎααα
ααΆααα―αααΆαααααααα
ααΆαααααααα FreeRADIUS α
ααΎααααααααα αα»αααΌααααΆαααΈααα αα ααΆαααα /usr/local/bin/multiotp/, αααα αΌαα
./multiotp.php -config debug=1
./multiotp.php -config display-log=1
αα½αααΆααααΆααααααααΆαααα’α·ααααααααααα
αα αααα»αα―αααΆαααααααα ααΆααααααααα’αα·αα·αα FreeRADIUS (/etc/freeradius/clinets.conf) αααα ααααα·ααΎαααααΆααααΆααα’αααααααΆααααααΉα localhost α αΎαααααααααΆαα»ααΈαα
client localhost {
ipaddr = 127.0.0.1
secret = testing321
require_message_authenticator = no
}
- αααααΆααααΆαααααΎααααα
client 192.168.1.254/32 {
shortname = CiscoASA
secret = ConnectToRADIUSSecret
}
- αααααΆααα αααααααΌα VPN ααααααΎαα
α αΆααααααΎα FreeRADIUS α‘αΎααα·α α αΎαααααΆααΆαα αΌαα
radtest username 100110 localhost 1812 testing321
αααααΆααααααααα username = αααααα’αααααααΎ, 100110 = ααΆααααααααΆαααααααΆααααααα±ααααΎαααααααααα·ααΈαα ααΎααΌαααααα, localhost = α’αΆααααααΆααααΆαααΈααα RADIUS, 1812 - α ααααααΆαααΈααα RADIUS, ααΆααααα 321 - αααααααΆαααααΆαααΈααα RADIUS (αααααΎαααΆααααααΆαααααα»αααΆαααααα)α
ααααααααααΆααααααααΆαααααΉαααΆααααααααααα ααααΌα ααΆααααααα
Sending Access-Request of id 44 to 127.0.0.1 port 1812
User-Name = "username"
User-Password = "100110"
NAS-IP-Address = 127.0.1.1
NAS-Port = 1812
Message-Authenticator = 0x00000000000000000000000000000000
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=44, length=20
α₯α‘αΌααααααΎαααααΌαααααΎα±ααααααΆααααΆα’αααααααΎααααΆααααααΌαααΆααααααααααΆαααααααααααα ααΎααααΈααααΎααΌα αααααΎαααΉααα·αα·αααααΎααααααα ααα»αα multiotp αααα½αααΆααααΆαα:
tail /var/log/multiotp/multiotp.log
α αΎαααααα·αααΎααΆαα»α α»ααααααααΆαα
2016-09-01 08:58:17 notice username User OK: User username successfully logged in from 127.0.0.1
2016-09-01 08:58:17 debug Debug Debug: 0 OK: Token accepted from 127.0.0.1
αααααΆααααα’αααΈαααααΎαααΆαααα’ α αΎαααΎαα’αΆα αααα ααααΆαα
ααα αΆαααΈ 5: ααααααα
ααΆαααααααα Cisco ASA
α
αΌαααΎααααααααααΆ ααΎαααΆααααα»α αα·ααααααΆααααααααΆαααααααα½α
α αΎααααααΆααααΆαα
αΌαααααΎααΆαααα SLL VPN αααααΆαααααααα
ααΆαααααααααααααααΆααααΆαα½α Active Directory α αΎαααΎαααααΌαααααααααΆααααααααααΆααααΈααααααΆαααααΆαααααααααααα
1. αααααααααα»ααααΆαααΈααα AAA ααααΈα
2. αααααααααΆαααΈααα multiOTP ααααααΎααα
αααα»αα
3. ααΎαααααααα½α ααααααααΆααααααΆααααααααααα»ααααΆαααΈααα Active Directory ααΆαααΆαααΈαααααΆααααααααααΆααααΆαααααΉαααααΌαα
4. αα
αααα»αααααΆαα ααααα·αααααα -> ααΆααααααααααΆααααΆαααααΉαααααΌα ααΎαααααααΎαααΎααααα»ααααΆαααΈααα Active Directoryα
5. αα
αααα»αααααΆαα ααααα·αααααα -> α’αα»αα·ααααΆααα ααΆααααααααααΆααααΆαααααΉαααααΌα ααααΎαααΎααααα»ααααΆαααΈααααααααΆααααααΎα ααααααΆαααΈααα multiOTP ααααΌαααΆαα
α»ααααααα α
αααΆαααΆαααααα’αααααααΎααααΆαα Session ααααΌαααΆαααα½αααααααΈαααα»ααααΆαααΈααα AAA α
ααααα
α’αα»ααααααΆαααααααα·α
ααα αΆαααΈ 6 α α
ααΆα
α»αααααα
ααααα·αα·αααααΎαααΆααΎααΆααααααααααΆααααΈααααααΆααααΎαααΆααααααΆαα SLL VPN αααα¬ααα
α’αΈαααΆ! αα
αααααααΆααααΆαααα Cisco AnyConnect VPN Client α’αααααααΉαααααΌαααΆααα½αααααααααααΆαααα½ααααααααα
αααα»ααααααΉαααΆα’ααααααααααΉααα½αααααΆααααΆαα α αΎαααΆααΉααααααα’αΆα αΆααααααααΆααααΆαααααααΆααααΆααα·αα’αααΈααααααααΎααΆ α₯ααα·ααααα αααΆαααΈααα OTP αααααΆαααα·α
αα
ααΆαααααααααα α
ααααααααα
αααα»αααα·αααααααααα·αααΎα’αααα
ααα
ααααα: www.habr.com