Как стать автором
Обновить

Комментарии 47

Конечно любопытно. Но, имхо, каждый использует роутер в своих целях, так как ему надо.
Зачем вот мне нат, если я им не пользуюсь? Или SSH и настройки фаервола?)
Это базовый конфиг для ваших целей. У меня для своих целей есть свой базовый конфиг =))
Шаблон блочный, если что то не нужно — просто пропусти эти команды…
Конечно каждый настраивает роутер как ему необходимо, но думаю данный костяк настроек будет аналогичен более чем в половине конфигов.
Для меня это просто памятка в какой последовательности вводить какие команды, дабы ничего не пропустить.
Не заметил каких-то «особенных» целей. Все вполне популярно. Если вам NAT не надо — так и не настраивайте.
Тогда в чем смысл? Видимо слово «базовый» подразумевает, что этот конфиг подходит для всех роутеров, и после настройки базового конфига идет уже конкретика. Это в идеале.

У нас много каталистов, которые используются как точки агрегации. Так вот там базовый конфиг — это куча вланов, дшсп пулы, оспф, авторизация, акцесс листы и тп и тд. Но это никому здесь не надо, так как у всех свои цели.

Это я все к тому, что смысл этого топика — ноль. Без обид конечно же….
каталисты не настраивал, там думаю своя специфика…
Здесь мы рассматриваем маршрутизаторы в общем случае — есть LAN, есть Интернет, их надо как-то связать. Все вполне наглядно, не имея опыта в настройке оборудования cisco подобный конфиг может немного помочь. В свое время мне нечто типа подобного руководства очень не хватало — приходилось разбираться с нуля в элементарных вещах…
Если вам это неинтересно — на Хабре много других статей которые стоит почитать…
для базовой настройки можно добавить: snmp-server, отключение console (no modem enable), отключение веб-инт-са (ip http server|secure server), отключение telnet (transport input telnet ssh) и отключение баннера входа (banner login)
snmp в филиалах я настраиваю обычно временно — для тестирования пропускной способности каналов в основном:
snmp-server community public RO
snmp-server ifindex persist

а после erase startup-config по дефолту и так отключены ip http server'а и баннеры

telnet я оставляю на всякий пожарный для экстренных случаев когда нет под рукой ssh-клиента
Базовая настройка для какого ИОСа? Скорее всего вы имеете ввиду ИОС адвансед-секурити.
Может повторюсь, но, ИМХО, понятие базовый обозначает четкие определения среды.
А серии 800, 1700 и 1800 различаются между собой по железу. Если я не ошибаюсь в 800 и 1700 серии нет interface FastEthernet0/0.

Ну и я бы еще добавил netflow snmp и tacacs+ :)
Изначально писалось под обычный IOS 12.4, без Т
Ничего нестандартного в командах вроде нет, должно во всех основных ветках работать.

Железо конечно разное, но в конфигурировании по сути отличаются только именованием WAN интерфейсов — FastEthernet0 или FastEthernet0/0 или GigabitEthernet0 (в 890-х) это неважно. Шаблон написан для человека понимающего где у него какой интерфейс и все что ему надо так это исправить имена интерфейсов, номера локальной сети и забить параметры подключения к интернету.
netflow и tacacs+ я у себя не использую, к томуж по моим понятиям это выходит за рамки базового конфига ;)
Это выходит за рамки у вас, а у кого-то нет :) Условия и среда у всех разная.
Если говорить о совсем универсальном базовом конфиге, то достаточно задать пароли, временную зону и айпи на интерфейс, с которого потом будете настраивать.

Обычный IOS 12.4, без Т
— ipbase имеете ввиду?
Обычно минимальная поставка такого рода железяк идет с IOS ipbase, которая не знает про ssh, dot1q и еще многие вещи.
нет, который mainline
и как минимум секьюрити фьючерсет т.к. используем VPN
Спасибо. Пригодится
НЛО прилетело и опубликовало эту надпись здесь
Если честно не помню… кажись без этого VPN не работал… Мой реальный шаблон более обширен, но полон специфических для моей сети вещей…
Nice!
thank you, and God Bless
Можно еще более автоматизировать. Написать на bash небольшой скрипт, в котором, в качестве входных данных будут использоваться настройки сети для определенного филиала, исходным будет конфиг, который помещается в директорию tftp и собственно от куда сам маршрутизатор забирает готовый конфиг.
Коллега, не хотелось бы огульно критиковать, но есть много «НО»…

Если бы вы тихонько использовали бы свои конфиги я бы об этом не узнал :) Но вывесив их на обозрение вы рискуете ввести в заблуждение.

1. Самое мне не понятно: зачем столько фаеволинга? Зачем делать INSPECT_IN? В вашем конфиге он абсолютно бессмысленен. Он будет нужен только если на внутреннем интерфейсе тоже есть ACL, а также анонсирован какой-нить сложный протокол типа ftp.

