VPS'imizi güvenli hale getirmek için adımlar

Bu eğitim, Debian GNU / Linux ile bir Sanal Özel Sunucunun (VPS) nasıl hazırlanacağını ve güvenli hale getirileceğini gösterir. Başlamadan önce bazı şeyler varsayılıyor:

  1. GNU / Linux ile orta düzeyde aşinalığa sahipsiniz.
  2. SSH aracılığıyla erişimimiz olan kişisel kullanım için bir VPS var.
  3. VPS, özel harici ipv4 250.250.250.155'e sahiptir ve sağlayıcımız 250.250.0.0/16 bloğuna sahiptir. (1)
  4. VPS'imizde dışarıdan erişim için yalnızca http, https ve ssh hizmetlerine sahip olacağız.
  5. Genellikle sağlayıcımızın panelinde yapıldığı için harici DNS etkinleştirilmeyecektir. (2)
  6. Süper kullanıcı olarak çalışacak.

Montaj

İlk adım olarak sunucuyu güncelleyelim ve ihtiyaç duyacağımız bazı paketleri kuralım:

# aptitude update & 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 mc

yapılandırma

Şimdi bir çalışma kullanıcısı oluşturacağız. Bir sunucuda root olarak çalışmak güvenli değildir, bu yüzden önce özel bir kullanıcı oluşturacağız:

adduser operatörü usermod -aG sudo operatörü

İlk komut operatör kullanıcıyı yaratır, ikincisi onu gruba ekler sudo, bu da uygulamaların root olarak çalıştırılmasına izin verecektir.

Süper kullanıcılar için izinleri ayarlayın

Düzenli çalışmak için kullanıcıyı kullanacağız operatör önceden oluşturulmuşsa, komut yürütme seçeneklerini süper kullanıcı olarak ayarlamamız gerekir, bunun için aşağıdaki komutu yürütürüz:

visudo

Bu komut temelde dosyanın değiştirilmesine izin verir / Etc / Sudoers; Bu satırları içermemiz gereken:

Varsayılan env_reset, timestamp_timeout = 0% sudo ALL = (ALL: ALL) ALL

İlk satırda seçenek varsayılan değerlere eklenmiştir zaman damgası_zaman aşımı sudo komutu yürütüldüğünde şifrenin sona erme süresini (dakika cinsinden) ayarlamaya izin verir. Varsayılan 5'tir, ancak bu bazen iki nedenden dolayı güvenli değildir:

  1. Parolanın süresi dolmadan yanlışlıkla bilgisayarımızı oturum açmış halde bırakırsak, herhangi bir kısıtlama olmaksızın birisi root olarak bir komutu çalıştırabilir.
  2. Cehalet yüzünden kötü niyetli kod içeren bir uygulama veya komut dosyasını şifre süresi dolmadan çalıştırırsak, uygulama bizim açık iznimiz olmadan süper kullanıcı olarak sistemimize erişebilir.

Bu yüzden risklerden kaçınmak için değeri sıfıra ayarladık, yani sudo komutu her yürütüldüğünde şifrenin girilmesi gerekecek. Negatif bir değer -1 olarak ayarlanırsa, bunun etkisi parolanın hiçbir zaman geçerliliğini yitirmemesidir, bu da istediğimizin tersi sonucunu doğurur.

İkinci satırda, sudo grubunun herhangi bir bilgisayarda herhangi bir komutu çalıştırabileceği açıklığa kavuşturulabilir, ancak normaldir. (3) Parolayı yazmak zorunda kalmamak için kolaylık olması açısından aşağıdaki satırı koyanlar vardır:

% sudo ALL = (ALL: ALL) NOPASSWD: TÜM

Ancak daha önce de açıkladığımız gibi bu risklidir ve bu nedenle tavsiye edilmez.

Yeniden başlatmayı devre dışı bırak

Güvenlik nedenleriyle, tuş kombinasyonunu kullanarak yeniden başlatmayı da devre dışı bırakacağız. Ctrl + Alt + Del, bunun için bu satırı dosyaya eklemeliyiz / Etc / inittab'deki:

ca: 12345: ctrlaltdel: / bin / echo "Ctrl + Alt + Del devre dışı bırakıldı."

