Ważne jest przestrzeganie najlepszych praktyk w zakresie bezpieczeństwa, gdy tylko jest to możliwe, ale nie chcesz zbytnio utrudniać sobie pracy ani tracić snu, martwiąc się o najnowsze wyczyny.Z mojego doświadczenia wynika, istnieją dwa główne rzeczy, które mogą pomóc w utrzymaniu serwera prywatnego wystarczająco bezpieczny, aby rzucić się w internecie, zachowując zdrowy rozsądek:
1) Zabezpieczenia przez zapomnienie
Nie trzeba dodawać, opierając się na to w "realnym świecie" jest złym pomysłem i nie należy się nim bawić. Ale to dlatego, że w prawdziwym świecie, źli wiedzą, co tam jest i że istnieje łup.
Na prywatnym serwerze większość "ataków", które poniesiesz, będzie po prostu zautomatyzowanymi przeciągnięciami od maszyn, które zostały już zaatakowane, szukając domyślnych instalacji produktów, o których wiadomo, że są podatne na ataki. Jeśli twój serwer nie oferuje niczego, co kusi domyślnymi portami lub lokalizacjami domyślnymi, zautomatyzowany napastnik przejdzie dalej. Dlatego jeśli zamierzasz uruchomić serwer ssh, umieść go na niestandardowym porcie (> 1024) i prawdopodobnie nigdy nie zostanie znaleziony. Jeśli uda ci się oderwać od tej techniki na swój serwer internetowy, to świetnie, przenieś to również do niejasnego portu.
2) Zarządzanie pakietami
Nie skompilować i zainstalować Apache lub sshd od siebie źródła, chyba że bezwzględnie muszą. Jeśli to zrobisz, bierzesz na siebie odpowiedzialność za aktualizowanie najnowszych poprawek zabezpieczeń. Pozwól, aby opiekunowie pakietów z dystrybucji Linux, takich jak Debian lub Ubuntu, wykonali pracę za Ciebie. Zainstaluj z prekompilowanych pakietów dystrybucji, a pozostawanie w sieci staje się kwestią wydawania od czasu do czasu komendy apt-get update, która może być odmieniana przez komendę apt-get -u-dist-upgrade lub za pomocą dowolnego narzędzia do tworzenia GUI, które zapewnia Ubuntu.
Tak długo, jak pozwala na ruch zewnętrzny, jest częścią "prawdziwego świata". – icedwater