2. Категорически не согласен с ip source-routing: он то вам зачем? Его везде рекомендую выключать

3. Зачем telnet? Если есть возможность ssh. Впрочем, здесь на вкус и цвет

4. Далеко не обязательно делать DNS. Хотя удобно, спору нет

5. Зачем разрешать ssh,ntp,dns везде? Для внутреннего трафика отработает INSPECT_OUT, а для а для трафика рутера достаточно разрешить только ответы на адрес его интерфейса. Опять же, часто можно написать
ip inspect INSPECT_OUT router
и тогда трафик рутера тоже будет инспектироваться

Как раз я и ждал конструктивную критику :)
Я уверен что конфиг не самый оптимальный и ваши советы очень важны в его полировке…
1. INSPECT_IN я кажись писал для DMZ, в данном конфиге пожалуй ему не место…
2. выключим
3. телнет как я писал оставлен на всякий пожарный, снаружи он закрыт, а изнутри бывает надо с любой машины зайти подправить чтото по быстрому. По умолчанию конечно используется SSH
4. Вроде у цыски DNS кеширующий, т.ч. пусть будет
5. Про ip inspect INSPECT_OUT router не слыхал, читал что внутренний трафик не инспектируется… или так было на старых прошивках… Спасибо за подсказку
Да, так было раньше. Теперь можно.

Еще разглядел:
если используете
aaa new-model

то не нужно писать
login local

Эта команда нужна для доступа без aaa new-model. А так по умолчанию стоит правило
aaa authentication default local

Если надо поменять
line vty 0 4
login authen {AAARULE}


Еще логично, если делаете пользователя 15 уровня привилегий, эти привилегии проверять:
aaa author exec default local


и ещё не забыть дать в конце команду
wr


:))
Когда то давно без строчки
aaa authentication login default local
на какойто цыске не хотело пускать по SSH, потому так сложилось исторически :)
Надо будет попробовать ее сделать опциональной…

Гм, а команды
aaa author exec default local
я не вижу в своих версиях IOS'а…

Команду
write
я надеюсь все знают когда применять, как и
conf t
в начале всего процесса конфигурирования ;)
Не, вот против этой команды
aaa authentication login default local

я ничего не имею.

Я имел ввиду тут
line vty 0 4
login local

последняя строчка не нужна

А про авторизацию: вы не перепутали
aaa authorization default local
а у меня и нету в конфиге строчек…
line vty 0 4
 login local


или вы имеете ввиду что надо сделать на всякий случай
line vty 0 4
 no login local

??
Упс… Мой косяк: мне казалось, что я у вас углядел эту команду. Спать надо больше, сорри :)

Я не люблю делать
privilege 15
на терминальных линиях. Т.к. в этом случае любой входящий сразу становится суперюзером.
А если я хочу кому-то дать доступ к уровню 15, а кому-то обрезать?
Ну просто доступ с цыскам имею только я, а я себе доверяю полностью :)
Хотя согласен дырка в безопасности еще та…
тогда для базовой настройки firewall достаточно:
ip access-list extended FIREWALL
 permit tcp any any eq 22
 deny any any
ip inspect name INSPECT_OUT router
ip inspect name INSPECT_OUT dns
ip inspect name INSPECT_OUT icmp
ip inspect name INSPECT_OUT ntp

??
Да. Мало того, можно ещё сузить, указав (не во всех ИОСах)
permit tcp any int f0/0 eq 22


deny нижний как вы понимаете писать не обязательно.
deny я для наглядности добавил

но не совсем понимаю смысла
permit tcp any int f0/0 eq 22
access-list же и так висит на int f0/0 и только входящий трафик на этот интерфейс и фильтрует
А теперь представим, что мы в процессе настройки написали

ip nat inside source static {LOC_IP} {GLOB_IP}

