
Tor 네트워크의 .onion 히든 서비스를 인덱싱하는 Django 기반 검색 엔진 및 크롤러 스택으로, 다크 웹 콘텐츠 탐색을 위한 검색 가능한 메타데이터를 제공합니다.

Ahmia는 Tor 익명 네트워크의 .onion 도메인을 위한 검색 엔진입니다. Juha Nurmi가 이끌고 있으며 핀란드에 기반을 두고 있습니다. 이 저장소에는 Ahmia 검색 엔진에서 사용하는 크롤러가 포함되어 있습니다.
최신 버전의 Ahmia는 Python 3, Django 5 및 Elasticsearch 8로 구축되었습니다. 작동하는 Ahmia 설치를 만들려면 이러한 기술을 알아야 합니다. Ahmia는 ahmia-crawler를 사용하여 크롤링합니다.
Ahmia-index가 설치되어 실행 중이어야 합니다
pip install -r requirements.txt
이는 로컬(개발) 및 프로덕션 환경 모두에 공통된 단계입니다.
cp ahmia/example.env ahmia/.env
필요에 맞게 .env의 값을 수정하십시오. 프로덕션 설정을 사용하는 경우 최소한 postgresql 자격 증명을 지정해야 합니다.
python manage.py makemigrations ahmia
python manage.py migrate
python manage.py collectstatic
/usr/local/share/ca-certificates/http_ca.crt
개발 설정은 데이터베이스로 sqlite를 사용합니다. 기본 설정은 별도 구성 없이 작동해야 합니다.
python manage.py runserver
참고: 배포 디렉터리가 /usr/local/lib/ahmia-site가 아닌 경우 그에 맞게 바꾸십시오
# 사용하려는 confs 및 *.map 필터링 파일을 확인하십시오
cp *.map /etc/nginx/
cp conf/nginx/nginx.conf /etc/nginx/nginx.conf
cp conf/nginx/django-ahmia /etc/nginx/sites-enabled/django-ahmia
service nginx start
/etc/nginx/nginx.conf에서 worker_connections를 늘리십시오:
events {
worker_connections 2048;
}
다음 중 하나:
bash ./bin/run-ahmia.sh
bash ./bin/run-ahmia-onion.sh
또는
cp conf/gunicorn/*.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable ahmia.service
systemctl status ahmia.service
systemctl enable ahmia-onion.service
systemctl status ahmia-onion.service
systemctl restart gunicorn
systemctl edit nginx
[Unit]
After=network-online.target remote-fs.target nss-lookup.target ahmia.service ahmia-onion.service
Requires=ahmia.service ahmia-onion.service
systemctl daemon-reload
systemctl cat nginx
# 3일마다
40 5 */3 * * cd /usr/local/lib/ahmia-site && venv/bin/python manage.py deleteonions >> weeklydelete.log 2>&1
Ahmia는 3-clause BSD 라이선스에 따라 라이선스가 부여됩니다.