LoginSignup
2
3

More than 1 year has passed since last update.

PsiTransfer (uploader) にnginxでuploadにアクセス制限をかける

Last updated at Posted at 2017-05-14

upload.png

参考

https://hub.docker.com/r/psitrax/psitransfer/
https://hub.docker.com/r/psitrax/psitransfer/~/dockerfile/

dockerのimageがalpineベースで40MBほどと小さい。

アクセス制限

uploadできる人を制限したかった。basic認証でもよいですね。

ファイル準備
mkdir data
chown -R 1000 data 

mkdir nginx
touch nginx/proxy

touch docker-compose.yml
docker-compose.yml
uploader:
  image: psitrax/psitransfer
  restart: always
  #ports:
  # - "3000:3000"
  volumes:
   - /etc/localtime:/etc/localtime
   - ./data:/data

nginx:
  image: nginx
  restart: always
  environment:
    - TZ=Asia/Tokyo
  volumes:
    - ./nginx/proxy:/etc/nginx/conf.d/default.conf
  ports:
    - "8080:8080"
  links:
    - uploader
nginx/proxy
server {
    listen 8080;
    location / {
        limit_except GET {
            allow XX.XX.XX.XX; #uploadを許可したいIP
            allow 127.0.0.1;
            deny all;
        }
        proxy_pass http://uploader:3000;
        break;
    }
}
起動
docker-compose up -d

http://ipaddress:8080/ にアクセス

許可しているIP以外からのアクセスはuploadが失敗すること、
ダウンロードは可能なことを確認。

block.png

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3