Ipv6 + Radius 3 Development: відмінності між версіями

Матеріал з NoDeny
Перейти до навігації Перейти до пошуку
(Створена сторінка: =Это процесс разработки!= ==Установка Radius== <source lang="bash"> apt install freeradius-mysql </source> <source lang="bash"> rm /etc/freeradius/3.0/sites-enabled/default cp /usr/local/nodeny/etc/raddb/clients.conf /etc/freeradius/3.0/ </source> ===Конфигурирование=== <source lang="bash"> nano /etc/freeradius/3.0/sites-enabled/nodeny </source> Вставляем следующий текст: <pre> serv...)
 
мНемає опису редагування
Рядок 113: Рядок 113:
     }
     }
}
}
</pre>


==Докер Микротика==
<source lang="bash">
docker pull hossein3piol/mikrotik-routeros
</source>
<source lang="bash">
nano docker-compose.yml
</source>
Вставляем:
<pre>
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"
</pre>
В конфиге проброс на хостовую машину портов 22, 80 и 8291. host.docker.internal:host-gateway - добавдяем в днс хостовую машину (не сработало, придется по ip)
Запускаем контейнер:
<source lang="bash">
docker-compose up
</source>
Первый запуск был очень долгим. Коннектимся:
<source lang="bash">
ssh admin@172.17.0.1 -p 2222
</source>
По умолчанию пароль пустой
<pre>
/ip dhcp-server
add disabled=no interface=ether1 name=dhcp1 use-radius=yes
/radius
add address=172.17.0.1 secret=hardpass5 service=dhcp
</pre>
</pre>

Версія за 16:42, 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