diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7084b4b5b0175d519de8e8930055c350f7441c3c..b84dcfa6f4a7ec3c87a4031778c31c8af027fc0e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -40,7 +40,10 @@ target_include_directories(dhtnet PUBLIC
 )
 target_compile_definitions(dhtnet PUBLIC PJ_AUTOCONF=1)
 
-install(TARGETS dhtnet)
+set_target_properties(dhtnet PROPERTIES PUBLIC_HEADER "${dhtnet_HEADERS}")
+install(TARGETS dhtnet
+    PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dhtnet
+)
 
 if (BUILD_TESTING AND NOT MSVC)
     pkg_search_module(Cppunit REQUIRED IMPORTED_TARGET cppunit)