Skip to main content

the avatar of openSUSE News

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.

Leap Release Party outdoors at GOLEM

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!

Leap Release Party outdoors at GOLEM Leap Release Party outdoors at GOLEM

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

the avatar of Nathan Wolf
the avatar of Ish Sookun

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! 👍

a silhouette of a person's head and shoulders, used as a default avatar

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

a silhouette of a person's head and shoulders, used as a default avatar

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

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

the avatar of Nathan Wolf

a silhouette of a person's head and shoulders, used as a default avatar

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.

Disponible el decimoctavo número de la revista digital SoloLinux

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

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.

the avatar of Chun-Hung sakana Huang

三大雲平台工具容器升級小記 - 使用 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 內容如下


# 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:

the avatar of Nathan Wolf

LG 29″ UltraWide | Monitor Upgrade and Configuration on Linux

I have historically made my hardware decisions based on price, generally I get what I can get for as low or as reasonable as possible. Basically, I go for free or near-free and fabri-cobble something together. After seeing some other computer setups, I have really thought that I want to be able to function more … Continue reading LG 29″ UltraWide | Monitor Upgrade and Configuration on Linux
the avatar of Chun-Hung sakana Huang

使用 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 版本


# 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 -chttp://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: