Xfce4のmedia player

Paroleが良い感じだっが、動画によって、MPEG-2 System Stream demuxerやITU H.264 decoderなどを要求されて再生できない。
別のプレイヤーを検討したが、Vlcとmplayerはなぜか再生できない。
結局、MPVをインストールした。
コントロールが、キーボードなのが分かりにくいが、なれると使いやすい。
ボリューム(音量)は、0と9。ビデオサイズは、alt+2で倍。再生速度の調整は、[]。
https://mpv.io/manual/master/#interactive-control

# vi /etc/mpv/mpv.conf
volume-max=300
上限を簡単に設定出きるので便利。

shadowsocks-libev

shadowsocksのインストールは簡単だが、obfsを使えない。shadowsocksRは標準パッケージがない。
libev+simple-obfsに挑戦。

# pacman -S shadowsocks-libev simple-obfs

サービスファイルを作成
# cat > /etc/systemd/system/shadowsocks-libev.service
[Unit]
Description=Shadowsocks-libev Default Server Service
Documentation=man:shadowsocks-libev(8)
After=network.target
[Service]
Type=simpleEnvironment
File=/etc/sysconfig/shadowsocks-libev
User=nobody
Group=nobody
LimitNOFILE=32768
ExecStart=/usr/bin/ss-server -c /etc/shadowsocks-libev/config.json
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
[Install]
WantedBy=multi-user.target

設定ファイルを作成
# mkdir /etc/shadowsocks
# cat > /etc/shadowsocks-libev/config.json
{
“server”:”0.0.0.0″,
“server_port”:8388,
“local_port”:1080,
“password”:”passpass”,
“timeout”:300,
“method”:”chacha20-ietf”,
“plugin”: “obfs-server”,
“plugin_opts”: “obfs=tls”
}

サービスファイルを修正したら、リロード
# systemctl daemon-reload
# systemctl start shadowsocks-libev
# systemctl enable shadowsocks-libev

アンドロイドのクライアントをインストール
Shadowsocks offered by Max Lv
Simple Obfuscation offered by Max Lv

linuxのクライアントでは、ss-localがsocks5 proxyとなる。
# ss-local -c config.json -v
設定は、サーバーとほぼ同じでよいが、”plugin”: “obfs-local”とプラグインを変える。
seamonkeyのEdit/Preference/Advances/Proxies/を開き、
Manual poxy configurationを選び、Advancedを開き、
Socks Proxy: localhost, Port: 1080を入力し、
Socks v5とUse for resolving hostnameを選ぶ。

ssh over shadowsocksの場合は、ss-tunnelを使ってポートフォワード。
# ss-tunnel -c config.josn -v -L server.com:22
# ssh -p 1080 user@localhost
複数のサーバと接続するとサーバ情報が一致しないのでエラーとなり接続できない。~/.ssh/known_hostsの該当するサーバを削除するか、ssh -o ‘StrictHostKeyChecking no’で接続する。

ブラウザとsshだけならこれでよいが、本格的に使うなら、ss-redirとiptablesで設定が必要。

無線LAN on netctl

upgradeのために、パッケージをアンインストールしてしまったので、再設定。
pacman -S wireless_tools
pacman -S netctl
wifi-menu
これで接続OK
以前のnetcfgパッケージがnetctlに置換されており、さらに簡単になった。

wireless_toolsはiwconfigを使用しなければ不要か。
# netctl list
# netctl-auto list
# systemctl enable netctl-auto@wlp3s0
# journalctl -b -u netctl-auto@wlp3s0
起動時に、a start job is running for networkingが表示されたので、netctl-autoをdisableしたのちに、再度enableにすると改善した。
起動直後は、まだwifiが接続していないことがある。
dhcp_envoption 213: Operation not supported

Google BBRを使ってみる

Googleの新しいTCP高速化アルゴリズムBBR(Bottleneck Bandwidth and Round-trip propagation time)を使ってみる。
カーネルモジュールがあるので、ロードすれば、利用できる。

