Leap 15.2 Install party @ GOLEM - A quick report
Italian Linux users did an openSUSE Leap 15.2 Launch Party, at the local LUG (it’s called GOLEM, it’s in a small town in central Italy), and Dario Faggioli made a quick report.
We have space outside, so we could do an actual physical event and still respect the social distancing restrictions which are continue to hold here in Italy.

First of all, this meant that I could bring and distribute the super- awesome swags that Doug sent me. And I really want to thank him a lot one more time for shipping them over extremely quickly. They are great and people loved them!

Ah, the event was also recorded, but they still have to let me know whether that worked well or not.
I decided to do a live install as I think our installer is great, and wanted to show it off a bit. :-) In fact, I’ve heard a few times people saying that installing openSUSE is difficult, and I wanted to give it a shot to busting that myth.
I showed how it is possible to install the distro with just a few clicks, which is the opposite of difficult. After that, I went back and explained all the various possible customizations that one can make – but only if she wants to– at each stage.
Feedback on this was extremely good, and I think I’m going to reuse this same approach for other similar occasions.
While the installer was copying packages, there was the time to talk a bit about the characteristics of Leap such as its goals, release cycle, development process, relationship with SLE, etc.
I quickly mentioned the maintenance process, taking advantage of some slides kindly provided by Marina (thanks to you again as well!), and this also was perceived as very interesting.
After the system was ready, I had the time to showcase YaST a little, to explain how to add Packman repos for the codecs and to introduce BTRFS snapshots, snapper and demo a reboot into a previous snapshot and the rollback.
I managed to hint quickly at OBS, but there was only the time to mention OpenQA, and I couldn’t give them a meaningful tour of these two.
People where curious and interested, so I call the event a success.
They asked questions mainly about YaST, BTRFS and zypper. Plus two more, rather specific ones: 1) Why don’t we ship/install multimedia codec by default (even the proprietary and patent encumbered ones), like Ubuntu and even Debian? 2) Why don’t we use an LTS kernel for Leap?
Just to be clear, I’m not actually asking the questions here. :-)
I just felt it would be useful to report this, especially considering that I hear these being asked pretty often, during various events or in various channels or forums.
Anyways, I honestly think the event was a good one, considering that we’re a small LUG from a small place and that we’re still elbow deep inside a pandemic. :-/
And we’re already planning a similar event about Tumbleweed! Not a release party, probably… or maybe yes: I just have to make it coincide with the publishing of a TW snapshot, which should not be too difficult after all. :-P
Turn off Monitor using CLI
Candidates list for the openSUSE Ad-hoc Board Election
The Call for Nominations for the openSUSE Ad-hoc Board Election ended last night. The Election Committee received the nominations of two openSUSE members and both nominees accepted to run as candidate for this election.
The names of the candidates are:
The announcement was made on the project mailing list by Ariez Vachha on behalf of the Election Committee.
As from today the election campaign begins. Electronic vote will begin on the 17th of August and ballots will close on the 30th of August.
All the best to both candidates! 👍
Comparte las estadísticas de uso del editor Kate con sus desarrolladores
Para colaborar y hacer mejor el editor Kate de la comunidad KDE podemos habilitar la telemetría y compartir nuestro uso del editor

Sí desde hace tiempo, vengo utilizando Vim como editor de texto, por su disponibilidad en muchos sistemas GNU/Linux, y por su potencia.
Pero sin duda la otra opción que más utilizo es el editor Kate (KDE Advanced Text Editor) de la comunidad KDE. Un editor que va mejorando en cada versión y que también es una potente herramienta de edición de textos.
Si tu también utilizas este editor de texto, ahora tienes la oportunidad de mejorarlo. Sí, no es necesario que sepas programar, que mejores su traducción, que envíes parches o abras “issues”.
Ahora cualquier persona que utilice el editor Kate puede ayudar a los desarrolladores a mejorar esta herramienta, aportando datos de cómo lo utilizamos, cuanto lo utilizamos y los sistemas en los que lo utilizamos.
Para ello deberemos activar de manera voluntaria la telemetría, que recopila esos datos de manera anónima y envía los datos al equipo de desarrolladores de KDE para tratar de conocer mejor la manera en que se usa Kate y así mejorarlo.
Repito que la telemetría viene desactivada de manera predeterminada, y deberemos activarla si queremos participar. También recalco que los datos son completamente anónimos y no se comparten con terceras partes.
Como yo confío en la comunidad KDE, he decidido activar esa recopilación de datos y participar. Si tu también quieres hacerlo y tienes Kate en su versión 20.04, ve a:
Preferencias → Configurar Kate → Comentarios y sugerencias del usuario
Ahí tendremos dos opciones. La primera una en la que podremos configurar si participar con las estadísticas de uso de Kate. Y podremos seleccionar entre 4 niveles, para seleccionar cuantos datos queremos compartir con la comunidad.
Además en la misma sección podremos elegir si queremos participar en las encuestas del equipo de Kate y la frecuencia en la que queremos participar.
Con este sencillo gesto, sin necesidad de saber programar, simplemente con nuestro uso diario del editor Kate podremos ayudar en el desarrollo de esta gran herramienta.
Yo por mi parte ya he habilitado estas opciones. Y ya han compartido los datos recavados hasta agosto de 2020. ¿Quieres tu también ayudar a los desarrolladores de KDE y de Kate en particular?
Enlaces de interés
- https://kate-editor.org/
- https://kate-editor.org/post/2020/2020-02-09-kate-telemetry/
- https://kate-editor.org/post/2020/2020-08-02-kate-user-feedback/

Karla Pérez en Podcast Linux #109
No comparto todos los programas de los podcast de Juan Febles pero si me gusta, de vez en cuando, recordar a mis lectores su existencia. No obstante esta vez me apetecía ya que el protagonista es Karla Pérez una youtuber que se está teniendo éxito divulgando las bondades de los sistema libres en su canal Karla’s Project,
Karla Pérez en Podcast Linux #109

En esta ocasión tampoco tengo en gusto de conocer a Karla Pérez en persona, pero si es cierto que tengo algún que otro contacto virtual por Twitter o Telegram.
Con un estilo inconfundible, Karla habla en su canal de Youtube de un buen abanico de temas que van desde GNU/Linux a sistemas cerrados como Windows o Mac. Si queréis más información de ella te invito a que leas el artículo que dediqué a Karla’s Project hace un tiempo.
A lo largo del programa Karla nos habla de sus inicios, de sus distribuciones GNU/Linux (spoiler: KDE Neon es su favorita), las aplicaciones libre y privativas que utiliza y un largo etcétera.
En palabras del presentador y creador del podcast:
«¡¡¡Muy buenas amante del Software Libre!!! Bienvenido a otra entrega de Podcast Linux, la número 109. Un saludo muy fuerte de quien te habla, Juan Febles. Estamos con Karla Pérez, youtuber y bloguera detrás de Karla´s Proyect. Difunde GNU/Linux a través de reviews de distros y tutoriales para acercar el Software Libre a quien quiera conocerlo.
Recordar a los oyentes que estamos en una sala Jitsi para esta charla, un servicio libre para videoconferencias, y que este podcast aloja su web en Gitlab, un servicio libre de repositorios git y su contenido en Archive.org, la biblioteca digital libre con licencias Creative Commons.»
Como siempre, os dejo los audios para que los podáis escuchar y disfrutar de este programa de una hora de duración.
Más información: Podcast Linux
No quiero terminar el artículo son compartir los enlaces de interés de Karla:
Blog: https://karlaperezyt.com/
Youtube: https://www.youtube.com/KarlasProject
Twitter: http://twitter.com/KarlaPerezYT
Y aprovecho para animaros a seguir Podcast Linux en algunos de los canales de comunicación que tiene, los cuales han cambiado debido a que Podcast Linux ha abandona e
- Twitter: https://twitter.com/podcastlinux
- Mastodon: https://mastodon.social/@podcastlinux/
- Correo: podcastlinux@disroot.org
- Web: https://podcastlinux.com/
- Telegram: https://t.me/podcastlinux
- Telegram Juan Febles: https://t.me/juanfebles
- Youtube: https://www.youtube.com/PodcastLinux
- Feed Podcast Linux: https://podcastlinux.com/feed
- Feed Linux Express (Audios Telegram): https://podcastlinux.com/Linux-Express/feed
Tmux Desktop on openSUSE Linux
Disponible el decimoctavo número de la revista digital SoloLinux, con sorteo incluido
Estos días tan calurosos del hemisferio norte apetece mucho no salir de casa e invertir mucho tiempo leyendo. Es por ello que es una gran noticia comentar que ya está disponible el decimoctavo número de la revista digital SoloLinux, la cual podéis leer online o descargar para poder disfrutara si en vuestro lugar de vacaciones tenéis una conexión de internet limitada.
Disponible el decimoctavo número de la revista digital SoloLinux
Hubo un tiempo en que las revistas sobre Linux digitales estuvieron de moda en el blog. Tenemos todavía a Atix, que continua con sus publicaciones (lo cual me alegra) y Full Circle Magazine (en inglés, gracias Vampiro Nocturno), y antes teníamos a Linux+, Papirux, Begins o TuxInfo, por citar algunas discontinuadas.
Desde hace un tiempo una revista digital SoloLinux tiene su entrada mensual en el blog, tener todas las alternativas posibles para compartir conocimiento es algo que caracteriza al Conocimiento Libre. Además, este mes viene con sorteo de un VPS.

