labunix's blog

labunixのラボUnix

TeraCLOUDをWebDAV(davfs2)でマウントしてみる。

■TeraCLOUDをWebDAV(davfs2)でマウントしてみる。
 以下のTeraCLOUD版

 BoxをWebDAV(davfs2)でマウントしてみる。
 http://labunix.hateblo.jp/entry/20190526/1558860701

$ lsb_release -d
Description:	Debian GNU/Linux 9.9 (stretch)

$ dpkg -l | awk '/^ii/&&/davfs2/{print $3}'
1.5.4-2+b1

$ dpkg -l | \
    awk '/^ii/&&/davfs2/ \
        {if($3=="")\
           {print "apt-get install -y davfs2"} \
       else{print "echo "$3}}' | sh
1.5.4-2+b1

■プロキシの設定を確認

$ sudo awk 'NF>1&&$1 !~ /#/' /etc/davfs2/davfs2.conf 
use_proxy 1
proxy http://172.31.31.60:8080/

■TeraCLOUDをマウントする。

$ sudo mkdir /media/TeraCLOUD

$ sudo mount -t davfs https://uno.teracloud.jp/dav/ /media/TeraCLOUD/ -o uid=labunix -o gid=labunix
Please enter the username to authenticate with server
https://uno.teracloud.jp/dav/ or hit enter for none.
  Username: XXXXXXXXX
Please enter the password to authenticate user labunix with server
https://uno.teracloud.jp/dav/ or hit enter for none.
  Password:  

$ ls -l /media/TeraCLOUD/
合計 364
drwx------ 2 labunix labunix      0  812 00:24 lost+found
-rw-r--r-- 1 labunix labunix 372007  812 00:08 welcome_to_teracloud.pdf

■/etc/davfs2/secretsに認証設定を追加

$ sudo awk 'NF>1 && $1 !~ /#/ \
           {gsub("[A-Za-z0-9@.]","X",$2); \
            gsub("[A-Za-z0-9@.]","X",$3); \
            gsub("XX*","XXXXX",$0);print $0}' /etc/davfs2/secrets 
172.31.31.60:8080		""	""
https://dav.box.com/dav XXXXX "XXXXX"
https://uno.teracloud.jp/dav/ XXXXX "XXXXX"

$ sudo umount /media/TeraCLOUD 
/sbin/umount.davfs: waiting while mount.davfs (pid 15983) synchronizes the cache .. OK

$ sudo mount -t davfs https://uno.teracloud.jp/dav/ /media/TeraCLOUD/ -o uid=labunix -o gid=labunix
■/etc/fstabに追加。

$ sudo tail -2 /etc/fstab
https://uno.teracloud.jp/dav/ davfs user,noauto 0 0

■gpasswdで追加済みのグループを確認する。

$ sudo awk '/labunix/&&/davfs/{print FILENAME";"$0}' /etc/group /etc/gshadow
/etc/group;davfs2:x:130:labunix
/etc/gshadow;davfs2:!::labunix

■「uno.teracloud.jp」に関するプロキシログの確認

$ sudo tail -f /var/log/squid3/access.log | \
    awk '{a=substr($4,14);b=$9;c=substr($6,2);d=$7} \
         {if(b ~ /200/){print "* "a,b,c,d}else{print "  "a,b,c,d}}'
* 00:26:59 200 CONNECT clients4.google.com:443
* 00:28:29 200 CONNECT b.hatena.ne.jp:443
* 00:29:53 200 CONNECT mtalk.google.com:443
  00:29:53 403 CONNECT mtalk.google.com:5228
* 00:30:30 200 CONNECT syndication.twitter.com:443
* 00:30:32 200 CONNECT t.co:443
* 00:30:32 200 CONNECT analytics.twitter.com:443
* 00:32:47 200 CONNECT uno.teracloud.jp:443

$ sudo awk '/uno.teracloud.jp/{a=$NR} \
         END{gsub(" \042","\n\t&",$a); \
             gsub("^[0-9]*.[0-9]*.[0-9]*.[0-9]*","X.X.X.X",$a); \
             print $a}' /var/log/squid3/access.log
X.X.X.X - - [12/Aug/2019:00:32:47 +0900]
	 "CONNECT uno.teracloud.jp:443 HTTP/1.1" 200 6676
	 "-"
	 "davfs2/1.5.4 neon/0.30.2" TCP_TUNNEL:HIER_DIRECT