как настроить сервер человечности, чтобы быть (надежно) доступным из Интернета?

(принесите извинения заранее, я - проокна, недавно преобразованные в человечность..., если мои вопросы очевидны, скажите мне).

Я хочу создать сервер человечности, непрерывно подключаемый к Интернету. Я владею только IP-адресом. Основная цель сервера состоит в том, чтобы служить контроллером исходного кода (вероятно, мерзавец или svn... не имеют, выбирают все же), но также и некоторые случайное другое использование (совместный доступ к файлам с семейством или клиентом, персональным резервным копированием, записал хост веб-приложений, я могу, и т.д. Я также хотел бы смочь получить доступ в любое время к компьютеру для администрирования его, даже позади прокси некоторого клиента, который позволяет только http или https

Что стандартные шаги должны достигнуть этого?

  • Мое первое, хотя должен настроить openssh сервер. Действительно ли это возможно (и "довольно" безопасно) открыть его для Интернета на стандартном порте (т.е. клиентский совместимый брандмауэр/прокси).
  • Действительно ли возможно настроить сервер VPN, который выполняется от плагина веб-страницы (также размещенный сервером)?
  • поскольку у меня есть только один IP-адрес (IP V4 и IPV 6 на самом деле, но я не думаю, что адрес IP V6 будет доступен из клиентской сети к настоящему времени), я могу сделать апача, и другое программное обеспечение сервера к сосуществует на тех же стандартных портах?

заранее спасибо ;)

7
задан 13 June 2011 в 11:59

1 ответ

То, когда правильно устанавливают OpenSSH, безопасно, даже на стандартном порте. Отодвигание его от стандартного порта сохраняет Вас от Ваших файлов журнала, являющихся заполненным несанкционированными попытками входа в систему. Больше деталей о конце.

Очень опасно получить доступ к Вашему серверу, если Вы не управляете компьютером, который должен соединиться с Вашим сервером (который я думаю, что это - причина, почему необходимо использовать плагин браузера),

OpenVPN может быть создан для совместного использования портов TCP с сервером HTTP/HTTPS из его страницы руководства:

- серверный порт доли порта
Когда выполнено в режиме сервера TCP, совместно используйте порт OpenVPN с другим приложением, таким как сервер HTTPS. Если OpenVPN обнаружит соединение со своим портом, который использует non-OpenVPN протокол, то он проксирует соединение с сервером в host:port. В настоящее время только разработанный для работы с HTTP/HTTPS, хотя было бы теоретически возможно расшириться на другие протоколы, такие как ssh.

Не рекомендуется использовать OpenVPN с соединением TCP из-за его издержек (трехстороннее квитирование TCP). Если у Вас нет выбора, Вы могли бы дать ему движение.

Используя OpenVPN, можно избежать любого ограничения порта, введенного для Вас, и защитить соединение. См. то, Как я устанавливаю OpenVPN, таким образом, я могу надежно использовать Интернет от незащищенной горячей точки? для руководства по установке OpenVPN.

Вы не можете совместно использовать порты, если поддержка приложений это (как OpenVPN), таким образом, я должен разочаровать Вас на этом.

Сервер SSH

Основанная на пароле аутентификация, не ограничивая попытки подключения напрашивается на неприятности. Из-за этого это предпочтено, чтобы использовать основанную на ключе аутентификацию и отключить основанную на пароле аутентификацию в целом.

  1. Установите openssh-серверInstall openssh-server путем выполнения sudo apt-get install openssh-server
  2. Отключите основанную на пароле аутентификацию путем редактирования конфигурационного файла /etc/ssh/sshd_config. Чтобы начать редактировать, работать sudo nano /etc/ssh/sshd_config. Найдите строку #PasswordAuthentication yes и измените его на PasswordAuthentication no. По умолчанию SSH слушает на порте 22. Если Вы хотите изменить его, используйте порт ниже 1024 из соображений безопасности. (измените строку с Port 22)
  3. Для дополнительной безопасности можно настроить список пользователей, которым разрешают войти в систему. Добавьте строку с:

    AllowUsers someuser
    

    Замена someuser именем пользователя учетной записи, которой позволяют войти в систему. Несколько имен пользователей должны быть разделены пространством.

  4. Генерируйте ключ на Вашем использующем компьютеры команда ssh-keygen -t rsa. Введите любые значения, Вы хотите и выбираете безопасный пароль.
  5. Скопируйте содержание ~/.ssh/id_rsa.pub файл к /home/someuser/.ssh/authorized_keys файл на Вашем сервере. someuser пользователь, которому нужно разрешить войти в систему. (это - одна строка, которая должна быть скопирована, никогда не копировать содержание файла, который запускается с -----BEGIN RSA PRIVATE KEY
  6. Перезагрузите конфигурацию своего сервера SSH:

    sudo reload ssh
    
  7. Если Вы удаленно получаете доступ к своему серверу по SSH, проверяете, что можно сделать новое соединение SSH, чтобы не блокировать себя.
10
ответ дан 23 November 2019 в 06:27

Другие вопросы по тегам:

Похожие вопросы: