Mon problème
Cela fait maintenant plusieurs mois que j’ai mis en place HA avec VPN wiregard et ip_ban actif.
J’arrive à accéder à HA via l’appli de mon téléphone et celui dea copine, sans VPN via wifi local ou avec VPN via la 4G.
Ca fait depuis quelques temps maintenant que j’observe mon téléphone se faire bannir à cause d’ip_ban. En général je passe par la 4g et tout va bien. Et le soir je supprime le fichier ban_ip et c’est réglé. Ça m’est arrivé 3/4 fois, donc bon, je me suis pas trop inquieté.
Sauf que la, depuis hier, mon téléphone s’est fait bannir 2 jours de suite, sur l’ip locale et également sur l’ip VPN !!
Ca fait beaucoup !
Je ne comprend pas pourquoi. Je n’utilise que l’appli HA.
Ma configuration
A venir…
Salut,
Si ban c’est que l’authentification ne fonctionne pas (X fois de suite)
Bonsoir !
On a une idée du pourquoi du comment ? Car l’identifiant est sauvegardé dans 'appli…
Herbs
Avril 21, 2022, 8:53
4
Salut Florian,
Est-ce que par hasard tu aurais des flux de caméras dans ton dashboard ?
Salut !
Oui en effet, j’ai un flux de l’intégration frigate.
Herbs
Avril 22, 2022, 6:44
6
@FlorianB
Donc ça peut éventuellement venir de là :
opened 04:40PM - 16 Jul 19 UTC
closed 04:20PM - 28 Jul 22 UTC
Bug
stream
<!-- READ THIS FIRST:
- If you need additional help with this template please r… efer to https://www.home-assistant.io/help/reporting_issues/
- Make sure you are running the latest version of Home Assistant before reporting an issue: https://github.com/home-assistant/home-assistant/releases
- Frontend issues should be submitted to the home-assistant-polymer repository: https://github.com/home-assistant/home-assistant-polymer/issues
- iOS issues should be submitted to the home-assistant-iOS repository: https://github.com/home-assistant/home-assistant-iOS/issues
- Do not report issues for integrations if you are using a custom integration: files in <config-dir>/custom_components
- This is for bugs only. Feature and enhancement requests should go in our community forum: https://community.home-assistant.io/c/feature-requests
- Provide as many details as possible. Paste logs, configuration sample and code into the backticks. Do not delete any text from this template!
-->
**Home Assistant release with the issue:**
<!--
- Frontend -> Developer tools -> Info
- Or use this command: hass --version
-->
arch | x86_64
-- | --
dev | false
docker | true
hassio | false
os_name | Linux
python_version | 3.7.3
timezone | America/New_York
version | 0.95.4
virtualenv | false
**Last working Home Assistant release (if known):**
Unknown.
**Operating environment (Hass.io/Docker/Windows/etc.):**
<!--
Please provide details about your environment.
-->
Ubuntu 19.04, installed it last night. Docker container using index.docker.io/homeassistant/home-assistant:latest. I'm also using the Nginx/Lets Encrypt docker container as a proxy, and Blue Iris which is installed on a separate laptop.
**Component/platform:**
<!--
Please add the link to the documentation at https://www.home-assistant.io/components/ of the component/platform in question.
-->
https://www.home-assistant.io/components/mjpeg/
**Description of problem:**
**Problem-relevant `configuration.yaml` entries and (fill out even if it seems unimportant):**
```yaml
camera:
- platform: mjpeg
mjpeg_url: http://192.168.1.188:81/mjpg/BYC
name: BYC
- platform: mjpeg
mjpeg_url: http://192.168.1.188:81/mjpg/KTN
name: KTN
- platform: mjpeg
mjpeg_url: http://192.168.1.188:81/mjpg/AFN
name: AFN
- platform: mjpeg
mjpeg_url: http://192.168.1.188:81/mjpg/AFS
name: AFS
- platform: mjpeg
mjpeg_url: http://192.168.1.188:81/mjpg/FOS
name: FOS
binary_sensor:
- platform: mqtt
name: "KIT Motion"
state_topic: BlueIris/KTN/MOTION
payload_on: "ON"
payload_off: "OFF"
device_class: motion
- platform: mqtt
name: "KIT Motion A"
state_topic: BlueIris/KTN/MOTION_A
payload_on: "ON"
payload_off: "OFF"
device_class: motion
- platform: mqtt
name: "KIT Motion B"
state_topic: BlueIris/KTN/MOTION_B
payload_on: "ON"
payload_off: "OFF"
device_class: motion
- platform: mqtt
name: "AFS Motion"
state_topic: BlueIris/AFS/MOTION
payload_on: "ON"
payload_off: "OFF"
device_class: motion
- platform: mqtt
name: "AFN Motion"
state_topic: BlueIris/AFN/MOTION
payload_on: "ON"
payload_off: "OFF"
device_class: motion
- platform: mqtt
name: "FOS Motion"
state_topic: BlueIris/FOS/MOTION
payload_on: "ON"
payload_off: "OFF"
device_class: motion
- platform: mqtt
name: "BYC Motion"
state_topic: BlueIris/BYC/MOTION
payload_on: "ON"
payload_off: "OFF"
device_class: motion
```
**Traceback (if applicable):**
```
None - see logs below.
```
**Additional information:**
I've been receiving 403: Forbidden every so often on my iOS app for a few months now. However now I'm getting it on the front-end as well. I turned on logging for http.ban, and have caught the following messages.
```
2019-07-16 11:36:45 WARNING (MainThread) [homeassistant.components.http.ban] Login attempt or request with invalid authentication from 147.31.153.207
2019-07-16 11:36:45 WARNING (MainThread) [homeassistant.components.http.ban] Login attempt or request with invalid authentication from 147.31.153.207
2019-07-16 11:36:45 WARNING (MainThread) [homeassistant.components.http.ban] Login attempt or request with invalid authentication from 147.31.153.207
2019-07-16 11:36:45 WARNING (MainThread) [homeassistant.components.http.ban] Login attempt or request with invalid authentication from 147.31.153.207
2019-07-16 11:36:45 WARNING (MainThread) [homeassistant.components.http.ban] Login attempt or request with invalid authentication from 147.31.153.207
2019-07-16 11:36:45 WARNING (MainThread) [homeassistant.components.http.ban] Banned IP 147.31.153.207 for too many login attempts
```
When I check my Nginx access log, I see the following for the same exact time-stamp.
```
147.31.153.207 - - [16/Jul/2019:11:36:45 -0400] "GET /api/camera_proxy_stream/camera.afn?token=19c83abfeed9fbba6dcf9c1c75b4569255540839f033485a0ec026dbc3c9a776 HTTP/1.1" 401 17 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
147.31.153.207 - - [16/Jul/2019:11:36:45 -0400] "GET /api/camera_proxy_stream/camera.byc?token=14dc7ab1a05d81d94d187c04190bb25ef94aecb68946e2edc1aaa3a411894924 HTTP/1.1" 401 17 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
147.31.153.207 - - [16/Jul/2019:11:36:45 -0400] "GET /api/camera_proxy_stream/camera.afs?token=955dcd937721374be2a9a09be2ee628d630aaf46096ac2dc7b72129108590e0a HTTP/1.1" 401 17 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
147.31.153.207 - - [16/Jul/2019:11:36:45 -0400] "GET /api/camera_proxy_stream/camera.fos?token=5ab4ad6f8b8f4da484cc36e29d73586ce740cf7c0a71092d1ab7129d01a31813 HTTP/1.1" 401 17 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
147.31.153.207 - - [16/Jul/2019:11:36:45 -0400] "GET /api/camera_proxy_stream/camera.ktn?token=4370a366cced1298422cfb33b70bfb0f84a5cfe6e597ac8eb63f46e94010f32b HTTP/1.1" 401 17 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
147.31.153.207 - - [16/Jul/2019:11:36:45 -0400] "GET /api/camera_proxy_stream/camera.ktn?token=c705f114fbde39ab546ddc67c03e85ffcca3c4f14876f7e33f7aae53960f86a5 HTTP/1.1" 403 14 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
147.31.153.207 - - [16/Jul/2019:11:36:45 -0400] "GET /api/camera_proxy_stream/camera.fos?token=1c74811ff1f36e592c7992b300e019e657614232b452b79ebf2669aa071d19c2 HTTP/1.1" 403 14 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
147.31.153.207 - - [16/Jul/2019:11:36:45 -0400] "GET /api/camera_proxy_stream/camera.afn?token=57468d8c460f98642e9889fcd37b177a7f4cbf97f93e687dc07ba7bf5091624f HTTP/1.1" 403 14 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
147.31.153.207 - - [16/Jul/2019:11:36:45 -0400] "GET /api/camera_proxy_stream/camera.afs?token=bd3487cc8685463aaf636efdac36e2f14eb5455cf88f83a94f75e2c30981d8f4 HTTP/1.1" 403 14 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
```
I went to clear my ip_bans.yaml file, and saw another entry.
```
174.201.14.16:
banned_at: '2019-07-15T00:32:11'
147.31.153.207:
banned_at: '2019-07-16T15:36:45'
```
Checking the Nginx log again, I see similar access logs (accounting for -4 hours):
```
174.201.14.16 - - [14/Jul/2019:20:32:11 -0400] "POST /auth/token HTTP/1.1" 200 214 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (iPhone; CPU iPhone OS 12_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
174.201.14.16 - - [14/Jul/2019:20:32:11 -0400] "GET /lovelace/undefined HTTP/1.1" 200 1346 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (iPhone; CPU iPhone OS 12_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
174.201.14.16 - - [14/Jul/2019:20:32:11 -0400] "GET /api/camera_proxy_stream/camera.afs?token=18e7321f3755bb211a3671f635e8b69cdfa5e40196ed048894ec4d1e5d736261 HTTP/1.1" 401 17 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (iPhone; CPU iPhone OS 12_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
174.201.14.16 - - [14/Jul/2019:20:32:11 -0400] "GET /api/camera_proxy_stream/camera.fos?token=3c02c2deec7e454df4df353dffcb8ae8053e225ee1dad9f96f9c46935ccd3b73 HTTP/1.1" 401 17 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (iPhone; CPU iPhone OS 12_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
174.201.14.16 - - [14/Jul/2019:20:32:11 -0400] "GET /api/camera_proxy_stream/camera.ktn?token=7b3d7d7dfe62135fba29f19b66f189eeb68825720342cefb7e3d68e34e2ac973 HTTP/1.1" 401 17 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (iPhone; CPU iPhone OS 12_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
174.201.14.16 - - [14/Jul/2019:20:32:11 -0400] "GET /api/camera_proxy_stream/camera.byc?token=ad7da3a87304461b395d84746728771cf59f5bc569840408c3356ab52cb8d4ec HTTP/1.1" 401 17 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (iPhone; CPU iPhone OS 12_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
174.201.14.16 - - [14/Jul/2019:20:32:11 -0400] "GET /api/camera_proxy_stream/camera.afn?token=5b0d3dc2e7b079104ecd02c0a1ac7c529e3b95897d6881ecc1eac7c1d5876934 HTTP/1.1" 401 17 "https://ha.stratotally.duckdns.org/lovelace/default_view" "Mozilla/5.0 (iPhone; CPU iPhone OS 12_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
```
As you can see, the instances above are from my Mac (using Chrome), and then from my phone. Timestamp-wise they occurred in the opposite order.
I believe what is happening is that my front end is making too many failed API calls, which result in a ban?
I am using the "live" picture card with the mjpeg component. Sample Lovelace card config here:
```
camera_view: live
entity: camera.byc
type: picture-entity
```
I also have all my cameras on my home tab (first tab loaded), in addition to a second tab that is cameras only. Perhaps having multiple cards referencing the same cameras is what is causing the issue?
L’intégration « caméra » génère toutes les 5 minutes un token d’authentification dédié aux flux caméra et parfois dans certaines conditions d’utilisation le refresh ne se fait pas correctement.
Dans ces cas là l’app ou le web browser tente d’utiliser un token « périmé » et on prend un « 401 » :
Si tu veux reproduire ça depuis ton pc :
Afficher le dashboard HA contenant les flux caméra.
Aller sur un onglet du dashboard ne contenant pas ces flux, y rester au moins 10 minutes.
Revenir sur le premier dashboard.
Après cette manip il y’a de grande chance que tu obtiennes une notif « login attempt failed ».
Perso j’ai ce comportement sur mes 2 caméras intégrées en mode « MJPEG CAMERA » et un pote a exactement la même chose en utilisant frigate.
Bref ça peut être une piste à creuser pour toi
1 « J'aime »
Intéressant je ferai le test de mon côté car ma config différe un peu et j’ai jamais constaté ce souci.
Les flux des caméras sur le dashboard sont issues de l’intégration onvif et j’ai mis le proxy frigate (car moteur déporté)
Ah mais c’est clairement ça ! Enfin je n’ai pas encore pris le temps de tester ta manip @Herbs , mais ça correspond.
Avant Frigate, j’utilisais le flux onvif de ma caméra directement, mais je n’avais jamais de problème. J’ai l’impression de voir ce problème depuis mon passage sous Frigate.
J’utilise le widget frigate (j’ai oublié son nom, mais celui qu’on voit partout avec les bulles).
J’ai aussi le Proxy car Frigate est déporté dans un container sur mon NAS.
@Pulpy-Luke , ça expliquerait pourquoi tu n’as pas eu de problème… Humm. Donc toi, tu as mis un simple widget media avec comme source le flux onvif de ta caméra. C’est possible d’ouvrir le Proxy Frigate quand on clique dessus ?
J’ai mes flux vidéos dans carte qui permet d’avoir les actions onvif (j’avais partagé le code ici). En complément les captures d’événements frigate mqtt (sous forme d’image)
Et à côté mon menu frigate qui permet effectivement de l’ouvrir
Herbs
Avril 22, 2022, 7:50
10
Je partage un gif pour que la manip soit plus clairement décrite :
Donc dans mon onglet « home » j’ai mes 2 cards « picture-entity » avec mes 2 caméras.
Donc pour avoir une chance de prendre ce 401, d’abord visualiser « home » ensuite je vais dans n’importe quel autre onglet (ici mon onglet « energy ») j’y reste plus de 10 minutes et enfin je reviens sur « home ».
Entre temps ne rien faire d’autre avec son navigateur.
Et là très souvent " login attempt failed"
J’ai essayé plusieurs choses, creusé côté reverse-proxy, j’ai bien trouvé une solution à base de « token longue durée » et de modif du vhost nginx, mais ça ouvre une fail de sécurité.
Donc pour le moment je guète une éventuelle résolution de l’issue github que j’ai partagé plus haut.
Après plusieurs test, je ne le reproduis pas… enfin il se reproduit de temps en temps. Mais incapable d’avoir une procédure à 100%. j’ai testé ton cas @Herbs , mais je ne l’ai pas.
Je ne reproduis pas sur Edge, uniquement sur l’appli…
J’ai essayé récement de supprimer ma carte Frigate Camera, pour la remplacer par une simple picture-entity, mais j’ai toujours le probleme. Ca vient peut etre d’autre chose… Difficile d’avoir plus d’info
Herbs
Avril 26, 2022, 2:15
12
Utilises-tu un reverse proxy ?
Si oui peut-être aller jeter un œil aux logs d’accès et voir l’url qui déclenche le 401 ?