AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?
랜섬웨어 공격이 증가하고 있지만 AI가 최신 컴퓨터 바이러스를 처리하는 데 도움이 될 수 있습니까? AI가 답인가? AI boone 또는 bane인지 여기에서 읽으십시오.
Brotli (br) 는 Gzip, Zopfli 및 Deflate의 대안으로 Google에서 개발 한 새로운 오픈 소스 압축 알고리즘입니다. IETF (Internet Engineering Task Force)에서 RFC 7932 로 공식적으로 정의되어 있습니다. Brotli에 대한 Google의 사례 연구에 따르면 CPU 사용률이 낮아 현재 방법보다 압축률이 최대 26 % 더 작습니다.
Nginx는 공식 지원은 없지만 Google이 개발 한 타사 모듈 인 ngx_brotli 는 Nginx에 지원을 추가하는 데 사용할 수 있습니다.
이 가이드는 새로운 Ubuntu 18.04 LTS Vultr 인스턴스에서 Nginx에 Brotli 지원을 추가하는 방법을 보여줍니다.
참고 : 이 안내서는 johndoe
예제 사용자 및 example.com
예제 도메인으로 사용됩니다. 이름에 따라 교체하십시오.
A
/ AAAA
레코드가 설정된 도메인 이름우분투 버전을 확인하십시오.
lsb_release -ds
# Ubuntu 18.04 LTS
액세스 권한이 있는 새 non-root
사용자 계정을 sudo
만들고 전환하십시오.
adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe
참고 : 대체 johndoe
사용자 이름과 함께 .
운영 체제 소프트웨어를 업데이트하십시오.
sudo apt update && sudo apt upgrade -y
시간대를 설정하십시오.
sudo dpkg-reconfigure tzdata
필요한 빌드 도구 및 패키지를 설치하십시오.
sudo apt install -y build-essential git apt-transport-https socat
Brotli에서는 HTTPS를 설정하고 사용해야합니다. 이 부분에서는 Let 's Encrypt에서 신뢰할 수있는 인증서를받습니다.
Acme.sh를 다운로드하여 설치하십시오.
sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]
cd ~
source ~/.bashrc
버전을 확인하십시오.
acme.sh --version
# v2.8.0
에 대한 RSA 및 ECDSA 인증서를 얻습니다 example.com
.
# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --accountemail [email protected] --ocsp-must-staple --keylength 2048
# ECDSA/ECC P-256
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --accountemail [email protected] --ocsp-must-staple --keylength ec-256
위의 명령을 실행하면 인증서와 키가 다음 위치에 있습니다.
/etc/letsencrypt/example.com
/etc/letsencrypt/example.com_ecc
공식 Nginx 저장소에서 최신 기본 Nginx를 다운로드하여 설치하십시오.
wget https://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
rm nginx_signing.key
sudo -s
printf "deb https://nginx.org/packages/mainline/ubuntu/ `lsb_release -sc` nginx \ndeb-src https://nginx.org/packages/mainline/ubuntu/ `lsb_release -sc` nginx \n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt
버전을 확인하십시오.
sudo nginx -v
# nginx version: nginx/1.15.2
Nginx를 활성화하고 시작하십시오.
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
Nginx를 설치 한 후 Brotli 모듈 ( ngx_brotli
)을 동적 Nginx 모듈로 빌드해야 합니다. Nginx 버전 1.11.5부터는 완전한 Nginx 소프트웨어를 컴파일하지 않고도 개별 동적 모듈을 컴파일 할 수 있습니다. 다음 몇 단계에서는 완전한 Nginx를 컴파일하지 않고 Brotli 모듈을 동적으로 구축 할 것입니다.
메인 라인 Nginx 소스 코드의 최신 버전을 다운로드하여 추출하십시오.
wget https://nginx.org/download/nginx-1.15.2.tar.gz && tar zxvf nginx-1.15.2.tar.gz
참고 : Nginx 패키지와 Nginx 소스 코드의 버전 번호가 일치해야합니다. 공식 Nginx 저장소에서 Nginx 1.15.2를 설치 한 경우이 경우 동일한 버전의 소스 코드 1.15.2를 다운로드해야합니다 .
를 제거하십시오 nginx-1.15.2.tar.gz
.
rm nginx-1.15.2.tar.gz
ngx_brotli
GitHub에서 복제합니다 .
git clone https://github.com/eustas/ngx_brotli.git
cd ngx_brotli && git submodule update --init && cd ~
Nginx 소스 코드 디렉토리로 이동하십시오.
cd ~/nginx-1.15.2
필요한 라이브러리를 다운로드하십시오.
sudo apt install -y libpcre3 libpcre3-dev zlib1g zlib1g-dev openssl libssl-dev
ngx_brotli
동적 모듈로 컴파일하고 Nginx 모듈의 표준 디렉토리에 복사하십시오 /etc/nginx/modules
.
./configure --with-compat --add-dynamic-module=../ngx_brotli
make modules
sudo cp objs/*.so /etc/nginx/modules
목록에 파일 /etc/nginx/modules
당신이 볼 수 ngx_http_brotli_filter_module.so
와 ngx_http_brotli_static_module.so
.
ls /etc/nginx/modules
644
모든 .so
파일 에 대한 권한을 설정 하십시오.
sudo chmod 644 /etc/nginx/modules/*.so
Nginx에서 Brotli 지원을 구성 할 준비가되었습니다.
sudo vim /etc/nginx/nginx.conf
파일 맨 위에 다음 두 지시문을 실행 하고 추가하여 새 Brotli 모듈을로드하십시오.
load_module modules/ngx_http_brotli_filter_module.so;
load_module modules/ngx_http_brotli_static_module.so;
구성을 테스트하십시오.
sudo nginx -t
에 대한 문서 루트 디렉토리를 example.com
작성 index.html
하고 일부 컨텐츠로 작성 하십시오.
sudo mkdir -p /var/www/example.com
sudo -s
echo "Hello from example.com" >> /var/www/example.com/index.html
exit
의 가상 호스트를 만듭니다 example.com
.
sudo vim /etc/nginx/conf.d/example.com.conf
다음 구성으로 채 웁니다.
server {
listen 80;
server_name example.com; # Replace with your domain name
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
server_name example.com; # Replace with your domain name
root /var/www/example.com; # Replace with your document root
# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
# ECDSA
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;
brotli on;
brotli_static on;
brotli_types text/plain text/css text/javascript application/javascript text/xml application/xml image/svg+xml application/json;
}
구성을 테스트하십시오.
sudo nginx -t
Nginx를 다시로드하십시오.
sudo systemctl reload nginx.service
웹 브라우저에서 사이트를 방문하여 개발자 도구의 네트워크 탭을여십시오. 당신은 볼 것이다 Content-Encoding: br
응답 헤더. 이것이 Brotli 압축이 작동하고 있다는 표시입니다.
웹 서버에서 Brotli 압축을 활성화했습니다.
랜섬웨어 공격이 증가하고 있지만 AI가 최신 컴퓨터 바이러스를 처리하는 데 도움이 될 수 있습니까? AI가 답인가? AI boone 또는 bane인지 여기에서 읽으십시오.
오픈 소스이자 무료 운영 체제인 ReactOS가 최신 버전과 함께 제공됩니다. 현대 Windows 사용자의 요구 사항을 충족하고 Microsoft를 무너뜨릴 수 있습니까? 이 구식이지만 더 새로운 OS 환경에 대해 자세히 알아보겠습니다.
Whatsapp은 마침내 Mac 및 Windows 사용자용 데스크톱 앱을 출시했습니다. 이제 Windows 또는 Mac에서 Whatsapp에 쉽게 액세스할 수 있습니다. Windows 8 이상 및 Mac OS 10.9 이상에서 사용 가능
인공 지능이 소규모 회사에서 어떻게 인기를 얻고 있으며 어떻게 인공 지능이 성장할 가능성을 높이고 경쟁자가 우위를 점할 수 있는지 알아보려면 이 기사를 읽으십시오.
최근 Apple은 문제를 해결하기 위해 macOS Catalina 10.15.4 추가 업데이트를 출시했지만 이 업데이트로 인해 Mac 컴퓨터의 브릭킹으로 이어지는 더 많은 문제가 발생하는 것 같습니다. 자세히 알아보려면 이 기사를 읽어보세요.
빅데이터의 13가지 상용 데이터 추출 도구
우리 컴퓨터는 모든 데이터를 저널링 파일 시스템이라고 하는 체계적인 방식으로 저장합니다. 검색을 누르는 즉시 컴퓨터에서 파일을 검색하고 표시할 수 있는 효율적인 방법입니다.https://wethegeek.com/?p=94116&preview=true
과학이 빠른 속도로 발전하고 우리의 많은 노력을 인수함에 따라 설명할 수 없는 특이점에 처할 위험도 높아집니다. 특이점이 우리에게 무엇을 의미할 수 있는지 읽어보십시오.
26가지 빅 데이터 분석 기법에 대한 통찰: 1부
의료 분야의 AI는 지난 수십 년 동안 큰 도약을 했습니다. 따라서 의료 분야에서 AI의 미래는 여전히 나날이 성장하고 있습니다.