и в тот же миг откроется доступ на хост LOC_IP по ssh
Ах вы в этом смысле…
Я просто статическую трансляцию нигде не использую, потому не задумывался о такой возможности…
Поправим в топике настройки файрвола тогда, спасибо за советы
пытаюсь настроить на Cisco 851 файрвол таким образом — не проходит трафик роутера с
ip inspect name INSPECT_OUT router
:(
прошивка c850-advsecurityk9-mz.124-15.T12
Хм… Странно.

А куда вешаете правило инспектирования?
Разрешаю побить меня палками!

Завел всех в заблуждение по беспамятству!

Разрешить трафик рутера можно, но вот так:

ip insp name FROMIN tcp router-traffic
ip insp name FROMIN udp router-traffic

Ещё раз прошу прощения.

ЗЫ Ноги растут из ИОСа более ранних ерсий. Там достаточно было одного слова. Сейчас это ключевое слово есть, но означает оно «протоколы маршрутизации, запущенные на рутере»
Я в цисках новичек, хотелось бы узнать, для чего делается:
service password-encryption, если затем
username admin privilege 15 password 0 PASSWORD,
где 0 — «Specifies an UNENCRYPTED password will follow».

Или эти настройки не связаны?
Чтобы при последующем просмотре конфига посторонним человеком не показывались ключи и пароли в «чистом» виде.
0 — это когда вы сами вколачиваете пароль (можно 0 не вводить вовсе)

а если вам надо в конфиг вколотить пароль, который зашифрован и вы его не знаете, но хотите перенести, то тогда пишете
user USER pass 7 {шифр пароля}

Впрочем, эта 7 настолько не стойкая, что считать её за защиту нельзя.
Тогда уж лучше писать
user USER secret {пароль}
Кое-что из моего общего шаблона:
no service tcp-small-servers
no service udp-small-servers
service tcp-keepalives-in
service tcp-keepalives-out
no ip finger
no service finger
no ip http server
no ip http secure-server
no ip bootp server
no boot host
no boot network
no service config
no ip redirects
no ip directed-broadcast
no ip proxy-arp
no ip source-route
service timestamps debug datetime localtime
service timestamps log datetime localtime
service password-encryption
service sequence-numbers
no logging console
clock timezone MSK 3
clock summer-time MSD recurring last Sun Mar 2:00 last Sun Oct 3:00
ip subnet-zero
no ip domain-lookup
ip icmp rate-limit unreachable 1000
ip icmp rate-limit unreachable DF 1000

Для Catalyst'ов:
errdisable recovery cause bpduguard
errdisable recovery interval 400

На типичном «клиентском» порту коммутатора:
interface range FastEthernet 0/1 — 24
desc HOST
switchport access vlan XXX
switchport mode access
switchport nonegotiate
flowcontrol receive off
spanning-tree bpduguard enable
storm-control broadcast level 1.00
storm-control multicast level 1.00
storm-control unicast level 90.10
storm-control action trap
spanning-tree portfast
no snmp trap link-status
В идеале ещеб расписать что какая команда включает/отключает чтоб понимать что делаешь
Я б например некоторые у себя бы не применял ;)
Какие именно? Я вроде выбрал самые «безобидные» :)
не очень понимаю например зачем отключать
no ip domain-lookup
из соображений безопасности?
Лично для меня, при работе с маршрутизаторами, трансляция адресов не нужна — все дебажится по IP. Но иногда ошибочно введя какую-нить команду неправильно, например png вместо ping, получаем Translating «png»...domain server, что отнимает время.
На маршрутизаторе это не совсем Ваш шаблон :)

Это часть шаблона, которую делает команда
autosecurity


Это не говорит о том, что это плохие команды, просто хотел уточнить, откуда они :) Так циска рекомендует.
Никогда не пользовался командой «autosecurity» и не знал о ее существовании.
Верю. Но откуда-то вы эти команды взяли? От старших товарищей, с сайта циско.ком…

А там тоже ничего нового не придумали :)

Если интересно, задайте, скажем, в GNS эту команду и посмотрите, что она делает.

Первые минимум 10 строк точно такие же как в Вашем шаблоне :)

ЗЫ Я вовсе не наезжаю и не пытаюсь в чем-то обвинять
Часть команд из корп.стандарта по безопасности, часть из жизни и сайта циско.ком
Могу немного из «простого» (без групп серверов и прочего) шаблона настройки такакса привести:
tacacs-server host ххх.ххх.ххх.ххх
tacacs-server key хххххххххххххх
aaa new-model
aaa authentication login default group tacacs+ enable
aaa authentication enable default group tacacs+ enable
aaa authorization exec default group tacacs+ if-authenticated

После этого в line vty автоматически удаляются login local или password (если они там были) и для дальнейших действий надо уже перелогиниться на девайс с такаксной учеткой.

aaa accounting exec default start-stop group tacacs+
aaa authorization config-commands
aaa authorization commands 1 default group tacacs+ if-authenticated
aaa authorization commands 15 default group tacacs+ if-authenticated
aaa accounting commands 1 default start-stop group tacacs+
aaa accounting commands 15 default start-stop group tacacs+
aaa accounting network default start-stop group tacacs+
aaa accounting connection default start-stop group tacacs+
aaa accounting system default start-stop group tacacs+

Ну и напоследок:
access-list 2666 permit tcp 192.168.0.0 0.0.255.255 any eq 22 log
access-list 2666 deny ip any any log
line con 0
no password
exec-timeout 10 0
privilege level 0
exit
line vty 0 4
exec-timeout 10 0
access-class 2666 in
transport input ssh
exit
line vty 5 15
exec-timeout 10 0
access-class 2666 in
transport input ssh
exit
еще добавьте, чтобы после настройки interface Vlan1 не забывали делать no shutdown
так как по умолчанию интерфейс в shut'е
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории