Napisał: Patryk Krawaczyński
22/03/2021 w Bezpieczeństwo
O
d samego początku Uniksa (na którym oparty jest Linux) wszystko jest plikiem. Możemy spierać się o szczegóły, ale w większości przypadków jest to prawda. W dodatku w systemach Unix i pokrewnych systemach operacyjnych istnieje taki obiekt, jak deskryptor pliku (ang. file descriptor – FD, rzadziej fildes), który jest abstrakcyjnym wskaźnikiem / uchwytem (ang. handle) używanym do uzyskiwania dostępu do pliku lub innego zasobu wejścia / wyjścia, takiego jak potok (ang. pipe) lub gniazdo sieciowe (ang. network socket). Deskryptory plików stanowią część interfejsu programowania aplikacji POSIX – są nieujemną liczbą całkowitą, zwykle reprezentowaną w języku programowania C jako typ int
(ang. integer) (wartości ujemne są zarezerwowane, aby wskazać “brak wartości” lub stan błędu).
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
11/07/2018 w Bezpieczeństwo
J
eśli nie używasz dockera z pomocą docker-machine (standardowo na systemie OSX oraz Windows) to może dojść do sytuacji, gdy polecenia dockera doprowadzą do przejęcia hosta na którym zostały uruchomione. Jeśli dodamy naszego użytkownika systemu do grupy dockera lub zmienimy uprawnienia do gniazda sieciowego – to Twój użytkownik lub szkodliwe oprogramowanie będzie mógło uzyskać uprawnienia administratora bez konieczności podawania hasła.
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
15/05/2015 w Administracja, Debug
P
roblem: aplikacja uruchomiona na serwerze tomcat7 z nieznanych powodów w dość powolny, ale wykładniczy sposób zaczyna otwierać i przetrzymywać deskryptory plików. Z czasem skutkuje to osiągnięciem limitu otwartych plików i błędem: java.net.SocketException: Too many open files
.
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
02/09/2010 w Administracja, Debug
Jednym ze stanów połączenia protokołu TCP jest TIME_WAIT. Jest to stan, w którym następuje oczekiwanie w celu upewnienia się, że druga strona otrzymała potwierdzenie rozłączenia. Zgodnie z dokumentem RFC 793 połączenie w takim stanie może być najdłużej przez 4 minuty. W systemie Linux standardową wartością dla tego stanu jest 60 sekund. Podczas oczekiwania w stanie TIME_WAIT ponowne nawiązanie połączenia z klientem (retransmisja) kosztuje znacznie mniej niż nawiązanie nowego połączenia. Jednak utrzymywanie bardzo wielu połączeń w tym stanie wpływa niekorzystnie na wydajność serwera.
[ czytaj całość… ]
Ostatni komentarz :