VPS 보안 단계

이 튜토리얼은 Debian GNU / Linux로 가상 사설 서버 (VPS)를 준비하고 보호하는 방법을 보여줍니다. 시작하기 전에 다음과 같은 사항을 가정합니다.

  1. GNU / Linux에 대해 중간 수준의 친숙 함이 있습니다.
  2. SSH를 통해 액세스 할 수있는 개인용 VPS가 있습니다.
  3. VPS에는 전용 외부 ipv4 250.250.250.155가 있고 제공 업체는 250.250.0.0/16 블록을 소유합니다. (1)
  4. VPS에서는 외부에서 액세스 할 수 있도록 http, https 및 ssh 서비스 만 사용할 수 있습니다.
  5. 외부 DNS는 일반적으로 공급자의 패널에서 수행되므로 활성화되지 않습니다. (2)
  6. 수퍼 유저로 작동합니다.

설치

첫 번째 단계로 서버를 업데이트하고 필요한 패키지를 설치하겠습니다.

# aptitude 업데이트 및 aptitude safe-upgrade # aptitude -RvW install dropbear gesftpserver sslh iptables-persistent ulogd fail2ban nginx-light apache2-utils dnsutils telnet ghostscript poppler-utils zip unzip unrar-free p7zip-full less multitail tee mc

구성

이제 우리는 직장 사용자를 만들 것입니다. 서버에서 루트로 작업하는 것은 안전하지 않으므로 먼저 특별한 사용자를 만듭니다.

adduser 연산자 usermod -aG sudo 연산자

첫 번째 명령은 운영자 사용자를 생성하고 두 번째 명령은 그룹에 추가합니다. sudo는,이를 통해 응용 프로그램을 루트로 실행할 수 있습니다.

슈퍼 사용자에 대한 권한 조정

정기적으로 작업하려면 사용자를 사용합니다. 연산자 이전에 생성 한 경우 수퍼 유저로 명령 실행 옵션을 조정해야하며이를 위해 다음 명령을 실행합니다.

시각 장애인

이 명령은 기본적으로 파일 수정을 허용합니다. / etc / sudoers; 여기에 다음 줄을 포함해야합니다.

기본값 env_reset, timestamp_timeout = 0 % sudo ALL = (ALL : ALL) ALL

첫 번째 줄에서 옵션이 기본값에 추가됩니다. 타임스탬프_타임아웃 sudo 명령이 실행될 때 암호의 만료 시간 (분)을 설정할 수 있습니다. 기본값은 5이지만 두 가지 이유로 안전하지 않은 경우가 있습니다.

  1. 암호가 만료되기 전에 실수로 컴퓨터에 로그인 한 상태로두면 누군가 제한없이 수퍼 유저로 명령을 실행할 수 있습니다.
  2. 무지로 인해 암호가 만료되기 전에 악성 코드가 포함 된 응용 프로그램이나 스크립트를 실행하면 응용 프로그램이 명시적인 동의없이 수퍼 유저로 시스템에 액세스 할 수 있습니다.

따라서 위험을 피하기 위해 값을 1으로 설정했습니다. 즉, sudo 명령이 실행될 때마다 암호를 입력해야합니다. 음수 값을 -XNUMX로 설정하면 암호가 만료되지 않아 원하는 결과와 반대되는 결과가 생성됩니다.

두 번째 줄에서는 sudo 그룹이 모든 컴퓨터에서 모든 명령을 실행할 수 있음을 명확히했습니다. 이는 조정할 수 있지만 일반적입니다. (3) 비밀번호 입력을 피하기 위해 편의를 위해 다음과 같이 입력하는 분들이 있습니다.

% sudo ALL = (ALL : ALL) NOPASSWD : ALL

그러나 이전에 설명한 것처럼 위험하므로 권장하지 않습니다.

재시작 비활성화