OpenSSH'yi DropBear ile değiştirin

Çoğu VPS, kesinlikle çok kullanışlı olan OpenSSH yüklü olarak gelir, ancak OpenSSH'nin tüm işlevlerinden yararlanmamız gerekmedikçe, VPS için daha hafif alternatifler vardır, örneğin Ayı, bu genellikle düzenli kullanım için yeterlidir. Ancak, bu uygulamanın bir dezavantajı, entegre bir SFTP sunucusuyla birlikte gelmemesi ve bu nedenle paketi en başta yükledik. gesftpsunucusu.

Dropbear'ı yapılandırmak için dosyayı değiştireceğiz / etc / default / dropbear bu iki satırı içermesi için:

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

İlk satır basitçe hizmeti etkinleştirir ve ikincisi birkaç şey yapar:

  1. Kök erişiminden kaçının.
  2. Servisin yerel arayüzün 22. portunu dinlemesini sağlar (nedenini daha sonra açıklayacağız).
  3. Bekleme süresini (20 dakika) ayarlar.

SSLH

Bağlantı Noktası 22 (SSH) iyi bilinir ve genellikle bilgisayar korsanlarının ihlal etmeye çalıştığı ilk bağlantı noktasıdır, bu nedenle bunun yerine 443 numaralı bağlantı noktasını (SSL) kullanacağız. Bu bağlantı noktasının HTTPS üzerinden güvenli gezinme için kullanıldığı görülür.

Bunun için 443 numaralı bağlantı noktasına gelen paketleri analiz eden ve trafiğin türünün SSH veya SSL olmasına bağlı olarak dahili olarak bir hizmete veya diğerine yönlendiren bir çoklayıcıdan başka bir şey olmayan sslh paketini kullanacağız.

SSLH, başka bir hizmetin zaten dinlediği bir arabirimde dinleyemez, bu nedenle daha önce Dropbear'ı yerel arabirimde dinlettik.

Şimdi yapmamız gereken şey, hizmetin türüne bağlı olarak arabirimi ve dinlemesi gereken bağlantı noktasını ve paketleri nereye yönlendireceğini belirtmek ve bunun için yapılandırma dosyasını değiştireceğiz. / etc / default / sslh:

DAEMON = / usr / sbin / sslh DAEMON_OPTS = "- kullanıcı 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 "RUN = evet

Son olarak hizmetleri yeniden başlatıyoruz:

service ssh stop && service dropbear start && service sslh yeniden başlat

Önceki komuttan sonra, güvenli oturumumuz muhtemelen kesintiye uğrayacaktır, bu durumda tekrar oturum açmak yeterlidir, ancak bu sefer iş kullanıcısı ile ve 443 numaralı bağlantı noktasını kullanarak. Oturum kesintiye uğramazsa, kapatılması ve uygun değerlerle yeniden başlayın.

Her şey doğru çalışıyorsa, root olarak çalışmaya devam edebiliriz ve dilersek OpenSSH'yi kaldırabiliriz:

sudo su - aptitude -r purge openssh-server

güvenlik duvarları

Yapacağımız bir sonraki şey, günlükleri güvenlik duvarından ayrı bir dosyaya ayırmaktır. /var/log/güvenlik duvarı.log daha fazla analizi kolaylaştırmak için, bu nedenle ulogd paketini başlangıçta kurduk. Bunun için dosyayı düzenleyeceğiz /etc/logd.conf ilgili bölümü ayarlamak için:

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

Ardından, kayıt rotasyon dosyasını değiştireceğiz / etc / logrotate / ulogd günlük rotasyonu (tarihle) tutmak ve dizine sıkıştırılmış salvoları kaydetmek için / var / log / ulog /:

