-
Notifications
You must be signed in to change notification settings - Fork 57
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
fb95d72
commit 910b418
Showing
11 changed files
with
497 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
# routeros_ip_hotspot (Resource) | ||
|
||
|
||
## Example Usage | ||
```terraform | ||
resource "routeros_ip_hotspot" "test" { | ||
name = "server-1" | ||
interface = "ether2" | ||
} | ||
``` | ||
|
||
<!-- schema generated by tfplugindocs --> | ||
## Schema | ||
|
||
### Required | ||
|
||
- `interface` (String) Interface to run HotSpot on. | ||
- `name` (String) HotSpot server's name or identifier. | ||
|
||
### Optional | ||
|
||
- `address_pool` (String) Address space used to change HotSpot client any IP address to a valid address. Useful for providing public network access to mobile clients that are not willing to change their networking settings. | ||
- `addresses_per_mac` (String) Number of IP addresses allowed to be bind with the MAC address, when multiple HotSpot clients connected with one MAC-address. | ||
- `disabled` (Boolean) | ||
- `idle_timeout` (String) Period of inactivity for unauthorized clients. When there is no traffic from this client (literally client computer should be switched off), once the timeout is reached, a user is dropped from the HotSpot host list, its used address becomes available. | ||
- `keepalive_timeout` (String) The exact value of the keepalive-timeout, that is applied to the user. Value shows how long the host can stay out of reach to be removed from the HotSpot. | ||
- `login_timeout` (String) Period of time after which if a host hasn't been authorized itself with a system the host entry gets deleted from host table. Loop repeats until the host logs in the system. Enable if there are situations where a host cannot log in after being too long in the host table unauthorized. | ||
- `profile` (String) HotSpot server default HotSpot profile, which is located in `/ip/hotspot/profile`. | ||
|
||
### Read-Only | ||
|
||
- `id` (String) The ID of this resource. | ||
- `invalid` (Boolean) | ||
|
||
## Import | ||
Import is supported using the following syntax: | ||
```shell | ||
#The ID can be found via API or the terminal | ||
#The command for the terminal is -> :put [/ip/hotspot get [print show-ids]] | ||
terraform import routeros_ip_hotspot.test *3 | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
# routeros_ip_hotspot_ip_binding (Resource) | ||
|
||
|
||
## Example Usage | ||
```terraform | ||
resource "routeros_ip_hotspot_ip_binding" "test" { | ||
address = "0.0.0.1" | ||
comment = "comment" | ||
mac_address = "00:00:00:00:01:10" | ||
to_address = "0.0.0.2" | ||
} | ||
``` | ||
|
||
<!-- schema generated by tfplugindocs --> | ||
## Schema | ||
|
||
### Optional | ||
|
||
- `address` (String) The original IP address of the client. | ||
- `comment` (String) | ||
- `disabled` (Boolean) | ||
- `mac_address` (String) MAC address of the client. | ||
- `server` (String) Name of the HotSpot server. `all` - will be applied to all hotspot servers. | ||
- `to_address` (String) New IP address of the client, translation occurs on the router (client does not know anything about the translation). | ||
- `type` (String) Type of the IP-binding action `regular` - performs One-to-One NAT according to the rule, translates the address to to-address; `bypassed` - performs the translation, but excludes client from login to the HotSpot; `blocked` - translation is not performed and packets from a host are dropped. | ||
|
||
### Read-Only | ||
|
||
- `id` (String) The ID of this resource. | ||
|
||
## Import | ||
Import is supported using the following syntax: | ||
```shell | ||
#The ID can be found via API or the terminal | ||
#The command for the terminal is -> :put [/ip/hotspot/ip-binding get [print show-ids]] | ||
terraform import routeros_ip_hotspot_ip_binding.test *3 | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
# routeros_ip_hotspot_profile (Resource) | ||
|
||
|
||
## Example Usage | ||
```terraform | ||
resource "routeros_ip_hotspot_profile" "test" { | ||
name = "hsprof-1" | ||
login_by = ["mac", "https", "trial"] | ||
use_radius = true | ||
} | ||
``` | ||
|
||
<!-- schema generated by tfplugindocs --> | ||
## Schema | ||
|
||
### Required | ||
|
||
- `name` (String) Descriptive name of the profile. | ||
|
||
### Optional | ||
|
||
- `dns_name` (String) DNS name of the HotSpot server (it appears as the location of the login page). This name will automatically be added as a static DNS entry in the DNS cache. Name can affect if Hotspot is automatically detected by client device. For example, iOS devices may not detect Hotspot that has a name which includes `.local`. | ||
- `hotspot_address` (String) IP address of HotSpot service. | ||
- `html_directory` (String) Directory name in which HotSpot HTML pages are stored (by default hotspot directory). It is possible to specify different directory with modified HTML pages. To change HotSpot login page, connect to the router with FTP and download hotspot directory contents. v6.31 and older software builds: For devices where `flash` directory is present, hotspot html directory must be stored there and path must be typed in as follows: `/(hotspot_dir)`. This must be done in this order as hotspot sees `flash` directory as root location. v6.32 and newer software builds: full path must be typed in html-directory field, including `/flash/(hotspot_dir)`. | ||
- `html_directory_override` (String) Alternative path for hotspot html files. It should be used only if customized hotspot html files are stored on external storage(attached usb, hdd, etc). If configured then hotspot will switch to this html path as soon at it becomes available and switch back to html-directory path if override path becomes non-available for some reason. | ||
- `http_cookie_lifetime` (String) HTTP cookie validity time, the option is related to cookie HotSpot login method. | ||
- `http_proxy` (String) Address and port of the proxy server for HotSpot service, when default value is used all request are resolved by the local `/ip proxy`. | ||
- `https_redirect` (Boolean) Whether to redirect unauthenticated user to hotspot login page, if he is visiting a https:// url. Since certificate domain name will mismatch, often this leads to errors, so you can set this parameter to `no` and all https requests will simply be rejected and user will have to visit a http page. | ||
- `login_by` (Set of String) Used HotSpot authentication method | ||
* mac-cookie - enables login by mac cookie method. | ||
* cookie - may only be used with other HTTP authentication method. HTTP cookie is generated, when user authenticates in HotSpot for the first time. User is not asked for the login/password and authenticated automatically, until cookie-lifetime is active. | ||
* http-chap - login/password is required for the user to authenticate in HotSpot. CHAP challenge-response method with MD5 hashing algorithm is used for protecting passwords. | ||
* http-pap - login/password is required for user to authenticate in HotSpot. Username and password are sent over network in plain text. | ||
* https - login/password is required for user to authenticate in HotSpot. Client login/password exchange between client and server is encrypted with SSL tunnel. | ||
* mac - client is authenticated without asking login form. Client MAC-address is added to `/ip hotspot user` database, client is authenticated as soon as connected to the HotSpot | ||
* trial - client is allowed to use internet without HotSpot login for the specified amount of time. | ||
- `mac_auth_mode` (String) Allows to control User-Name and User-Password RADIUS attributes when using MAC authentication. | ||
- `mac_auth_password` (String, Sensitive) Used together with MAC authentication, field used to specify password for the users to be authenticated by their MAC addresses. The following option is required, when specific RADIUS server rejects authentication for the clients with blank password. | ||
- `nas_port_type` (String) `NAS-Port-Type` value to be sent to RADIUS server, `NAS-Port-Type` values are described in the RADIUS RFC 2865. This optional value attribute indicates the type of the physical port of the HotSpot server. | ||
- `radius_accounting` (Boolean) Send RADIUS server accounting information for each user, when yes is used. | ||
- `radius_default_domain` (String) Default domain to use for RADIUS requests. Allows to use separate RADIUS server per `/ip hotspot profile`. If used, same domain name should be specified under `/radius domain` value. | ||
- `radius_interim_update` (String) How often to send accounting updates . When received is set, interim-time is used from RADIUS server. 0s is the same as received. | ||
- `radius_location_name` (String) `RADIUS-Location-Id` to be sent to RADIUS server. Used to identify location of the HotSpot server during the communication with RADIUS server. Value is optional and used together with RADIUS server. | ||
- `radius_mac_format` (String) Controls how the MAC address of the client is encoded in the `User-Name` and `User-Password` attributes when using MAC authentication. | ||
- `rate_limit` (String) Rate limitation in form of rx-rate[/tx-rate] [rx-burst-rate[/tx-burst-rate] [rx-burst-threshold[/tx-burst-threshold] [rx-burst-time[/tx-burst-time]]]] [priority] [rx-rate-min[/tx-rate-min]] from the point of view of the router (so `rx` is client upload, and `tx` is client download). All rates should be numbers with optional 'k' (1,000s) or 'M' (1,000,000s). If tx-rate is not specified, rx-rate is as tx-rate too. Same goes for tx-burst-rate and tx-burst-threshold and tx-burst-time. If both rx-burst-threshold and tx-burst-threshold are not specified (but burst-rate is specified), rx-rate and tx-rate is used as burst thresholds. If both rx-burst-time and tx-burst-time are not specified, 1s is used as default. rx-rate-min and tx-rate min are the values of limit-at properties. | ||
- `smtp_server` (String) SMTP server address to be used to redirect HotSpot users SMTP requests. | ||
- `split_user_domain` (Boolean) Split username from domain name when the username is given in `user@domain` or in `domain\user` format from RADIUS server. | ||
- `ssl_certificate` (String) Name of the SSL certificate on the router to to use only for HTTPS authentication. | ||
- `trial_uptime_limit` (String) Used only with trial authentication method. Time value specifies, how long trial user identified by MAC address can use access to public networks without HotSpot authentication. | ||
- `trial_uptime_reset` (String) Used only with trial authentication method. | ||
- `trial_user_profile` (String) Specifies hotspot user profile for trial users. | ||
- `use_radius` (Boolean) Use RADIUS to authenticate HotSpot users. | ||
|
||
### Read-Only | ||
|
||
- `id` (String) The ID of this resource. | ||
|
||
## Import | ||
Import is supported using the following syntax: | ||
```shell | ||
#The ID can be found via API or the terminal | ||
#The command for the terminal is -> :put [/ip/hotspot/profile get [print show-ids]] | ||
terraform import routeros_ip_hotspot_profile.test *3 | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
# routeros_ip_hotspot_service_port (Resource) | ||
|
||
|
||
## Example Usage | ||
```terraform | ||
resource "routeros_ip_hotspot_service_port" "test" { | ||
name = "ftp" | ||
disabled = true | ||
} | ||
``` | ||
|
||
<!-- schema generated by tfplugindocs --> | ||
## Schema | ||
|
||
### Required | ||
|
||
- `name` (String) Service name. | ||
|
||
### Optional | ||
|
||
- `disabled` (Boolean) | ||
|
||
### Read-Only | ||
|
||
- `id` (String) The ID of this resource. | ||
- `ports` (String) | ||
|
||
## Import | ||
Import is supported using the following syntax: | ||
```shell | ||
#The ID can be found via API or the terminal | ||
#The command for the terminal is -> :put [/ip/hotspot/service-port get [print show-ids]] | ||
terraform import routeros_ip_hotspot_service_port.test *1 | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
# routeros_ip_hotspot_user (Resource) | ||
|
||
|
||
## Example Usage | ||
```terraform | ||
resource "routeros_ip_hotspot_user" "test" { | ||
name = "user-1" | ||
} | ||
``` | ||
|
||
<!-- schema generated by tfplugindocs --> | ||
## Schema | ||
|
||
### Required | ||
|
||
- `name` (String) HotSpot login page username, when MAC-address authentication is used name is configured as client's MAC-address. | ||
|
||
### Optional | ||
|
||
- `address` (Number) IP address, when specified client will get the address from the HotSpot one-to-one NAT translations. Address does not restrict HotSpot login only from this address. | ||
- `comment` (String) | ||
- `disabled` (Boolean) | ||
- `email` (String) HotSpot client's e-mail, informational value for the HotSpot user. | ||
- `limit_bytes_in` (Number) Maximal amount of bytes that can be received from the user. User is disconnected from HotSpot after the limit is reached. | ||
- `limit_bytes_out` (Number) Maximal amount of bytes that can be transmitted from the user. User is disconnected from HotSpot after the limit is reached. | ||
- `limit_bytes_total` (Number) (limit-bytes-in+limit-bytes-out). User is disconnected from HotSpot after the limit is reached. | ||
- `limit_uptime` (Number) Uptime limit for the HotSpot client, user is disconnected from HotSpot as soon as uptime is reached. | ||
- `mac_address` (Number) Client is allowed to login only from the specified MAC-address. If value is 00:00:00:00:00:00, any mac address is allowed. | ||
- `password` (String, Sensitive) User password. | ||
- `profile` (String) User profile configured in `/ip hotspot user profile`. | ||
- `routes` (String) Routes added to HotSpot gateway when client is connected. The route format dst-address gateway metric (for example, `192.168.1.0/24 192.168.0.1 1`). | ||
- `server` (String) HotSpot server's name to which user is allowed login. | ||
|
||
### Read-Only | ||
|
||
- `default` (Boolean) It's the default rule. | ||
- `dynamic` (Boolean) Configuration item created by software, not by management interface. It is not exported, and cannot be directly modified. | ||
- `id` (String) The ID of this resource. | ||
|
||
## Import | ||
Import is supported using the following syntax: | ||
```shell | ||
#The ID can be found via API or the terminal | ||
#The command for the terminal is -> :put [/ip/hotspot/user get [print show-ids]] | ||
terraform import routeros_ip_hotspot_user.test *3 | ||
``` |
Oops, something went wrong.