<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>Lassi's homepage</provider_name><provider_url>https://lassinsivut.eu/en</provider_url><title>Linux palvelimen perusturvallisuus - Lassin kotisivut</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="f3QYY3Nrbh"&gt;&lt;a href="https://lassinsivut.eu/en/palvelimen-perusturvallisuus/"&gt;Linux palvelimen perusturvallisuus&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="https://lassinsivut.eu/en/palvelimen-perusturvallisuus/embed/#?secret=f3QYY3Nrbh" width="600" height="338" title="&#x201C;Linux palvelimen perusturvallisuus&#x201D; &#x2014; Lassin kotisivut" data-secret="f3QYY3Nrbh" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script&gt;
/*! This file is auto-generated */
!function(d,l){"use strict";l.querySelector&amp;&amp;d.addEventListener&amp;&amp;"undefined"!=typeof URL&amp;&amp;(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&amp;&amp;!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),o=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),c=new RegExp("^https?:$","i"),i=0;i&lt;o.length;i++)o[i].style.display="none";for(i=0;i&lt;a.length;i++)s=a[i],e.source===s.contentWindow&amp;&amp;(s.removeAttribute("style"),"height"===t.message?(1e3&lt;(r=parseInt(t.value,10))?r=1e3:~~r&lt;200&amp;&amp;(r=200),s.height=r):"link"===t.message&amp;&amp;(r=new URL(s.getAttribute("src")),n=new URL(t.value),c.test(n.protocol))&amp;&amp;n.host===r.host&amp;&amp;l.activeElement===s&amp;&amp;(d.top.location.href=t.value))}},d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",function(){for(var e,t,s=l.querySelectorAll("iframe.wp-embedded-content"),r=0;r&lt;s.length;r++)(t=(e=s[r]).getAttribute("data-secret"))||(t=Math.random().toString(36).substring(2,12),e.src+="#?secret="+t,e.setAttribute("data-secret",t)),e.contentWindow.postMessage({message:"ready",secret:t},"*")},!1)))}(window,document);
//# sourceURL=https://lassinsivut.eu/wp-includes/js/wp-embed.min.js
&lt;/script&gt;</html><thumbnail_url>https://lassinsivut.eu/wp-content/uploads/2023/03/Linuxsecurity.jpg</thumbnail_url><thumbnail_width>1280</thumbnail_width><thumbnail_height>720</thumbnail_height><description>Linux palvelimen perusturvallisuuden takaaminen LOGIEN TARKISTUS #tarkistetaan kirjautumisyritykset palvelimelle reaaliaikaisesti tail -f /var/log/auth.log #LOGIEN V&#xC4;RITYS apt install grc grc tail -f /var/log/auth.log (multitail my&#xF6;s useammalle logille kerralla) FAIL2BAN apt-get update apt-get install fail2ban systemctl status fail2ban nano /etc/fail2ban/jail.conf #ignoraa lokaalin koneen ignoreip = 127.0.0.1/8 #m&#xE4;&#xE4;ritell&#xE4;&#xE4;n bannin kesto bantime = 600 #m&#xE4;&#xE4;ritell&#xE4;&#xE4;n monta yrityst&#xE4; kirjautumisessa on maxretry = 3 #t&#xE4;m&#xE4; l&#xE4;hett&#xE4;&#xE4; postia root k&#xE4;ytt&#xE4;j&#xE4;lle ett&#xE4; joku on bannattu destemail = root@localhost sendername = Fail2Ban banned user! mta = sendmail action = %(action_mwl)s #t&#xE4;ll&#xE4; saadaan postiin logitedot k&#xE4;tev&#xE4;sti action_mw #t&#xE4;ll&#xE4; kuitenkin saa eniten action_mwl #t&#xE4;ll&#xE4; komennolla pys&#xE4;ytet&#xE4;&#xE4;n fail2ban systemctl fail2ban stop #t&#xE4;ll&#xE4; aloitetaan systemctl fail2ban start #t&#xE4;ll&#xE4; tarkistetaan nykyinen tilanne systemctl status fail2ban # tarkistetaan jaili sek&#xE4; estetyt ipt sek&#xE4; niiden m&#xE4;&#xE4;r&#xE4; fail2ban-client status sshd UFW PALOMUURI apt install ufw systemctl enable ufw systemctl start ufw systemctl status ufw #avataan palomuuriin portti ufw allow &#x201D;portti&#x201D; #avataan portti 80 ufw allow 80 OPENSSH #Asennetaan ssh apt install openssh-server #Otetaan ssh k&#xE4;ytt&#xF6;&#xF6;n samalla my&#xF6;s koneen startuppiin systemctl enable ssh #Tarkistetaan nykyinen tilanne ssh systemctl status sshd #Pys&#xE4;ytet&#xE4;&#xE4;n ssh systemctl stop sshd nano /etc/ssh/sshd_config #vaihdetaan oletus portti toiseen #Port22 port222 #Kiellet&#xE4;&#xE4;n roottina kirjautuminen #PermitRootLogin PermitRootLogin no #Annetaan lassi k&#xE4;ytt&#xE4;j&#xE4;lle lupa kirjautua AllowUsers lassi #k&#xE4;ynnistet&#xE4;&#xE4;n ssh uudestaan systemctl restart sshd netstat -tulpn netstat -tulpn | grep 22 ufw allow ssh ufw allow 22 SSH PARANTELU #Asenntaan moduulit ja sovellukset jotka yhdist&#xE4;v&#xE4;t hy&#xF6;kk&#xE4;&#xE4;j&#xE4;n ip-osoitteen maahan apt-get install geoip-bin geoip-database #Luodaan scripti joka hallitsee p&#xE4;&#xE4;syn nano /usr/local/bin/ipfilter.sh #!/bin/bash ALLOW_COUNTRIES=&#x201D;IN US&#x201D; LOGDENY_FACILITY=&#x201D;authpriv.notice&#x201D; if [ $# -ne 1 ]; then echo &#x201D;Usage: `basename $0` &#x201D; 1&gt;&amp;2 exit 0 # return true in case of config issue fi if [[ &#x201D;`echo $1 | grep &#x2019;:&#x2019;`&#x201D; != &#x201D;&#x201D; ]] ; then COUNTRY=`/usr/bin/geoiplookup6 &#x201D;$1&#x201D; | awk -F &#x201D;: &#x201D; &#x2019;{ print $2 }&#x2019; | awk -F &#x201D;,&#x201D; &#x2019;{ print $1 }&#x2019; | head -n 1` else COUNTRY=`/usr/bin/geoiplookup &#x201D;$1&#x201D; | awk -F &#x201D;: &#x201D; &#x2019;{ print $2 }&#x2019; | awk -F &#x201D;,&#x201D; &#x2019;{ print $1 }&#x2019; | head -n 1` fi [[ $COUNTRY = &#x201D;IP Address not found&#x201D; || $ALLOW_COUNTRIES =~ $COUNTRY ]] &amp;&amp; RESPONSE=&#x201D;ALLOW&#x201D; || RESPONSE=&#x201D;DENY&#x201D; if [[ &#x201D;$RESPONSE&#x201D; == &#x201D;ALLOW&#x201D; ]] ; then logger -p $LOGDENY_FACILITY &#x201D;$RESPONSE sshd connection from $1 ($COUNTRY)&#x201D; exit 0 else logger -p $LOGDENY_FACILITY &#x201D;$RESPONSE sshd connection from $1 ($COUNTRY)&#x201D; exit 1 fi #T&#xE4;m&#xE4; muutos pit&#xE4;&#xE4; tehd&#xE4; jos halutaan ett&#xE4; scripti juoksee! chmod +x /usr/local/bin/ipfilter.sh #Lis&#xE4;t&#xE4;&#xE4;n ssh listalle omat muutokset jotta j&#xE4;rjestelm&#xE4;&#xE4; ohjaa tuo uusi scripti ja muut asennetut ohjelmat. nano /etc/hosts.deny sshd: ALL vsftpd: ALL #M&#xE4;&#xE4;ritell&#xE4;&#xE4;n viel&#xE4; mist&#xE4; scripti l&#xF6;ytyy. nano /etc/hosts.allow sshd: ALL: spawn /usr/local/bin/ipfilter.sh %a vsftp: ALL: spawn /usr/local/bin/ipfilter.sh %a</description></oembed>
