Любеч уперше згадано в „Повісті времінних літ" під 882 ро-ком, коли київський князь Олег захопив його й настановив там свого посадника. У договорі Олега з греками під 907 роком Любеч значиться серед інших міст України-Русі. А 949 року називає це велике торгове місто візантійський імператор Константан Багрянородний у трактаті „Про управління державою".
Любеч виник у місцевості з дуже складним рельєфом, подібним до київського, на краю високого лівобережного плато Дніпра. Топографічне розміщення давало можливість контролювати великий водний шлях „з варяг у греки". Любеч ніби замикав Верхній Дніпро, річки Сож і Березину, захищаючи північні підступи до Києва. Тож тут не раз відбувалися військові сутички, що вирішували долю великокнязівського столу і всієї Київської держави. Так, 1016 року, перемігши в Любецькій битві Святополка Окаянного, Ярослав Мудрий опанував Київ; битва 1024 року під Лиственом, недалеко від Любеча, започаткувала формування незалежного від Києва Чернігівського князівства. У ХІ-ХІІ століітях Любеч став одним з найзначніших міст Чернігово-Сіверської землі. Наступні два століття він був центром удільного князівства. 1097 року відбувся відомий Любецький з'їзд князів Київської Русі, який остаточно закріпив феодальний принцип „каждо да держить отчину свою".
Структура укріплень Любеча давньоруської доби була дводільною. Високий останець лівого берега Дніпра площею 0,35 гектара зайняв дитинець, а з півдня і заходу його оточував півколом укріплений посад.
На думку академіка Б.Рибакова, який вважав дитинець замком, його заснував наприкінці XI століття чернігівський князь Володимир Мономах на місці давнього роменського городища. Військово-топографічні умови для спорудження укріплень були сприятливі: городище з дуже крутими схилами з трьох боків було оточене глибокими ярами, підносилося над заплавою на 40 метрів. Далі на схід протікала річка Гончарівка - ліва притока Дніпра.
Дитинець врядигоди зазнавав руйнувань: 1147 року його спалив смоленський князь Ростислав, 1157 року понищили половці, але щоразу укріплення відбудовували.
У 1957-1960 роках тут провадила розкопи Чернігівська експедиція Інституту археології АН СРСР під керівництвом Б.Рибакова. Досліджено всю територію городища, де знайдено численні залишки дерев'яних споруд, що добре збереглися, їх інтерпретовано як рештки князівського замку XII століття. За результатами розкопів Б.Рибаков виконав графічну реконструкцію замку, який, на гадку дослідника, мав оборонну огорожу - земляний вал з дерев'яними городнями, заповненими глиною в основі. На валу стояли дубові стіни із заборолами. Від замкового двору до стін прилягали зруби житлово-господарського призначення, що мали пласкі покриття - бойові майданчики. Уздовж стіни було вкопано мідні казани для „вару", яким поливали нападників під час штурму. Головний і, певно, єдиний в'їзд до замку містився з південного заходу. Дістатися до нього можна було лише через рів із звідним дерев'яним мостом на ланцюгах. Від передньої надбрамної вежі дорога круто йшла вгору між двома дерев'яними стінами й вела до головної замкової брами, що фланкувалася чотиригранними вежами. Відразу ж за брамою, на території замкового двору стояла висока чотириярусна вежа, що виконувала функції донжона, її не було сполучено із загальним периметром укріплень. Окрім згаданих, замок мав ще не менш ніж чотири чотиригранні вежі. До південної лінії замкових укріплень прилягала велика споруда, інтерпретована Б.Рибаковим як триповерховий князівський палац. На північ від нього була невелика дерев'яна церква. Східну частину замкового двору займав цвинтар. Замок мав три підземні хідники.
Земляний вал заввишки до 12 метрів і рів півмісяцем охоплювали посад давньоруського Любеча. При трасуванні їх найповніше враховано сприятливі військово-топографічні умови: північна й східна ділянки проходять уздовж крутих схилів Дніпрового берега й долини Гончарівки. Оборонна огорожа посаду прилягала до південно-східної та північно-західної замкових веж. Укріплення посаду мали дві брами: одну з південно-західного боку, звідки йшла пряма вулиця до замкового мосту, другу - на схід від замку в долині.
Під час археологічних досліджень у Любецькому замку не виявлено слідів монголо-татарського погрому. 1356 року Любеч разом з усією Чернігово-Сіверщиною зайняв литовський князь Ольгерд. 1484 року Казимир Ягеллончик віддав місто князеві Василю Верейському. 1503 року Любеч захопила Москва, а через п'ять років він знову відійшов до Литовської держави, діставшись київському воєводі Юрієві Монтовтовичеві. 1516 року місто перейшло у власність князевого зятя Альбрехта Гаштольда. Після Люблінської унії 1569 року місто стало центром Любецького староства. У XVI столітті замок ремонтували й відбудовували. Зберігся інвентар замку 1606 року. З нього видно, що структура міських укріплень лишилася дводільною. Оборонна огорожа колишнього посаду, який називали тепер містечком, складалася з рову й валу, де стояв дубовий острог (частокіл). З інвентаря відомі назви двох згадуваних раніше брам: верхньої південно-західної - Київська (звідси йшов шлях на Київ) і нижньої в долині Гончарівки - Брагинська (тут починалася дорога до переправи через Дніпро і далі до міста Брагина).
В інвентарі докладно описано замкові споруди. Коли порівнювати цей опис з реконструкцією Б.Рибакова, впадає в око неправдоподібна ідентичність замкових споруд XII і XVII століть: дорога до замку йшла через міст, на якому „звід з двома ланцюгами". Згідно з інвентарем, „у замку брама й немала вежа на два поверхи, збудована в дві стіни: праворуч від вежі дві городні з палісадами в дві стіни, на низу зруб і друга вежа". Тут термін „дві городні" вжито для означення двох прясел, від вежі до вежі, дерев'яної оборонної стіни у вигляді тарас. Палісади при городнях або ж тарасах заміняли земляний насип. Як подає інвентар, ліворуч також були дві городні, а при них - житлові споруди. Далі - дві новозбудовані городні з палісадами до наступної двоповерхової вежі. От-же, 1606 року замок мав, окрім надбрамних, ще не менш ніж шість дерев'яних веж.
Любецьке староство, межуючи із землями, що входили до складу Московської держави, не раз було ареною бойових дій. З початком Визвольної війни 1648 року Любеч став центром сотні Чернігівського козацького полку. За Руїни місто зазнало нищення і 1669 року універсалом гетьмана Дем'яна Многогрішного було звільнено від деяких податків. З кінця XVII століття Любеч належав Іванові Мазепі. За його господарювання замок було відремонтовано, там споруджено дерев'яний гетьманський палац. 1708 року Любеч надано чернігівському полковникові, згодом наказному гетьманові Павлу Полуботкові.
У середині XVIII століття укріплення Любеча вже не відповідали статусові прикордонного містечка на межі з Річчю Посполитою. Тому під загальним керівництвом інженера-підполковника Данила Дебоске - та було розроблено відповідні проектні пропозиції. „План пограничного містечка Любич з далною цитуациею на три версты" докладно фіксує стан укріплень на 1749 рік: показано вал і рів, дві брами, причому Київську на той час уже називали Верхньою, а Брагинську - Подільською. До замку, як і в XVII столітті, був в'їзд з південного заходу: від мосту через рів дорога йшла між двома паралельними стінами до головної замкової брами на горі, фланкованої двома чотиригранними вежами. За ними, посеред замкового двору, на плані зображено ще дві чотиригранні вежі, а в східній частині, на тому місці, де археологи знайшли нібито рештки князівського палацу XII століття, показано „в замку старий дім, збудований колишнім Мазепою". Зображені залишки замку дивовижно подібні до вже згадуваної реконструкції Б.Рибакова, а це свідчить, що він неправильно інтерпретував рештки споруд, розкопаних у 1957-1960 роках.
Щоб посилити обороноздатність „пограничного містечка Любича", на схід від нього на окремій горі було вибрано місце для величезної нової земляної фортеці. Зберігся проект 1749 року, складений за всіма правилами тодішньої європейської фортифікації, але його так і не здійснили через зміну в другій половині XVIII століття військово-політичної ситуації на Наддніпрянщині.
Залишки любецьких укріплень збереглися до нашого часу. На території урочища Замкова Гора - пам'ятки археології загальнодержавного значення - 1982 року з нагоди 1100-річчя Любеча встановлено гранітний пам'ятний знак. Напис на ньому інформує, що на цьому городищі був замок та що його досліджував академік Б.Рибаков. Земляні вали й рови посаду ще й тепер добре видно в північній частині поселення.