En palabras de los creadores de la revista:
«Ya estamos aquí… ¿pensabas que nos olvidamos de la revista?, pues no, todo lo contrario. Como sabemos que nuestros lectores son muchos y, más aún si sumamos la totalidad de países que estamos unidos por un idioma común. En SoloLinux hemos decidido hacer un sorteo. Si un sorteo.
Queremos dar las gracias a todos por seguirnos y, solicitar paciencia para los que aún se mantienen confinados por el Covid.
Para participar en el sorteo tan solo debes dejar un comentario en este artículo. El ganador se publicará en la revista del mes que viene, pero nos pondremos en contacto con el ganador un día antes. El sorteo se cerrará el día 29 de agosto (si no respondes en 12 horas se sorteará de nuevo).
El afortunado podrá elegir entre estas dos opciones de VPS. Uno durante un mes, otro durante 3 meses. Aclaro que este sorteo no está patrocinado por ninguna empresa, es particular de Revista Sololinux N18.
Más información: Revista Sololinux N18
Así que, ya tenemos disponible el decimoctavo número de la revistas digital SoloLinux, el cual llega cargado de contenidos y con el siguiente índice.
|
MANUALES Instalar LosslessCut en linux – Recortar videos fácilmente Como actualizar a Linux Mint 20 Ulyana Convertir Ubuntu 20 Desktop en Ubuntu rolling Cómo habilitar el usuario root en Ubuntu Como hacer una revista digital con LibreOffice Impress Crear un escritorio remoto por ssh en un servidor linux Como usar el comando shutdown con ejemplos Instalar un servidor Lamp en CentOS 8 fácilmente Instalar phpMyAdmin en CentOS 8 con Lamp Como desinstalar VestaCP sin dejar rastro Buscar la ruta de un paquete instalado en CentOS Instalar la última versión de nano en linux Contar palabras, líneas y caracteres con el comando wc Como ejecutar php y perl en línea de comandos Solucionar el error login loop en Ubuntu Cómo identificar el tamaño de directorios en linux Instalar Kodi Media Center 18.8 – Nueva versión Uso del gestor pacman en Arch Linux – Comandos básicos SOFTWARE Instalar Puddletag en Ubuntu 20.04 y no morir en el intento Instalar AzPainter en Ubuntu 20.04 y derivados HARDWARE Drivers para impresoras Canon, Epson, Lexmark, Sony, etc.. Diferencias entre Backup y Replication |
NOTICIAS Los mejores blogs de Linux en español – Encuesta de tictac Debian 8 Jessie dice adiós – Se acaba su soporte Qué es el software Open Source ¿Es Linux Mint la mejor distribución para comenzar en Linux? SEGURIDAD Hacer una copia de seguridad y restaurarla con timeshift DESARROLLO WEB Crear marcos con Gimp en Linux Agregar soporte WebP en Gimp – En nuestro linux Implantar la seguridad HSTS con htaccess REDES Wavemon – El monitor Wifi en tiempo real DISTROS LINUX OpenSUSE Leap 15.2 – Listo para su descarga Ubuntu no tiene versión de 32 bits – Ahora que hacemos Diferencias entre Ubuntu Desktop y Ubuntu server Como convertir Ubuntu Server en Ubuntu Desktop Open Suse 15.2 – Mi opinión personal JUEGOS El juego de estrategia Warzone 2100 tiene nueva versión Instalar PPSSPP – El emulador de PSP en Ubuntu ENTREVISTAS Entrevista a Joaquín Decima administrador de patoJAD Entrevista a Pedro Crespo administrador de LatinLinux OPINIÓN Carta de Jordi ORTS a SOLOLINUX Experiencia de Edison Balvin S. con GNU LINUX y Soft. Libre |
La revista puede ser descargada o simplemente visualizarla en línea, ya que se cuelga en diferente servicios como Calameo. A continuación os dejo los enlaces de descarga y visualización directa de los cuatro primeros números.
Además, recordar que desde el número anterior se ha abierto el canal oficial sololinux.es de Telegram: https://t.me/sololinux_es
Descarga:
Visualización directa:
Evidentemente, este proyecto no se centra en exclusivo a los contenidos de su web y está abierto a colaboraciones de todo tipo. De esta forma si estas interesado en insertar publicidad en nuestra revista, o quieres que publiquemos algún articulo que hayas escrito tu mismo, puedes contactar con «Adrián» por correo electrónico: adrian @ sololinux. com
Muchos ánimos en este nuevo proyecto ya que facilita la difusión del Software Libre de una forma que ya no es tan habitual en estos tiempos pero que es igual de válida.
三大雲平台工具容器升級小記 - 使用 openSUSE Leap 15.2 Container
三大雲平台工具容器升級小記 - 使用 openSUSE Leap 15.2 Container
OS: container with openSUSE Leap 15.2
上次升級是 2020/5/31 , 這次會來升級的原因是
使用 openSUSE Leap 15.2
升級 gcloud 版本
升級 azure-cli 版本
升級 aws cli 版本
先整理結果
升級前
OS: openSUSE Leap 15.1
awscli: aws-cli/2.0.17 Python/3.7.3
gcloud: Google Cloud SDK 290.0.1
azure-cli: 2.6.0
升級後
OS: openSUSE Leap 15.2
awscli: aws-cli/2.0.36 Python/3.7.3
gcloud: Google Cloud SDK 303.0.0
azure-cli: 2.9.1
AWS CLI v2 安裝文件
GCP Cloud SDK 版本
這次的做法還是會透過 docker build 指令來進行
我有比較過 docker build 以及使用現有的 docker image 修改後再使用 docker commit 建立的 image 大小還是很有差異的
Dockerfile 的部分我是拿之前 openSUSE Leap 15.1 來修改
修改細節
Update time
使用 openSUSE Leap 15.2
修改 pip3 安裝 boto 而非 boto3
Google SDK 版本還有下載的檔案路徑以及檔案名稱
列出 diff 的結果給大家參考
> diff opensuseLeap152_ansible_20200802_Dockerfile opensuseLeap151_ansible_20200531_Dockerfile
1,2c1,2
< # openSUSE Leap 15.2 with ansible, azure-cli, aws cli, gcloud
< FROM opensuse/leap:15.2
---
> # openSUSE Leap 15.1 with ansible, azure-cli
> FROM opensuse/leap:15.1
6c6
< # update: 20200802
---
> # update: 20200509
12c12
< # Install python3-pip, upgrade pip, ansible[azure], boto
---
> # Install python3-pip, upgrade pip, ansible[azure], boto3
16c16
< pip3 install boto
---
> pip3 install boto3
64c64
< # Install google cloud SDK 303.0.0
---
> # Install google cloud SDK 290.0.1
66,67c66,67
< RUN wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-303.0.0-linux-x86_64.tar.gz && \
< tar zxvf google-cloud-sdk-303.0.0-linux-x86_64.tar.gz && \
---
> RUN wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-290.0.1-linux-x86_64.tar.gz && \
> tar zxvf google-cloud-sdk-290.0.1-linux-x86_64.tar.gz && \
Dockerfile 內容如下
我檔案的名稱取名爲 opensuseLeap152_ansible_20200802_Dockerfile
# openSUSE Leap 15.2 with ansible, azure-cli, aws cli, gcloud
FROM opensuse/leap:15.2
# Author
# MAINTAINER 已經棄用, 之後要使用 LABEL 方式
# update: 20200802
LABEL maintainer="sakana@cycu.org.tw"
# Set LANG for UTF-8 - for Chinese
ENV LANG C.UTF-8
# Install python3-pip, upgrade pip, ansible[azure], boto
RUN zypper install -y python3-pip && \
pip3 install --upgrade pip && \
pip3 install ansible[azure] && \
pip3 install boto
# Install openssh, set ls alias
RUN zypper install -y openssh
RUN echo "alias ls='ls --color=tty'" >> /root/.bashrc
# Install wget, download azure_rm.py, set permission
RUN zypper install -y wget
# azure_rm.py no need to download
# Starting with Ansible 2.8, Ansible provides an Azure dynamic-inventory plug-in
# https://docs.ansible.com/ansible/latest/plugins/inventory/azure_rm.html
# old azure_rm.py URL https://raw.githubusercontent.com/ansible/ansible/devel/contrib/inventory/azure_rm.py
#
# Create working directory in /root
RUN mkdir /root/.azure && \
mkdir /root/.aws && \
mkdir /root/playbook && \
mkdir -p /root/.config/gcloud && \
wget https://raw.githubusercontent.com/sakanamax/LearnAnsible/master/template/ansible.cfg && \
mv /ansible.cfg /root && \
wget https://raw.githubusercontent.com/sakanamax/LearnAnsible/master/template/hosts && \
mv /hosts /root
#### Azure ####
# Install azure-cli
RUN zypper install -y curl && \
rpm --import https://packages.microsoft.com/keys/microsoft.asc && \
zypper addrepo --name 'Azure CLI' --check https://packages.microsoft.com/yumrepos/azure-cli azure-cli && \
zypper install --from azure-cli -y azure-cli
#install vim tar gzip jq unzip less bind-utils iputils groff
RUN zypper install -y vim tar gzip jq unzip less bind-utils iputils groff
RUN echo "set encoding=utf8" > /root/.vimrc
#### AWS ####
# Install awscli v1
#RUN pip3 install awscli
#RUN echo "source /usr/bin/aws_bash_completer" >> /root/.bashrc
# Install awscli v2
RUN curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" && \
unzip awscliv2.zip && \
/aws/install
RUN echo "complete -C '/usr/local/bin/aws_completer' aws" >> /root/.bashrc
#### GCP ####
# Install google cloud SDK 303.0.0
ENV CLOUDSDK_CORE_DISABLE_PROMPTS 1
RUN wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-303.0.0-linux-x86_64.tar.gz && \
tar zxvf google-cloud-sdk-303.0.0-linux-x86_64.tar.gz && \
/google-cloud-sdk/install.sh && \
echo "if [ -f '/google-cloud-sdk/path.bash.inc' ]; then . '/google-cloud-sdk/path.bash.inc'; fi" >> /root/.bashrc && \
echo "if [ -f '/google-cloud-sdk/completion.bash.inc' ]; then . '/google-cloud-sdk/completion.bash.inc'; fi" >> /root/.bashrc
使用 docker build 指令建立 image
> docker build -t sakana/ansible_opensuse152:20200802 -f ./opensuseLeap152_ansible_20200802_Dockerfile .
使用 -f 指定 Dockerfile 名稱
最後是 ” . “ 目前的目錄
測試 container image
> docker run -v ~/.aws:/root/.aws -v ~/.azure:/root/.azure -v ~/.config/gcloud:/root/.config/gcloud -it sakana/ansible_opensuse152:20200802 /bin/bash
測試結果 OK, 建立 tag
觀察資訊
> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
sakana/ansible_opensuse152 20200802 d1bb9da2d2e1 14 seconds ago 1.66GB
opensuse/leap 15.2 b02baf32bb00 4 days ago 105MB
sakana/ansible_opensuse151 latest 0fcb15bb33a0 2 months ago 1.78GB
建立 tag
> docker tag d1bb9da2d2e1 sakana/ansible_opensuse152:latest
登入 docker
> docker login
上傳 image
> docker push sakana/ansible_opensuse152:20200802
> docker push sakana/ansible_opensuse152:latest
完工, 以後使用就用
> docker run -v ~/.aws:/root/.aws -v ~/.azure:/root/.azure -v ~/.config/gcloud:/root/.config/gcloud -it sakana/ansible_opensuse152 /bin/bash
~ enjoy it
Reference:
https://sakananote2.blogspot.com/2020/05/aws-cli-v2-with-opensuse-leap-151.html
http://sakananote2.blogspot.com/2020/01/python-3-with-opensuse-leap-151.html
http://sakananote2.blogspot.com/2019/07/with-opensuse-leap-15-container.html
http://sakananote2.blogspot.com/2019/05/ansible-azure-cli-awscli-gcloud-with.html
http://sakananote2.blogspot.com/2019/11/with-opensuse-leap-151-container.html
LG 29″ UltraWide | Monitor Upgrade and Configuration on Linux
使用 AWS WAF v2 Web ACL 限制存取小記
使用 AWS WAF v2 Web ACL 限制存取小記
有時候在業務上會碰到一些超量存取的狀況,
所以今天要來測試 AWS WAF v2 Web ACL 來限制存取
情境:
使用 AWS Web ACL 對 ALB 限制存取超過一定門檻的行為
建立 ELB 以及 EC2
參考之前的筆記來建立
這邊有變化的大概就是目前 openSUSE Leap 已經出道 15.2
所以這次是使用 openSUSE Leap 15.2
查詢 image id 方式
# aws ec2 describe-images --filters "Name=name,Values=openSUSE-Leap-15.2*"
但是也是碰到找到的 image id 要先接受協議而無法非互動安裝
所以最快的方式就是先用 console 裝一個然後看他的 image id :)
我是用 ansible playbook 的方式建立 2 台 EC2
指派 default 與 ssh 的 security group
根據得到的 IP 進行連線測試
> ssh -i test-key.pem ec2-user@18.223.195.175
連入 2 台 openSUSE Leap 15.2 安裝 apache 並啟動服務, 編輯基本網頁, 建立 port 80 的 security Group, 確認可以存取
使用參考筆記的指令
建立 Load Balancer , 可以觀察 Type : application ( 所以是 ALB )
建立 Target Group, 建立 listener , 讓 ALB 可以存取到後端的 2 台 openSUSE Leap
確認 ALB 可以順利存取後端的服務
好的, 現在終於要進入本番角色 WAF 了 :)
在 AWS console 搜尋 WAF 服務, 登入 WAF 主控台
點選 Create web ACL
選取 Region
輸入 名稱
點選 Next
在 Rules: 點選 Add rules
點選 Add my own rules and rule groups
預設的 Rule type 爲 Rule builder
輸入 名稱
Type: 選取 Rate-based rule
Rate limit: 輸入要設定的門檻, 這邊輸入 1000 (1000 / 5 mins)
Action : Block
點選 Add rule
確認規則建立
點選 Next
點選 Next ( 如果沒有調整 )
點選 Next
確認相關資訊
點選 Create web ACL
接下來要來套用 WAF 到剛剛建立的 LB
點選剛剛建立的 Web ACL
點選 Associated AWS resources
點選 Add AWS resources
點選 Resource type: Application Load Balancer
選取剛剛建立的 ELB
點選 Add
觀察資訊
這樣就建立完成
接下來進行驗證, 我在外部使用 ab 指令 來進行測試
參考之前文章安裝 ab 指令 http://sakananote2.blogspot.com/2019/10/ab-apache-http-server-benchmarking-tool.html
節錄指令如下 # zypper install apache2-utils
確認 ab 版本
# ab -V
This is ApacheBench, Version 2.3 <$Revision: 1826891 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
使用 ab 指令 打LB 900次
# ab -n 900 -c 1 http://test-elb-757822458.us-east-2.elb.amazonaws.com/index.html
This is ApacheBench, Version 2.3 <$Revision: 1826891 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking test-elb-757822458.us-east-2.elb.amazonaws.com (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests
Completed 800 requests
Completed 900 requests
Finished 900 requests
打完之後測試是否可以存取
# curl http://test-elb-757822458.us-east-2.elb.amazonaws.com/index.html
<html>This is site 2 </html>
因為沒有超過門檻 1000 / 5 mins 所以沒有問題
接下來打 1100 次
# ab -n 1100 -c 8 http://test-elb-757822458.us-east-2.elb.amazonaws.com/index.html
This is ApacheBench, Version 2.3 <$Revision: 1826891 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking test-elb-757822458.us-east-2.elb.amazonaws.com (be patient)
Completed 110 requests
Completed 220 requests
Completed 330 requests
Completed 440 requests
Completed 550 requests
Completed 660 requests
Completed 770 requests
Completed 880 requests
Completed 990 requests
Completed 1100 requests
Finished 1100 requests
再次測試存取
# curl http://test-elb-757822458.us-east-2.elb.amazonaws.com/index.html
<html>
<head><title>403 Forbidden</title></head>
<body bgcolor="white">
<center><h1>403 Forbidden</h1></center>
</body>
</html>
這邊就會觀察到, 目前無法進行存取
同場加映: 使用 IP sets 建立白名單, 允許連線
點選 WAF 控制台的 IP sets
點選 Create IP set
輸入名稱與 IP address
點選 Create IP set
點選剛剛建立的 Web ACL
點選 Rules
點選 Add rules
點選 Add my own rules and rule groups
Rule type: 選取 IP set
輸入名稱
選取剛剛建立的 IP set
Action: 點選 Allow
點選 Add rule
將 白名單的規則 priority 向上調整
點選 Save
再次以 ab 指令進行測試, 這次就會發現不會被 WAF 阻擋了
同場加映: 用 aws 指令列出 Web ACL 內容以及目前被阻擋的 IP
列出 WAF 在單一 region 的 web acl
# aws wafv2 list-web-acls --scope REGIONAL --region us-east-2 --profile default
{
"NextMarker": "test20200801",
"WebACLs": [
{
"Name": "test20200801",
"Id": "32f779c2-1c2b-4069-a625-b7d216802012",
"Description": "",
"LockToken": "34194f29-b629-4df3-b57c-f3d0f79e7619",
"ARN": "arn:aws:wafv2:us-east-2:783127631924:regional/webacl/test20200801/35e779c2-1c2b-4089-a615-b7d217801012"
}
]
}
這邊主要需要的資訊是 Name 與 Id
列出該 Web ACL 相關資訊
# aws wafv2 get-web-acl --scope REGIONAL --id 32f779c2-1c2b-4069-a625-b7d216802012 --name test20200801 --region us-east-2 --profile default
{
"WebACL": {
"Name": "test20200801",
"Id": "32f779c2-1c2b-4069-a625-b7d216802012",
"ARN": "arn:aws:wafv2:us-east-2:783127631924:regional/webacl/test20200801/35e779c2-1c2b-4089-a615-b7d217801012",
"DefaultAction": {
"Allow": {}
},
"Description": "",
"Rules": [
{
"Name": "test20200801",
"Priority": 0,
"Statement": {
"RateBasedStatement": {
"Limit": 1000,
"AggregateKeyType": "IP"
}
},
"Action": {
"Block": {}
},
"VisibilityConfig": {
"SampledRequestsEnabled": true,
"CloudWatchMetricsEnabled": true,
"MetricName": "test20200801"
}
}
],
"VisibilityConfig": {
"SampledRequestsEnabled": true,
"CloudWatchMetricsEnabled": true,
"MetricName": "test20200801"
},
"Capacity": 2,
"ManagedByFirewallManager": false
},
"LockToken": "34194f29-b629-4df3-b57c-f3d0f79e7619"
}
列出目前被阻擋的 IP
# aws wafv2 get-rate-based-statement-managed-keys --scope REGIONAL --region us-east-2 --web-acl-name test20200801 --web-acl-id 32f779c2-1c2b-4069-a625-b7d216802012 --rule-name test20200801 | jq '.ManagedKeysIPV4'
{
"IPAddressVersion": "IPV4",
"Addresses": [
"210.85.244.94/32"
]
}
這邊我使用 jq 來搭配過濾 IP v4 的部分, 原本會顯示 IPv4 與 IPv6
又前進了一步
~ enjoy it
Reference:
英明的同事文件
https://sakananote2.blogspot.com/2019/04/aws-elastic-load-balancing-with.html
https://sakananote2.blogspot.com/2019/04/aws-cli-opensuse-leap-15-in-aws-ec2.html
https://awscli.amazonaws.com/v2/documentation/api/latest/reference/wafv2/list-web-acls.html
http://sakananote2.blogspot.com/2019/10/ab-apache-http-server-benchmarking-tool.html