- Автор темы
- #1
Основные шаги:
1. Выбрать хостинг для сайта с учётом географического распределения пользователей.
2. Установить и настроить операционную систему Ubuntu.
3. Установить и настроить веб сервер Nginx.
4. Установить и настроить Tor Hidden Services.
После проделанных шагов, сайт будет доступен по своему onion адресу в сети Tor.
Будем исходить из того, что хостинг мы выбрали и у нас установлена операционная система Ubuntu.
Настройка Ubuntu:
1. Удаляем приложения которые могут повлиять на анонимность:
Установка и настройка Nginx:
1. Устанавливаем nginx
Установка и настройка Tor:
1. Для установки Tor подключаем репозитории указанные на страничке проекта:
Теперь наш сайт доступен по адресу который указан в данном файле.
За это имя отвечает файл содержащий приватный ключ: /var/lib/tor/hidden_service/private_key
Устанавливаем и настраиваем файервол.
1. Устанавливаем файервол:
1. Выбрать хостинг для сайта с учётом географического распределения пользователей.
2. Установить и настроить операционную систему Ubuntu.
3. Установить и настроить веб сервер Nginx.
4. Установить и настроить Tor Hidden Services.
После проделанных шагов, сайт будет доступен по своему onion адресу в сети Tor.
Будем исходить из того, что хостинг мы выбрали и у нас установлена операционная система Ubuntu.
Настройка Ubuntu:
1. Удаляем приложения которые могут повлиять на анонимность:
2. Оптимизируем настройки для работы системы с нагруженным сайтом:sudo apt-get remove --purge rsyslog exim postfix sendmail wget curl
sudo vi /etc/sysctl.d/100-nginx.conf
fs.file-max = 2097152
net.core.netdev_max_backlog = 65536
net.core.optmem_max = 25165824
net.core.rmem_default = 16777216
net.core.rmem_max = 31457280
net.core.somaxconn = 65536
net.core.wmem_default = 16777216
net.core.wmem_max= 31457280
net.ipv4.ip_local_port_range= 2000 65000
net.ipv4.tcp_congestion_control = cubic
net.ipv4.tcp_fin_timeout= 7
net.ipv4.tcp_keepalive_intvl = 15
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_keepalive_time = 90
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_max_syn_backlog = 65536
net.ipv4.tcp_max_tw_buckets = 1048576
net.ipv4.tcp_mem = 8388608 8388608 8388608
net.ipv4.tcp_orphan_retries = 0
net.ipv4.tcp_rfc1337 = 1
net.ipv4.tcp_rmem = 8192 87380 16777216
net.ipv4.tcp_slow_start_after_idle = 0
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_wmem = 8192 65536 16777216
vm.dirty_background_ratio = 2
vm.swappiness = 10
vm.dirty_ratio = 60
sudo sysctl -p /etc/sysctl.d/100-nginx.conf
sudo vi /etc/security/limits.conf
* soft nofile 1048576
* hard nofile 1048576
root soft nofile 1048576
root hard nofile 1048576
sudo vi /etc/pam.d/su
session required pam_limits.so
sudo vi /etc/pam.d/common-session
session required pam_limits.so
Установка и настройка Nginx:
1. Устанавливаем nginx
2. Сохраняем оригинальный конфиг:sudo apt-get install nginx
3. Создаём конфиг с конфигурацией для высоко нагруженного сайта:sudo mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.orig
sudo vi /etc/nginx/nginx.conf
4. Перегружаем Nginx:user www-data;
worker_processes auto;
pid /run/nginx.pid;
worker_rlimit_nofile 2129952;
events {
worker_connections 81920;
multi_accept on;
use epoll;
}
http {
##
# Basic Settings
##
open_file_cache max=200000 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 2;
open_file_cache_errors on;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 30;
reset_timedout_connection on;
send_timeout 2;
client_max_body_size 32k;
client_body_buffer_size 32k;
client_body_in_single_buffer on;
client_body_timeout 10s;
client_header_timeout 10s;
client_header_buffer_size 8k;
large_client_header_buffers 4 32k;
types_hash_max_size 2048;
server_tokens off;
# server_names_hash_bucket_size 64;
# server_name_in_redirect off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
##
# Logging Settings
##
access_log off;
error_log off;
##
# Gzip Settings
##
gzip on;
gzip_disable "MSIE [1-6]\.";
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
##
# Limits
##
limit_conn_zone $binary_remote_addr zone=conn_limit_per_ip:10m;
limit_req_zone $binary_remote_addr zone=req_limit_per_ip:10m rate=30r/s;
##
# Server configuration
##
server {
listen 127.0.0.1:8080 default_server backlog=65536;
server_name localhost _ "";
root /usr/share/nginx/html;
index index.html;
# error_page 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 420 422 423 424 426 428 429 431 444 449 450 451 500 501 502 503 504 505 506 507 508 509 510 511 = /index.html;
# limit_conn conn_limit_per_ip 20;
# limit_req zone=req_limit_per_ip burst=50 nodelay;
location / {
expires 1h;
allow 127.0.0.1;
deny all;
}
}
}
sudo service nginx restart
Установка и настройка Tor:
1. Для установки Tor подключаем репозитории указанные на страничке проекта:
sudo vi /etc/apt/sources.list
2. Устанвливаем Tor:gpg --keyserver keys.gnupg.net --recv 886DDD89
gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
3. Выполняем настройки Tor Hidden Service.sudo apt-get update
sudo apt-get install tor deb.torproject.org-keyring
sudo vi /etc/tor/torrc
4. Перезапускам Tor:HiddenServiceDir /var/lib/tor/hidden_service/
HiddenServicePort 80 127.0.0.1:8080
5. Узнаём свой Tor onion адрес:sudo service tor restart
sudo cat /var/lib/tor/hidden_service/hostname
Теперь наш сайт доступен по адресу который указан в данном файле.
За это имя отвечает файл содержащий приватный ключ: /var/lib/tor/hidden_service/private_key
Устанавливаем и настраиваем файервол.
1. Устанавливаем файервол:
2. Настраиваем файервол:sudo apt-get install ufw
3. Разрешаем доступ к серверу через sshsudo ufw allow ssh
sudo ufw enable