# sysctl net.ipv4.tcp_congestion_control
net.ipv4.tcp_congestion_control = cubic
# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = reno cubic
# zless /proc/config.gz | grep -i bbr
CONFIG_TCP_CONG_BBR=m
# modprobe tcp_bbr
# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = reno cubic bbr
# sysctl net.ipv4.tcp_congestion_control=bbr
sysctl net.ipv4.tcp_congestion_control=bbr

これで、問題なければ、設定ファイルを変更する。

#echo tcp_bbr > /etc/modules-load.d/net.conf
#echo net.ipv4.tcp_congestion_control=bbr > /etc/sysctl.d/net.conf

https://fast.com/ja/で計測すると、うそかほんとか、回線速度が10倍になった。

ubuntu 18.04でも同様の設定を追加した。
/etc/modules-load.d/modules.conf
/etc/sysctl.d/99-sysctl.conf
サーバーの回線制限のためか、残念ながら改善はなかった。

Shadowsocksr

スクリプトの使用で簡単にインストールできる。

# sudo -i
# wget –no-check-certificate -O shadowsocks-all.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-all.sh && chmod +x shadowsocks-all.sh && ./shadowsocks-all.sh 2>&1 | tee shadowsocks-all.log

# ufw allow ポート
Altusを使用しているので、サーバだけでなく、グローバルIP側のFWも開放する。

# /etc/init.d/shadowsocks-r status
# tail /var/log/shadowsocksr.log

# ss -tulp
listenしているプロセスを表示

バージョンは3.2.2で、プロトコルにauth_chainを選ぶとエラーになる。暗号もnoneだとエラーになる。

OpenVPN

Arch LinuxのVPSにVPN serverを構築して、VPN Proxyを自前でつくった。
SoftEtherも構築が簡単そうで、スループットも期待できそうだが、pacmanで管理できないパッケージは、Arch Linuxらしくないと考えてあきらめた。
公式 Arch リポジトリにあるVPNのパッケージは、OpenVPNとStrongSwanしかないので、資料がそろっているOpenVPNを選択した。
pacman -S openvpn easy-rsa
本来は、別に認証局が必要だが、easy-rsaを使って、サーバで一気に作成。
パスフレーズは入力が必要だが、Common Nameの入力はENTERで省略できる。
cd /etc/easy-rsa
easyrsa init-pki
easyrsa biuild-ca
easyrsa gen-dh
openvpn –genkey –secret ./pki/ta.key
easyrsa build-server-full server nopass
easyrsa build-client-full client nopass

後は作成したファイルをサーバとクライアントのディレクトリにコピー。
また、サーバの設定ファイルもコピーする。
mv pki/dh.pem pki/dh2048.pem
cp ca.crt ta.key dh.pem private/server.key issued/server.crt /etc/openvpn/server
cp ca.crt ta.key private/client.key issued/client.crt /etc/openvpn/client

設定ファイルをルーティング方式に設定して、起動設定。

cd /etc/openvpn/server
cp /usr/share/openvpn/examples/server.conf ./srv.conf
vi srv.conf
systemctl start openvpn-server@srv
systemctl enable openvpn-server@srv

/etc/open/vpn/server/srv.confの設定例

port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push “redirect-gateway def1 bypass-dhcp”
push “dhcp-option DNS 8.8.8.8”
push “dhcp-option DNS 8.8.4.4”
duplicate-cn
keepalive 10 120
tls-auth /etc/openvpn/server/ta.key 0 # This file is secret
comp-lzo adaptive
push “comp-lzo yes”
user nobody
group nobody
persist-key
persist-tun
status /var/log/openvpn/status.log
log /var/log/openvpn/vpn.log
verb 4
mute 20
explicit-exit-notify 1

/etc/iptables/iptables.rulesの設定に以下を加える。
iptables -A INPUT -p udp -m udp –dport 1194 -j ACCEPT
iptables -A INPUT -i tun0 -j ACCEPT
iptables -A FORWARD -s 10.8.0.0/24 -i tun0 -j ACCEPT
iptables -A FORWARD -o tun0 -j ACCEPT
iptables -t nat -A INPUT -p udp -m udp –dport 1194 -j ACCEPT

systemctl reload iptables
これで、サーバの設定は終了。

