Ответы пользователя по тегу CentOS
  • Как правильно настроить iptables для такого варианта?

    a13xsus
    @a13xsus
    Lazy developer
    Ну вообще нужно знать устройство вашего openvpn, может у вас там маршрутизация хитрая. В общем выглядит как-то так:

    предполагаем, что политика INPUT и OUTPUT по умолчанию ACCEPT
    #разрешаем loopback
    iptables -A INPUT -i lo -j ACCEPT
    
    #разрешаем icmp
    iptables -A INPUT -p icmp -j ACCEPT
    
    #разрешаем коннект на 6292 tcp
    iptables -A INPUT -p tcp -m tcp --dport 6292 -j ACCEPT
    
    #настраиваем openvpn (это порты по-умолчанию)
    #разрешаем соединения на udp порт openvpn
    iptables -A INPUT -i eth0 -m state --state NEW -p udp --dport 1194 -j ACCEPT
    
    #разрешаем TUN соединения к openvpn серверу
    iptables -A INPUT -i tun+ -j ACCEPT
    
    #разрешаем форвардинг соединений с TUN интерфейса через другие интерфейсы
    iptables -A FORWARD -i tun+ -j ACCEPT
    iptables -A FORWARD -i tun+ -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
    iptables -A FORWARD -i eth0 -o tun+ -m state --state RELATED,ESTABLISHED -j ACCEPT
    
    #натируем клиентсткий vpn трафик в интернет (маску vpn подсети свою указывайте)
    iptables -t nat -A POSTROUTING -s 10.0.0.0/16 -o eth0 -j MASQUERADE
    
    #дальше настройка CloudFlare, взял отсюда https://rietta.com/blog/2012/09/10/using-iptables-to-require-cloudflare/
    #
    # CloudFlare Network has Access to HTTP (port 80)
    #
    iptables -A INPUT -s 204.93.240.0/24 -p tcp --dport http -j ACCEPT
    iptables -A INPUT -s 204.93.177.0/24 -p tcp --dport http -j ACCEPT
    iptables -A INPUT -s 199.27.128.0/21 -p tcp --dport http -j ACCEPT
    iptables -A INPUT -s 173.245.48.0/20 -p tcp --dport http -j ACCEPT
    iptables -A INPUT -s 103.22.200.0/22 -p tcp --dport http -j ACCEPT
    iptables -A INPUT -s 141.101.64.0/18 -p tcp --dport http -j ACCEPT
    iptables -A INPUT -s 108.162.192.0/18 -p tcp --dport http -j ACCEPT
    iptables -A INPUT -s 190.93.240.0/20 -p tcp --dport http -j ACCEPT
    #
    # CloudFlare Network has Access to Encrypted HTTPS (port 443)
    #
    iptables -A INPUT -s 204.93.240.0/24 -p tcp --dport https -j ACCEPT
    iptables -A INPUT -s 204.93.177.0/24 -p tcp --dport https -j ACCEPT
    iptables -A INPUT -s 199.27.128.0/21 -p tcp --dport https -j ACCEPT
    iptables -A INPUT -s 173.245.48.0/20 -p tcp --dport https -j ACCEPT
    iptables -A INPUT -s 103.22.200.0/22 -p tcp --dport https -j ACCEPT
    iptables -A INPUT -s 141.101.64.0/18 -p tcp --dport https -j ACCEPT
    iptables -A INPUT -s 108.162.192.0/18 -p tcp --dport https -j ACCEPT
    iptables -A INPUT -s 190.93.240.0/20 -p tcp --dport https -j ACCEPT
    
    #RELATED,ESTABLISHED соединения разрешаем
    iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    
    #все остальное запрещаем
    iptables -A INPUT -j REJECT --reject-with icmp-port-unreachable


    Правила для CloudFlare будет удобней вынести в отдельную цепочку.
    Ответ написан
    Комментировать
  • Удалённый сервер на windows server 2012 r2?

    a13xsus
    @a13xsus
    Lazy developer
    Нужно убедиться, что процессор поддерживает виртуализацию и включить её в BIOS, если она выключена. Затем устанавливаете Windows 2012 R2 Standard.

    Включаете удаленное подключение по RDP. Свойства Моего компьютера - Настройка удаленного доступа - отмечаем Разрешить удаленные подключения и опцию ниже с проверкой подлинности на уровне сети.

    Поднимаете службу Hyper-V (службы устанавливаются в Диспетчере серверов, который открывается при запуске автоматически либо доступен сразу на панели задач). В ней создаёте внутренний виртуальный коммутатор, который будете назначать виртуальным машинам. Тут 10 кликов, 5 минут времени.

    Поднимаете службу RRAS. В ней поднимаете VPN (VPN вам желателен для администрирования, но можете и пропустить этот шаг, если дополнительная защита не нужна) и NAT (в NAT добавляем внешний сетевой интерфейс). В свойствах службы добавляем пул адресов, отличный от локального пула. Вашей учетке Администратора разрешаем удаленные подключения по VPN (в свойствах учетной записи). Тут 15-10 кликов, 10 минут времени. Гайд, например, здесь: winitpro.ru/index.php/2014/01/16/nastrojka-vpn-ser...

    Если безопасность важна, тогда в настройках VPN на вкладке Безопасность укажите ключ IPSEC (пароль) и в Методах проверки подлинности оставьте только MSCHAP-V2.

    В Hyper-V создаёте нужные вам виртуальные машины. ОС любая, однако некоторые unix-based системы запустятся только на первом поколении виртуальных машин (поколение выбирается при создании машины), когда как для свежих Windows желательно выбирать второе.

    Для того, чтобы связываться с сервисами на виртуальных машинах, нужно пробросить к ним порты от хоста. Проброс делается в службе RRAS, а именно в NAT - выбираем ранее добавленный сетевой интерфейс - двойной клик - вкладка Службы и порты.

    В брандмауэре (вполне сойдёт стандартный брандмауэр Windows, разумеется, если он грамотно настроен правилами) настраиваем правило для входящего подключения на порт RDP (3389, если не меняли) таким образом, чтобы доступ был только с пула VPN адресов.

    Если хотите подобие SSH -- администрируйте с помощью netsh.
    Ответ написан
    7 комментариев
  • Как добавить Gateway на eth0 в elastix?

    a13xsus
    @a13xsus
    Lazy developer
    Попробуйте вручную средствами centos. В каталоге /etc/sysconfig/network-scripts/ в файлах с именами ваших сетевых интерфейсов (eth0, eth1) меняйте настройки. Например,

    # Microsoft Corporation Hyper-V Network Adapter
    DEVICE=eth0
    BOOTPROTO=static
    BROADCAST=192.168.0.255
    DHCPCLASS=
    HWADDR=00:15:5D:5A:73:02
    IPADDR=192.168.0.7
    NETMASK=255.255.255.0
    NETWORK=192.168.0.0
    ONBOOT=yes
    GATEWAY=192.168.0.1

    Тогда в /etc/hosts не забудьте дать ip вашему хосту, что-то типа

    127.0.0.1 localhost 192.168.0.7 localhost.localdomain

    А вообще если centos не позволит иметь несколько шлюзов по умолчанию, то нужно будет просто прописать статические маршруты (ip ro).
    Ответ написан
    1 комментарий