보안상의 이유로 키 조합을 사용하여 재시작을 비활성화합니다. Ctrl + Alt + Del, 파일에이 줄을 추가해야합니다. / etc / inittab:

ca : 12345 : ctrlaltdel : / bin / echo "Ctrl + Alt + Del이 비활성화되었습니다."

OpenSSH를 DropBear로 교체

대부분의 VPS는 OpenSSH가 설치되어 제공되며 이는 확실히 매우 유용하지만 OpenSSH의 모든 기능을 활용해야하는 경우가 아니면 다음과 같은 VPS에 대한 더 가벼운 대안이 있습니다. 드롭 베어, 일반적으로 정기적으로 사용하기에 충분합니다. 그러나이 응용 프로그램의 단점은 통합 SFTP 서버가 함께 제공되지 않는다는 것입니다. 그래서 처음에 패키지를 설치했습니다. gesftp 서버.

Dropbear를 구성하기 위해 파일을 수정합니다. / etc / 기본값 / dropbear 다음 두 줄을 포함합니다.

NO_START = 0 DROPBEAR_EXTRA_ARGS = "-w -p 127.0.0.1:22 -I 1200 -m"

첫 번째 줄은 단순히 서비스를 활성화하고 두 번째 줄은 몇 가지 작업을 수행합니다.

  1. 루트 액세스를 피하십시오.
  2. 서비스가 로컬 인터페이스의 포트 22에서 수신하도록합니다 (이유는 나중에 설명하겠습니다).
  3. 대기 시간 (20 분)을 설정합니다.

SSLH

포트 22 (SSH)는 잘 알려져 있으며 일반적으로 해커가 침입을 시도하는 첫 번째 포트 중 하나이므로 대신 포트 443 (SSL)을 사용합니다. 이 포트는 HTTPS를 통한 보안 검색에 사용됩니다.

이러한 이유로 포트 443에 도착하는 패킷을 분석하고 트래픽 유형이 SSH인지 SSL인지에 따라 내부적으로 하나의 서비스 또는 다른 서비스로 라우팅하는 멀티플렉서에 지나지 않는 sslh 패키지를 사용합니다.

SSLH는 다른 서비스가 이미 수신하고있는 인터페이스에서 수신 할 수 없으므로 이전에 Dropbear가 로컬 인터페이스에서 수신하도록 설정했습니다.

이제 우리가해야 할 일은 인터페이스와 그것이 수신해야하는 포트와 서비스 유형에 따라 패킷을 리디렉션 할 위치를 sslh에 지정하는 것입니다.이를 위해 구성 파일을 수정합니다. / etc / 기본값 / sslh:

DAEMON = / usr / sbin / sslh DAEMON_OPTS = "-user sslh --listen 250.250.250.155:443 --ssh 127.0.0.1:22 --ssl 127.0.0.1:443 --pidfile / var / run / sslh / sslh. pid "실행 = 예

마지막으로 서비스를 다시 시작합니다.

service ssh stop && service dropbear start && service sslh restart

이전 명령 후 보안 세션이 중단 될 수 있습니다.이 경우 다시 로그인하면 충분하지만 이번에는 작업 사용자와 포트 443을 사용합니다. 세션이 중단되지 않은 경우 세션을 닫고 세션을 닫는 것이 좋습니다. 적절한 값으로 다시 시작하십시오.

모든 것이 올바르게 작동하면 루트로 계속 작업 할 수 있으며 원하는 경우 OpenSSH를 제거합니다.

sudo su-aptitude -r purge openssh-server

코타 푸에 고스

다음으로 할 일은 방화벽의 로그를 별도의 파일로 분리하는 것입니다. /var/log/firewall.log 추가 분석을 용이하게하기 위해 시작시 ulogd 패키지를 설치했습니다. 이를 위해 파일을 편집합니다. /etc/logd.conf 관련 섹션을 조정하려면 :

[LOGEMU] 파일 = "/ var / log / firewall.log"sync = 1

다음으로 레코드 회전 파일을 수정합니다. / etc / logrotate / ulogd 매일 회전 (날짜 포함)을 유지하고 압축 된 일제를 디렉토리에 저장합니다. / var / 로그 / ulog /:

/var/log/ulog/*.log /var/log/firewall.log {매일 dateext missingok 압축 지연 압축 공유 스크립트 생성 640 root adm postrotate /etc/init.d/ulogd reload mv /var/log/firewall.log-* .gz / var / log / ulog / endscript}

그런 다음 다음을 실행하여 넷 필터 규칙을 생성합니다.

IPT = $ (어떤 iptables) IPEXT = 250.250.250.155 IPEXTBLK = 250.250.0.0 / 16 IPBCAST = 255.255.255.255 $ IPT -F $ IPT -X $ IPT -Z $ IPT -A INPUT -i lo -j ACCEPT $ IPT- P INPUT DROP $ IPT -P FORWARD DROP $ IPT -P OUTPUT ACCEPT $ IPT -A INPUT -m state --state INVALID -j ULOG --ulog-prefix IN_INVALID $ IPT -A INPUT -p igmp -j ULOG --ulog -prefix IN_IGMP $ IPT -A INPUT -m pkttype --pkt-type 브로드 캐스트 -j ULOG --ulog-prefix IN_BCAST $ IPT -A INPUT -m pkttype --pkt-type 멀티 캐스트 -j ULOG --ulog-prefix IN_MCAST $ IPT -A FORWARD -j ULOG --ulog-prefix FORWARD $ IPT -N ICMP_IN $ IPT -A INPUT!  -i lo -p icmp -j ICMP_IN $ IPT -A ICMP_IN -p icmp -f -j ULOG --ulog-prefix IN_ICMP_FRAGMENTED $ IPT -A ICMP_IN -p icmp -m icmp -m 길이!  --length 28 : 1322 -j ULOG --ulog-prefix IN_ICMP_INVALIDSIZE $ IPT -A ICMP_IN -p icmp -m icmp -m hashlimit --hashlimit-above 4 / sec --hashlimit-mode srcip --hashlimit-srcmask 24- -hashlimit-name icmpflood -j ULOG --ulog-prefix IN_ICMP_FLOOD $ IPT -A ICMP_IN -p icmp -m icmp -m hashlimit --hashlimit-upto 64kb / min --hashlimit-mode srcip --hashlimit-srcmask 24-hashlimit -name icmpattack -j ULOG --ulog-prefix IN_ICMP_FLOOD $ IPT -A ICMP_IN -p icmp -m icmp -m u32!  --u32 "0x4 & 0x3fff = 0x0"-j ULOG --ulog-prefix IN_ICMP_ATTACK $ IPT -A ICMP_IN -p icmp -m icmp!  --icmp-type echo-request -m state --state NEW -j ULOG --ulog-prefix IN_ICMP_INVALID $ IPT -A ICMP_IN -p icmp -m icmp --icmp-type echo-request -j ULOG --ulog- prefix IN_ICMP $ IPT -A ICMP_IN -p icmp -m icmp --icmp-type echo-request -m limit --limit 1 / sec --limit-burst 4 -j ACCEPT $ IPT -A ICMP_IN -p icmp -m icmp --icmp-type echo-reply -m limit --limit 2 / sec --limit-burst 4 -j ACCEPT $ IPT -A ICMP_IN -p icmp -m icmp --icmp-type destination-unreachable -m limit-limit 2 / 초 --limit-burst4 -j ACCEPT $ IPT -A ICMP_IN -p icmp -m icmp --icmp-type 시간 초과 -m limit --limit 2 / 초 --limit-burst4 -j ACCEPT $ IPT -A ICMP_IN -p icmp -m icmp --icmp-type 매개 변수-문제 -m limit --limit 2 / sec --limit-burst 4 -j ACCEPT $ IPT -A ICMP_IN -j RETURN $ IPT -N UDP_IN $ IPT-입력!  -i lo -p udp -j UDP_IN $ IPT -A UDP_IN!  -나!  -p udp -f -j ULOG --ulog-prefix IN_UDP_FRAGMENTED $ IPT -A UDP_IN -p udp -m udp --sport 53 -m 길이!  --length 28 : 576 -j ULOG --ulog-prefix IN_UDP_DNS_INVALIDSIZE $ IPT -A UDP_IN -p udp -m udp --dport 53 -m -state --state NEW -j ULOG --ulog-prefix IN_UDP_DNSREQUEST $ IPT- A UDP_IN -p udp -m udp --dport 53 -m -state --state NEW -j REJECT --reject-with icmp-port-unreachable $ IPT -A UDP_IN -p udp -m udp!  -스포츠 53!  -s $ IPEXTBLK!  -d $ IPBCAST -m state --state NEW -j ULOG --ulog-prefix IN_UDP $ IPT -A UDP_IN -p udp -m udp -m state --state ESTABLISHED, RELATED -j ACCEPT $ IPT -A UDP_IN -j RETURN $ IPT -N TCP_IN $ IPT -A 입력!  -i lo -p tcp -j TCP_IN $ IPT -A TCP_IN!  -나!  -p tcp -f -j ULOG --ulog-prefix IN_TCP_FRAGMENTED $ IPT -A TCP_IN -p tcp -m tcp --sport 53 -m state --state ESTABLISHED, RELATED -m length!  --length 513 : 1500 -j ULOG --ulog-prefix IN_TCP_DNS_INVALIDSIZE $ IPT -A TCP_IN -p tcp -m tcp --dport 53 -m state --state NEW -j ULOG --ulog-prefix IN_TCP_DNS $ IPT -A TCP_IN -p tcp -m tcp --dport 53 -m state --state NEW -j REJECT --reject-with icmp-port-unreachable $ IPT -A TCP_IN -p tcp -m tcp -m multiport!  --dports 80,443 -m state --state NEW -j ULOG --ulog-prefix IN_TCP $ IPT -A TCP_IN -p tcp -m tcp -m multiport --dports 80,443 -m state --state NEW -m hashlimit- hashlimit-upto 4 / sec --hashlimit-burst 16 --hashlimit-mode srcip --hashlimit-name navreq -j ACCEPT $ IPT -A TCP_IN -p tcp -m tcp -m multiport --dports 80,443 -m state- 상태 ESTABLISHED -m connlimit!  --connlimit-above 16 -j ACCEPT $ IPT -A TCP_IN -p tcp -m tcp -m 멀티 포트! 

이전 구성에서는 VPS를 합리적으로 보호해야하지만 원하는 경우 더 많은 고급 규칙을 사용할 수 있습니다.

모든 VPS가 netfilter 용 추가 모듈 설치를 허용하는 것은 아니지만 매우 유용한 것은 의 PSD, 포트 스캔을 피할 수 있습니다. 안타깝게도이 모듈은 기본적으로 netfilter에 통합되어 있지 않으므로 특정 패키지를 설치 한 다음 모듈을 빌드해야합니다.

aptitude -RvW install iptables-dev xtables-addons-source module-assistant module-assistant --verbose --text-mode auto-install xtables-addons-source

위의 작업이 완료되면 다음과 같은 규칙을 추가 할 수 있습니다.

iptables -A INPUT -m psd --psd-weight-threshold 15 --psd-delay-threshold 2000 --psd-lo-port-weight 3 --psd-hi-ports-weight 1 -j ULOG --ulog- 접두사 IN_PORTSCAN

이전 규칙은 기본적으로 3보다 낮은 포트에 액세스하려고 시도 할 때마다 1024 씩 증가하고 1보다 높은 포트에 액세스하려고 시도 할 때마다 1023 씩 증가하고이 카운터가 15 인치에 도달하면 카운터를 생성한다는 것을 의미합니다. 20 초 미만의 기간 동안 패키지는 우로그 Portcan에서의 시도로. 패킷은 여전히 ​​한 번에 버릴 수 있지만이 경우에는 실패한 2ban, 나중에 구성합니다.

규칙이 생성되면 규칙을 지속적으로 유지하기 위해 특정 예방 조치를 취해야합니다. 그렇지 않으면 서버가 다시 시작될 때 규칙이 손실됩니다. 이를 수행하는 방법에는 여러 가지가 있습니다. 이 튜토리얼에서는 처음에 설치 한 iptables-persistent 패키지를 사용합니다. /etc/iptables/rules.v4 y /etc/iptables/rules.v6 ipv6의 경우.

iptables-save> /etc/iptables/rules.v4

사실 쿠바에서 ipv6가 아직 널리 사용되지는 않았지만 몇 가지 기본 규칙을 만들 수 있습니다.

IPT = $ (어떤 ip6tables) $ IPT -P INPUT DROP $ IPT -P FORWARD DROP $ IPT -P OUTPUT ACCEPT $ IPT -A INPUT -i lo -j ACCEPT $ IPT -A INPUT! -i lo -m state --state ESTABLISHED, RELATED -j ACCEPT unset IPT

이러한 규칙은 영구적으로 만들 수도 있습니다.

ip6tables-save> /etc/iptables/rules.v6

마지막으로 보안 강화를 위해 방화벽 레지스트리를 정리하고 서비스를 다시 시작합니다.

echo -n> /var/log/firewall.log service logrotate restart service ulogd restart service iptables-persistent restart

Nginx에

Nginx를 웹 서버로 사용할 것입니다. VPS는 실제 서버에 비해 RAM의 양이 적기 때문에 일반적으로 Apache보다 가벼운 것을 사용하는 것이 편리합니다.

Nginx를 구성하기 전에 HTTPS를 통해 사용할 인증서 (비밀번호 없음)를 생성합니다.

cd / etc / nginx openssl genrsa -des3 -out cert.key 4096 cp -v cert.key cert.key.original openssl req -new -key cert.key -out cert.csr openssl rsa -in cert.key.original- out cert.key openssl x509 -req -days 365 -in cert.csr -signkey cert.key -out cert.crt

이 작업이 완료되면 사용자 "elusuario"에 대한 암호 파일을 생성합니다.

htpasswd -c .htpasswd 사용자

다음으로 파일을 수정하겠습니다. / etc / nginx / sites-available / default 기본 사이트 환경 설정을 지정합니다. 다음과 같이 보일 수 있습니다.

서버 {server_name localhost; index index.html index.htm default.html default.htm; 루트 / var / www; location / {# 확인 순서 및로드 할 페이지 설정, URI를 찾을 수없는 경우 try_files $ uri $ uri / /index.html; }} 서버 {listen 127.0.0.1:443; server_name localhost; index index.html index.htm default.html default.htm; 루트 / var / www; ssl on; ssl_certificate cert.crt; ssl_certificate_key cert.key; ssl_session_timeout 5m; # TLS를 통해서만 HTTPS 활성화 (SSL보다 더 안전함) ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # 고강도 [HIGH] 암호에 우선권 부여, # 중간 강도 [MEDIUM] 암호를 목록 끝으로 이동, # 저 강도 [LOW] 암호 비활성화 (40 및 56 비트) # 내보내기 알고리즘을 사용하여 암호 비활성화 [ EXP] # 인증없이 null ciphers [eNULL] 비활성화 [aNULL], SSL (버전 2 및 3) 및 DSS (최대 1024 비트의 키만 허용) ssl_ciphers HIGH : + MEDIUM :! LOW :! EXP :! aNULL :! eNULL :! SSLv3 :! SSLv2 :! DSS; # 서버의 암호화 방법을 선호합니다 (기본적으로 클라이언트가 사용됨) ssl_prefer_server_ciphers on; 위치 / {# 인증 활성화 auth_basic "로그인"; auth_basic_user_file /etc/nginx/.htpasswd; # URI try_files $ uri $ uri / = 404를 찾을 수없는 경우 확인 순서와로드 할 페이지 코드를 설정합니다. # 인증 된 사용자에 대한 색인 생성을 허용합니다. autoindex_exact_size 끄기; autoindex_localtime on; }}

구성이 올바른지 확인합니다.

nginx -t

마지막으로 서비스를 다시 시작합니다.

서비스 nginx 다시 시작

Fail2Ban

Fail2Ban 구성을 시작하기 전에 보안 강화를 위해 서비스를 중지하고 레지스트리를 정리합니다.

fail2ban-client stop echo -n> /var/log/fail2ban.log

다음으로 구성 파일을 만듭니다. /etc/fail2ban/jail.local 다음 사용자 정의 컨텐츠 :

# 커스텀 설정 파일 /etc/fail2ban/jail.local # [DEFAULT] findtime = 43200; 12 시간 금지 = 86400; 1 일 최대 재시도 = 3; 금지는 네 번째 시도 후에 적용됩니다. [ssh] enabled = false [nginx-auth] enabled = true filter = nginx-auth action = iptables-multiport [name = NoAuthFailures, port = "http, https"] logpath = / var / log / nginx * / * error * .log [nginx-badbots] enabled = true filter = apache-badbots action = iptables-multiport [name = BadBots, port = "http, https"] logpath = / var / log / nginx * /*access*.log bantime = 4; 604800 주 maxretry = 1 [nginx-login] enabled = true filter = nginx-login action = iptables-multiport [name = NoLoginFailures, port = "http, https"] logpath = / var / log / nginx * / * access *. 로그 금지 시간 = 0; 1800 분 [nginx-noscript] 활성화 됨 = true 작업 = iptables-multiport [이름 = NoScript, 포트 = "http, https"] 필터 = nginx-noscript logpath = /var/log/nginx*/*access*.log maxretry = 30 [nginx-proxy] 활성화 됨 = true 작업 = iptables-multiport [이름 = NoProxy, 포트 = "http, https"] 필터 = nginx-proxy logpath = /var/log/nginx*/*access*.log bantime = 0 ; 604800 주 maxretry = 1 [방화벽] 활성화 됨 = true 작업 = iptables-multiport [이름 = 방화벽] 필터 = 방화벽 로그 경로 = /var/log/firewall.log maxretry = 0

이 작업이 완료되면 디렉토리에 생성합니다. /etc/fail2ban/filters.d/ 다음 파일 :

# /etc/fail2ban/filter.d/nginx-auth.conf # 인증 필터 # 기본 인증을 사용하여 인증에 실패한 IP 차단 # [정의] failregex = 기본 인증을위한 사용자 / 비밀번호가 제공되지 않았습니다. * 클라이언트 : 사용자. * 찾을 수 없습니다. * 클라이언트 : 사용자. * 비밀번호 불일치. * 클라이언트 : ignoreregex =
# /etc/fail2ban/filter.d/nginx-login.conf # 로그인 필터 # 웹 애플리케이션의 로그인 페이지를 사용하여 인증에 실패한 IP 차단 # HTTP 200에 대한 액세스 로그 스캔 + POST / 세션 => 실패한 로그인 # [정의 ] failregex = ^ -. * POST / 세션 HTTP / 1 \ .. "200 ignoreregex =
# /etc/fail2ban/filter.d/nginx-noscript.conf # Noscript 필터 # .php, .pl, .exe 및 기타 재미있는 스크립트와 같은 스크립트를 실행하려는 IP를 차단합니다. # 일치 예 : # 192.168.1.1-- "GET /something.php # [정의] failregex = ^ -. * GET. * (\. Php | \ .asp | \ .exe | \ .pl | \ .cgi | \ scgi) ignoreregex =
# /etc/fail2ban/filter.d/proxy.conf # 프록시 필터 # 서버를 프록시로 사용하려는 IP를 차단합니다. # 일치 예 : # 192.168.1.1-- "GET http://www.something.com/ # [정의] failregex = ^ -. * GET http. * Ignoreregex =
# /etc/fail2ban/filter.d/firewall.conf # 방화벽 필터 # [정의] failregex = ^. * IN_ (INVALID | PORTSCAN | UDP | TCP |). * SRC = . * $ ignoreregex =

마지막으로 서비스를 시작하고 구성을로드합니다.

fail2ban-service -b fail2ban-client 다시로드

확인

마지막 단계로 다음을 사용하여 레코드를 볼 수 있습니다. 꼬리 -f o 멀티 테일 – 모두 팔로우. 실제로 후자의 응용 프로그램은 여러 파일을 동시에 볼 수 있고 기본 구문 강조 기능을 제공한다는 이점을 제공합니다.

VPS에서 이메일 계정이 구성되지 않은 경우 multitail을 시작할 때 나타나는 경고 메시지를 비활성화하는 것이 좋습니다.이 메시지에 대해 다음 명령을 실행합니다.

echo "check_mail : 0"> ~ / .multitailrc

실제로 "flog"와 같이 짧은 명령으로 로그를 빠르게 볼 수 있도록 별칭 (4)을 만들 수 있습니다.

alias flog = 'multitail --follow-all /var/log/firewall.log /var/log/fail2ban.log'

1) 이는 가상의 값입니다.
2) 작동 방식을 이해하면 다른 서비스를 활성화하는 것은 쉽습니다.
3) 자세한 내용은 man sudoers를 실행하십시오.
4) 선택적으로 ~ / .bash_aliases 파일에 추가 할 수 있습니다.


6 코멘트, 당신의 것을 남겨주세요

코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   MSX

    흥미로운 것들이 있습니다. +1

  2.   유키 테루

    @Hugo 구성에서 다음 줄 :

    ssl_protocols SSLv3 TLSv1;

    Debian Jessie에서도 해당 프로토콜이 더 이상 안전하지 않기 때문에 SSLv3를 제거하겠습니다. 많은 서비스가 이러한 이유로 해당 프로토콜을 사용하지 않도록 구성되었습니다.

    여기에 주제에 대한 정보 :

    https://www.linode.com/docs/security/security-patches/disabling-sslv3-for-poodle
    http://disablessl3.com/

    1.    휴고

      아이디어는 실제로 HTTPS를 통해 주요 서비스를 제공하는 것이 아니라 필요한 경우 HTTPS에 사용할 가능성을 잃지 않고 SSH에 포트 443을 사용하는 방법을 설명하는 것이었지만 경고에 감사드립니다.

      어쨌든 나는 nginx 구성을 약간 수정하고 우연히이 암호화 메커니즘으로 상황을 좀 더 명확히하고 사소한 오류를 수정하기 위해 몇 가지 주석을 포함하도록 기사를 업데이트했습니다.

  3.   다니엘 PZ

    이 훌륭한 튜토리얼을 제공해 주셔서 대단히 감사합니다. 이제 실제로 적용해 보겠습니다. :D, 계속 힘내세요 DesdeLinux, 그들은 항상 저를 놀라게 합니다. 페루에서 인사드립니다.

  4.   잔데쿠에라

    공유 주셔서 대단히 감사합니다.

  5.   페르난도

    아주 좋은 가이드이며이 블로그에서 시작한 지금은 진주에서 나왔지만 이제는 첫 번째 vps를 마운트하려고하지만 여전히 많은 문제가 있지만이 기사는 많은 의심, 감사 및 인사에서 나를 데려갔습니다.