Ipv6 + Radius 3 Development: відмінності між версіями
Перейти до навігації
Перейти до пошуку
Sv (обговорення | внесок) |
Sv (обговорення | внесок) |
||
Рядок 184: | Рядок 184: | ||
</pre> | </pre> | ||
172.19.0.2 - ip микротика, почему такой пока не знаю. Кстати, я его получил из лога freeradius: | 172.19.0.2 - ip микротика, почему именно такой пока не знаю. Кстати, я его получил из лога freeradius: | ||
<pre> | <pre> | ||
Ignoring request to acct address * port 1813 bound to server default from unknown client 172.19.0.2 port 40012 proto udp</pre> | Ignoring request to acct address * port 1813 bound to server default from unknown client 172.19.0.2 port 40012 proto udp | ||
</pre> | |||
А в микротике: | |||
<pre> | |||
/ip address/print | |||
</pre> |
Версія за 16:51, 16 березня 2024
Это процесс разработки!
Установка Radius
apt install freeradius-mysql
rm /etc/freeradius/3.0/sites-enabled/default
cp /usr/local/nodeny/etc/raddb/clients.conf /etc/freeradius/3.0/
Конфигурирование
nano /etc/freeradius/3.0/sites-enabled/nodeny
Вставляем следующий текст:
server default { listen { type = auth ipaddr = * port = 1812 } listen { type = acct ipaddr = * port = 0 } authorize { sql update control { Auth-Type := Accept } } authenticate { } preacct { acct_unique preprocess } accounting { sql } session { radutmp sql } post-auth { sql } Post-Auth-Type ACCEPT { sql } }
Sql конфиг
В консоли:
nano /etc/freeradius/3.0/mods-enabled/sql
Вставляем следующий текст:
sql { driver = "rlm_sql_mysql" mysql { warnings = auto } server = "localhost" port = 3306 login = "nodeny" password = "hardpass" radius_db = "nodeny" read_groups = no authorize_reply_query = "call radreply('%{User-Name}', '%{NAS-IP-Address}')" accounting { reference = "%{tolower:type.%{Acct-Status-Type}.query}" type { start { query = "call radupdate('%{ERX-Dhcp-Mac-Addr}','%{Framed-IP-Address}',\ 'nas=%{NAS-IP-Address};ses=%{Acct-Session-Id}')" } interim-update { query = "${..start.query}" } stop { query = "call radstop('%{Framed-IP-Address}', '%{NAS-IP-Address}')" } } } post-auth { query = "call radupdate('%{ERX-Dhcp-Mac-Addr}','%{reply:Framed-IP-Address}',\ 'nas=%{NAS-IP-Address};ses=%{Acct-Session-Id};first_response=1')" } pool { start = 5 min = 5 max = 130 spare = 30 uses = 0 retry_delay = 30 lifetime = 0 idle_timeout = 60 } }
Докер Микротика
docker pull hossein3piol/mikrotik-routeros
nano docker-compose.yml
Вставляем:
version: '3.9' services: routers: container_name: "mikrotik" image: hossein3piol/mikrotik-routeros:latest privileged: true ports: - "2222:22" # ssh - "8888:80" # http - "8291:8291" # winbox cap_add: - NET_ADMIN devices: - /dev/net/tun extra_hosts: - "host.docker.internal:host-gateway"
В конфиге проброс на хостовую машину портов 22, 80 и 8291. host.docker.internal:host-gateway - добавдяем в днс хостовую машину (не сработало, придется по ip)
Запускаем контейнер:
docker-compose up
Первый запуск был очень долгим. Коннектимся:
ssh admin@172.17.0.1 -p 2222
По умолчанию пароль пустой
/ip dhcp-server add disabled=no interface=ether1 name=dhcp1 use-radius=yes /radius add address=172.17.0.1 secret=hardpass5 service=dhcp
На хостовой машине добавим в радиус микротик:
nano /etc/freeradius/3.0/clients.conf
client 172.19.0.2 { secret = hardpass5 shortname = NoDenyDB nastype = cisco }
172.19.0.2 - ip микротика, почему именно такой пока не знаю. Кстати, я его получил из лога freeradius:
Ignoring request to acct address * port 1813 bound to server default from unknown client 172.19.0.2 port 40012 proto udp
А в микротике:
/ip address/print