andoroidのクライアントは、OpenVPN ConnectをPlayストアからインストール。
その後は、証明書と鍵をインラインで記載したoovpnファイルを読み込ませて接続できる。
ovpn fileの例
インライン作成は,, , , のタグで囲む。
tls-authディレクティブの代わりに,key-direction 1を記載する。

client
dev tun
proto udp
remote domain.name.com 1194

resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
verb 3
#tls-auth
key-direction 1
mute 10

—–BEGIN CERTIFICATE—–
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
—–END CERTIFICATE—–

—–BEGIN CERTIFICATE—–
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
—–END CERTIFICATE—–

—–BEGIN PRIVATE KEY—–
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
—–END PRIVATE KEY—–

—–BEGIN OpenVPN Static key V1—–
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
—–END OpenVPN Static key V1—–

これでよいのだが、注意として,Chromeのdata savingオプションはオフにしておくこと。
そうしないと、IPがgoogle USAのIPに固定されてしまうので,VPN proxyの意味がない。
また,Playストアのregion情報は起動時しないと更新されないようなので,
VPNを接続した後に,設定!アプリで、Playストアを一度Force stopしてから、再起動する。

暗号のdefaultはbf-cbcで非推奨だが、接続後にaes-256-gcmにアップグレードされる。
# openvpn -show-ciphers

statusとlogは、標準の/etc/openvpn/severから、/var/log/openvpnに移す。ファイル名は、systemd-escapeで、エスケープ処理されているようなので、/の代わりに-が使用できる。

android clientでは、fragment未サポート

2019/10/13
標準の1194 udpの場合、中国から繋がりにくい。TLS errorが起こっているので、great firewallの影響か。ポートを変更したら改善した。

中国の壁

google検索が使えない。google地図はマップデータが不正確なので、諦めるしかない。google keepは使えるが、当然オフラインになる。

wikipediaが使えないのが、予想外に不便。yahooの記事は読めても、Instagramが見れないので、写真が豆腐。

fc2のブログも読めない。
何故かSBI証券に繋がらないことがある。
m3.comに繋がらない。
セディナカード、cdeyna.co.jpもだめ。

ConohaもGMOクラウドのサイトも繋がらない。

Altusのipもブロックされた。

google翻訳が使えるのは助かる。

SoftEther

copy link address

wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v4.30-9696-beta/softether-vpnserver-v4.30-9696-beta-2019.07.08-linux-x64-64bit.tar.gz

tar zxvf

cd vpnserver

vpncmd, 3, check

vpnserver start

vpncmd, 1

softetherを物理デバイスとローカルブリッジすると、vpn経由で物理デバイスのipにアクセスできないので、サーバー自体にアクセスできないらしい。そのため、仮想デバイスとローカルブリッジした上で、仮想ブリッジで物理デバイスとブリッジする。

bridge-utils

Conohaの引越

conoha VPSのipがブロックされたので、ip変更。
サーバーを強制終了して、イメージ保存。
イメージが利用可能になるまで待って、ダーバー追加で、イメージを選択。rootパスワードを設定するだけ。
起動したら、元のサーバーを削除。
イメージの削除方法がわからないが、50GBまでは無料のようだ。

GMO Altusも突然ipブロック。ipを取得し直したが改善しない。ドメイン全体がブロックされたようだ。どうしましょう?

upgrade ubuntu 16.04 to 18.04

Altus Basciで準備されているubuntuのテンプレートは16.04LTSまでしかない。
18.04LTSを試すために、アップグレード
apt update
apt upgrade
apt autoremove
apt full-upgrade してもなにも起こらない。
do-release-upgrade -dを実行
-dオプションをつけていないと、LTSなのにアップグレードできない。
SSH接続のままでも、問題なく、アップグレードできた。
途中いくつかの質問があるが、defaultではなく、installを選択した。
最後に、再起動して無事終了。

2019/10/4
仮想サーバを再作成したら、アップグレードの表示があった。
# apt update
# apt upgrade
# reboot
# do-releae-upgrade

簡単と思ったらアップグレードに失敗。どうしましょう?