/var/log/ulog/*.log /var/log/firewall.log {daily dateext missingok sıkıştırma gecikmesicompress paylaşılan komut dosyaları 640 kök adm postrotate oluşturur /etc/init.d/ulogd reload mv /var/log/firewall.log-* .gz / var / log / ulog / endscript}

Ardından aşağıdakileri yürüterek netfilter kurallarını oluşturacağız:

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 GİRİŞ -i lo -j KABUL $ IPT - P INPUT DROP $ IPT -P FORWARD DROP $ IPT -P OUTPUT KABUL $ IPT -A INPUT -m state --state INVALID -j ULOG --ulog-prefix IN_INVALID $ IPT -A INPUT -p igmp -j ULOG --ulog -önek IN_IGMP $ IPT -A GİRİŞ -m pkttype --pkt-type yayın -j ULOG --ulog-prefix IN_BCAST $ IPT -A INPUT -m pkttype --pkt-type multicast -j ULOG --ulog-prefix IN_MCAST $ IPT -A İLERİ -j ULOG --ulog-önek İLERİ $ IPT -N ICMP_IN $ IPT -A GİRİŞ!  -i lo -p icmp -j ICMP_IN $ IPT -A ICMP_IN -p icmp -f -j ULOG --ulog-önek IN_ICMP_FRAGMENTED $ IPT -A ICMP_IN -p icmp -m icmp -m uzunluk!  --length 28: 1322 -j ULOG --ulog-prefix IN_ICMP_INVALIDSIZE $ IPT -A ICMP_IN -p icmp -m icmp -m hashlimit --hashlimit-over 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-önek IN_ICMP_FLOOD $ IPT -A ICMP_IN -p icmp -m icmp -m u32!  --u32 "0x4 ve 0x3fff = 0x0" -j ULOG --ulog-önek IN_ICMP_ATTACK $ IPT -A ICMP_IN -p icmp -m icmp!  --icmp-type echo-request -m state --state YENİ -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-tipi echo-cevap -m limit --sınır 2 / sn --limit-burst 4 -j KABUL $ IPT -A ICMP_IN -p icmp -m icmp --icmp-tipi hedef-ulaşılamaz -m limit - limit 2 / sn --limit-burst 4 -j KABUL $ IPT -A ICMP_IN -p icmp -m icmp --icmp-tipi zaman aşıldı -m limit --limit 2 / sn --limit-burst 4 -j KABUL $ IPT -A ICMP_IN -p icmp -m icmp --icmp-tipi parametre-problem -m limit --sınır 2 / sn --limit-burst 4 -j KABUL $ IPT -A ICMP_IN -j DÖNÜŞ $ IPT -N UDP_IN $ IPT -BİR GİRİŞ!  -i lo -p udp -j UDP_IN $ IPT -A UDP_IN!  -i lo!  -p udp -f -j ULOG --ulog-önek IN_UDP_FRAGMENTED $ IPT -A UDP_IN -p udp -m udp --sport 53 -m uzunluk!  --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 YENİ -j REJECT --reject-with icmp-port-unreachable $ IPT -A UDP_IN -p udp -m udp!  - spor 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 KABUL $ IPT -A UDP_IN -j İADE $ IPT -N TCP_IN $ IPT -A GİRİŞ!  -i lo -p tcp -j TCP_IN $ IPT -A TCP_IN!  -i lo!  -p tcp -f -j ULOG --ulog-önek IN_TCP_FRAGMENTED $ IPT -A TCP_IN -p tcp -m tcp --sport 53 -m durum --durum TAHMİN, İLGİLİ -m uzunluk!  --length 513: 1500 -j ULOG --ulog-önek IN_TCP_DNS_INVALIDSIZE $ IPT -A TCP_IN -p tcp -m tcp --dport 53 -m durum - durum YENİ -j ULOG --ulog-önek IN_TCP_DNS $ IPT -A TCP_IN -p tcp -m tcp --dport 53 -m state --state YENİ -j REDDET - icmp-bağlantı noktası ile reddetme-erişilemez $ IPT -A TCP_IN -p tcp -m tcp -m multiport!  --dports 80,443 -m state --state YENİ -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 -4 / saniyeye kadar --hashlimit-burst 16 --hashlimit-mode srcip --hashlimit-name navreq -j KABUL $ IPT -A TCP_IN -p tcp -m tcp -m multiport --dports 80,443 -m durumu - durum ESTABLISHED -Benim!  --connlimit-üstü 16 -j KABUL $ IPT -A TCP_IN -p tcp -m tcp -m multiport! 

Önceki yapılandırmayla, VPS'miz makul bir şekilde güvenli hale getirilmelidir, ancak dilersek biraz daha güvenli hale getirebiliriz, bunun için daha gelişmiş kurallar kullanabiliriz.

Tüm VPS ağ filtresi için ekstra modüllerin kurulmasına izin vermez, ancak çok kullanışlı psdbağlantı noktası taramalarından kaçınmanıza olanak tanır. Ne yazık ki, bu modül varsayılan olarak netfilter'e entegre edilmemiştir, bu nedenle belirli paketleri kurmak ve ardından modülü oluşturmak gerekir:

aptitude -RvW iptables-dev xtables-addons-kaynak modülü-asistan modülü-asistan --verbose - metin modu otomatik kurulum xtables-addons-source yükle

Yukarıdakiler yapıldığında, buna benzer bir kural ekleyebiliriz:

iptables -A GİRİŞ -m psd --psd-ağırlık-eşik 15 --psd-gecikme-eşiği 2000 --psd-lo-port-ağırlık 3 --psd-hi-port-ağırlık 1 -j ULOG --ulog- önek IN_PORTSCAN

Önceki kural temel olarak, 3'ten daha düşük bir bağlantı noktasına erişmeye çalışıldığında her seferinde 1024 ve 1'ten daha yüksek bir bağlantı noktasına erişme girişiminde bulunulduğunda ve bu sayaç olduğunda 1023 artacak bir sayaç oluşturacağımız anlamına gelir. 15 saniyeden daha kısa sürede 20'e ulaşırsa, paketler tarafından kayıt altına alınacaktır. ulog portcan'da bir girişim olarak. Paketler yine de bir kerede atılabilir, ancak bu durumda kullanmak niyetindeyiz fail2ban, daha sonra yapılandıracağız.

Kurallar oluşturulduktan sonra, onları kalıcı hale getirmek için bazı önlemler almalıyız, aksi takdirde sunucu yeniden başlatıldığında bunları kaybedeceğiz. Bunu başarmanın birkaç yolu vardır; Bu eğitimde, başlangıçta kurduğumuz ve kuralları şurada depolayan iptables-kalıcı paketini kullanacağız. /etc/iptables/rules.v4 y /etc/iptables/rules.v6 ipv6 için.

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

Aslında, Küba'da ipv6 kullanımı henüz yaygın olmasa da, bazı temel kurallar oluşturabiliriz:

IPT = $ (hangi ip6tables) $ IPT -P GİRİŞ DÜŞMESİ $ IPT -P İLERİ DROP $ IPT -P ÇIKIŞ KABUL $ IPT -A GİRİŞ -i lo -j KABUL $ IPT -A GİRİŞ! -i lo -m durum - durum KURULU, İLGİLİ -j Ayarsız IPT'yi KABUL ET

Bu kurallar ayrıca kalıcı hale getirilebilir:

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

Son olarak, daha fazla güvenlik için, güvenlik duvarının kayıt defterini temizliyoruz ve hizmetleri yeniden başlatıyoruz:

echo -n> /var/log/firewall.log hizmet logrotate yeniden başlatma hizmeti ulogd yeniden başlatma hizmeti iptables-kalıcı yeniden başlatma

nginx

Nginx'i bir web sunucusu olarak kullanacağız, çünkü VPS'ler gerçek bir sunucuya kıyasla daha az miktarda RAM'e sahip olma eğilimindedir, bu nedenle Apache'den daha hafif bir şeye sahip olmak genellikle iyi bir fikirdir.

Nginx'i yapılandırmadan önce, HTTPS üzerinden kullanmak için bir sertifika (şifresiz) oluşturacağız:

cd / etc / nginx openssl genrsa -des3 -out cert.key 4096 cp -v cert.key cert.key.original openssl req -yeni -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

Bu yapıldıktan sonra, "elusuario" kullanıcısı için bir şifre dosyası oluşturacağız:

htpasswd -c .htpasswd kullanıcı

Ardından dosyayı değiştireceğiz / etc / nginx / sites-available / default varsayılan site tercihlerini ayarlamak için. Şöyle görünebilir:

server {server_name localhost; index index.html index.htm default.html default.htm; kök / var / www; location / {# URI bulunamazsa, doğrulama sırasını ve yüklenecek sayfayı ayarlayın try_files $ uri $ uri / /index.html; }} sunucu {listen 127.0.0.1:443; server_name localhost; index index.html index.htm default.html default.htm; kök / var / www; ssl açık; ssl_certificate cert.crt; ssl_certificate_key cert.key; ssl_session_timeout 5 dk; # HTTPS'yi yalnızca TLS üzerinden etkinleştirin (SSL'den daha güvenli) ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # yüksek güçlü şifrelere öncelik verin [YÜKSEK], # orta güçlü şifreleri [ORTA] listenin sonuna taşıyın, # düşük güçlü şifreleri devre dışı bırakın [DÜŞÜK] (40 ve 56 bit) # dışa aktarma algoritmalarıyla şifreleri devre dışı bırakın [ EXP] # kimlik doğrulaması olmadan [eNULL] boş şifreleri devre dışı bırakın [eNULL], SSL (sürüm 2 ve 3) ve DSS (yalnızca 1024 bit'e kadar anahtarlara izin verir) ssl_ciphers HIGH: + MEDIUM :! DÜŞÜK :! EXP:! ANULL :! eNULL :! SSLv3 :! SSLv2 :! DSS; # Sunucunun şifreleme yöntemlerini tercih edin (varsayılan olarak istemciler kullanılır) ssl_prefer_server_ciphers on; konum / {# kimlik doğrulamasını etkinleştir auth_basic "Giriş"; auth_basic_user_file /etc/nginx/.htpasswd; # URI try_files $ uri $ uri / = 404 bulunamazsa, doğrulama sırasını ve yüklenecek sayfa kodunu ayarlayın; # kimliği doğrulanmış kullanıcılar için bir dizin oluşturmaya izin ver. autoindex_exact_size kapalı; autoindex_localtime on; }}

Yapılandırmanın doğru olup olmadığını kontrol ediyoruz:

nginx -t

Son olarak servisi yeniden başlatıyoruz:

servis nginx yeniden başlat

Fail2Ban

Fail2Ban'i yapılandırmaya başlamadan önce, daha fazla güvenlik için hizmeti durdurur ve kayıt defterini temizleriz:

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

Ardından, yapılandırma dosyasını oluşturuyoruz /etc/fail2ban/jail.local aşağıdaki özel içerikle:

# Özel yapılandırma dosyası /etc/fail2ban/jail.local # [VARSAYILAN] bulma zamanı = 43200; 12 saat bantime = 86400; 1 günlük maksimum deneme = 3; ban, 4. denemeden sonra yürürlüğe girecek [ssh] enable = 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 = 604800; 1 hafta maxretry = 0 [nginx-login] etkin = true filter = nginx-login action = iptables-multiport [name = NoLoginFailures, port = "http, https"] logpath = / var / log / nginx * / * erişim *. günlük bantime = 1800; 30 dakika [nginx-noscript] etkin = true action = iptables-multiport [name = NoScript, port = "http, https"] filter = nginx-noscript logpath = /var/log/nginx*/*access*.log maxretry = 0 [nginx-proxy] etkin = doğru eylem = iptables-multiport [ad = NoProxy, bağlantı noktası = "http, https"] filtre = nginx-proxy günlük yolu = /var/log/nginx*/*access*.log bantime = 604800 ; 1 hafta maxretry = 0 [güvenlik duvarı] etkin = true action = iptables-multiport [name = Firewall] filter = firewall logpath = /var/log/firewall.log maxretry = 0

Bu yapıldıktan sonra dizinde oluştururuz /etc/fail2ban/filters.d/ aşağıdaki dosyalar:

# /etc/fail2ban/filter.d/nginx-auth.conf # Kimlik Doğrulama filtresi # Temel kimlik doğrulama kullanılarak kimlik doğrulaması yapılamayan IP'leri engeller # [Tanım] failregex = temel kimlik doğrulama için kullanıcı / parola sağlanmadı. * istemci: user. *. * istemcisinde bulunamadı: kullanıcı. * parola uyuşmazlığı. * istemci: ignoreregex =
# /etc/fail2ban/filter.d/nginx-login.conf # Oturum açma filtresi # Web uygulamasının oturum açma sayfasını kullanarak kimlik doğrulaması yapılamayan IP'leri engeller # HTTP 200 için tarama erişim günlüğü + POST / sessions => başarısız oturum açma # [Tanım ] failregex = ^ -. * POST / oturumlar HTTP / 1 \ .. "200 ignoreregex =
# /etc/fail2ban/filter.d/nginx-noscript.conf # Noscript filtresi # .php, .pl, .exe ve diğer komik komut dosyaları gibi komut dosyalarını çalıştırmaya çalışan IP'leri engelleyin. # Eşleşir örn. # 192.168.1.1 - - "GET /something.php # [Tanım] failregex = ^ -. * GET. * (\. Php | \ .asp | \ .exe | \ .pl | \ .cgi | \ scgi) ignoreregex =
# /etc/fail2ban/filter.d/proxy.conf # Proxy filtresi # Sunucuyu proxy olarak kullanmaya çalışan IP'leri engeller. # Eşleşir örn. # 192.168.1.1 - - "GET http://www.something.com/ # [Tanım] failregex = ^ -. * GET http. * Ignoreregex =
# /etc/fail2ban/filter.d/firewall.conf # Güvenlik duvarı filtresi # [Tanım] failregex = ^. * IN_ (INVALID | PORTSCAN | UDP | TCP |). * SRC = . * $ ignoreregex =

Son olarak servisi başlatıp yapılandırmayı yüklüyoruz:

fail2ban-service -b fail2ban-client yeniden yükleme

Doğrulama

Son adım olarak kayıtları görüntüleyebiliriz. kuyruk-f o çoklu posta –tümünü takip et. Aslında, ikinci uygulama aynı anda birden fazla dosyanın görüntülenmesine izin verme ve temel sözdizimi vurgulama sağlama avantajını sunar.

VPS'de bir e-posta hesabının yapılandırılmamış olması durumunda, çoklu postayı başlatırken görünen bir uyarı mesajını devre dışı bırakmanız önerilir; bunun için aşağıdaki komutu yürüteceğiz:

echo "check_mail: 0"> ~ / .multitailrc

Aslında, günlükleri hızlı bir şekilde görüntülemek için kısa bir komutla, örneğin "flog" gibi bir takma ad (4) yapabiliriz:

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

1) Bunlar hayali değerlerdir.
2) Nasıl çalıştığını anladıktan sonra diğer hizmetleri etkinleştirmek kolaydır.
3) Daha fazla ayrıntı için, man sudoers'ı çalıştırın.
4) İsteğe bağlı olarak ~ / .bash_aliases dosyasına eklenebilir


6 yorum, sizinkini bırakın

Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.

  1.   msx dijo

    Bazı ilginç şeyler var, +1

  2.   yukiteru dijo

    @Hugo yapılandırmada bu satır:

    ssl_protocols SSLv3 TLSv1;

    SSLv3'ü ondan kaldırırım çünkü bu protokol Debian Jessie'de bile artık güvenli değildir, bu nedenle birçok hizmet bu protokolü kullanmaktan kaçınacak şekilde yapılandırılmıştır.

    Konuyla ilgili bilgiler burada:

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

    1.    Hugo dijo

      Buradaki fikir, ana hizmetleri HTTPS üzerinden sunmak değil, gerektiğinde HTTPS için kullanma olasılığını kaybetmeden SSH için 443 numaralı bağlantı noktasının nasıl kullanılacağını açıklamaktı, ancak uyarı için teşekkürler.

      Neyse, nginx yapılandırmasını biraz değiştirmek için makaleyi güncelledim ve tesadüfen bu şifreleme mekanizmalarıyla işleri biraz daha açıklığa kavuşturmak ve bazı küçük hataları düzeltmek için bazı yorumlar ekledim.

  3.   Daniel PZ dijo

    Bu harika eğitim için çok teşekkür ederim, şimdi uygulamaya koyacağım! :D, böyle devam et DesdeLinux, beni hep şaşırtıyorlar, Peru'dan selamlar.

  4.   Andekuera dijo

    Paylaştığınız için çok teşekkür ederim.

  5.   fernando dijo

    çok iyi bir rehber ve bu blogda başladığım için incilerden geliyor ama daha da fazlası, ilk vps'imi monte etmek üzereyim ve hala birçok sorunla karşılaşıyorum ama bu makale beni birçok şüphemden kurtardı, teşekkürler ve saygılar