さくらVPSにWebDAVを入れる(Windows 8から使うよ)15分で

webdavでsslでベーシック認証するための設定

WebDAVインストー

WebDaAVがインストールされているか確認する。
httpd -M | grep dav
 dav_module (shared)
 dav_fs_module (shared)
Syntax OK
ディレクトリ作成

こいつのせいでドハマリ。本には仮で/var/www/webdavとあるけど、document rootは/var/www/htmlなので
それに合わせる必要がある(はず

mkdir /var/www/html/webdav
chown apache.apache /var/www/html/webdav
htpasswdの作成
*引数はログインする際のユーザ
htpasswd -c /etc/httpd/conf/htpasswd root
New password:
Re-type new password:
Adding password for user root
httpd.confの設定
vi /etc/httpd/conf/httpd.conf
#WebDAV
Alias /webdav "/var/www/html/webdav"

<Directory /var/www/html/webdav>
    Dav On
    SSLRequireSSL
    AuthType        Basic
    AuthName        "Login"
    AuthUserFile    "/etc/httpd/conf/htpasswd"
    Require valid-user
    Order deny,allow
    Deny from all
    Allow from 124.155.55.202
</Directory>

さくらVPSにオレオレ証明書を設定する方法 - PerlのちJavaときどき証券

httpd再起動
service httpd restart
証明書を自分の端末にインストー

これがないと、クライアントからアクセスしても出来ない。

証明書をインストールしたいけど、そのボタンが表示されないときの
ツール>インターネットオプション>セキュリティ
信頼済みサイトを選択して追加する。
その後、ブラウザのアドレスバーの「証明書のエラー」から証明書をインストールする。

さくらVPSにオレオレ証明書を設定する方法

itpro.nikkeibp.co.jp

CSR(証明書お申込みデータ)の作成|Cybertrust.ne.jp

f:id:kenta_everyday:20170730205752p:plain

前準備

インストー
yum install openssl *opensslのコマンド使うため
yum install mod_ssl *ssl使用するため

鍵の作成

秘密鍵の作成
openssl genrsa -aes128 1024 > /etc/httpd/conf/server.key
Generating RSA private key, 1024 bit long modulus
......++++++
..++++++
e is 65537 (0x10001)
Enter pass phrase:
Verifying - Enter pass phrase:

openssl rsa -text < /etc/httpd/conf/server.key

CSR(Certificate Signing Request)の作成 公開鍵の作成

CSR(Certificate Signing Request)とは、SSLサーバ証明書を発行するための証明書署名要求のことです。CSRには公開鍵の情報と、組織名や所在地等の情報(Distinguished Name=識別名)が含まれており、提出されたCSRにサーバ認証機関の署名を行い、サーバ 証明書として発行します。

openssl req -new -key /etc/httpd/conf/server.key > /etc/httpd/conf/server.csr
サーバ証明書の作成

自己書名ではプライベートCAを使って、サーバ証明書(server.crt)を発行する。
・x509 :X.509形式の証明書を作成する。
・-in CSRファイル:CSRファイルを指定する。
・-days 日数   :証明書の有効期限を指定する。
・-req :入力ファイルがCSRファイルであることを明示する。
・-signkey :事故証明書作成時に使用するオプション。秘密鍵ファイルを指定する。

openssl x509 -in /etc/httpd/conf/server.csr -days 36500 -req -signkey /etc/httpd/conf/server.key > /etc/httpd/conf/server.crt
mv /etc/httpd/conf/server.key /etc/httpd/conf/server.key.bak
openssl rsa -in /etc/httpd/conf/server.key.bak > /etc/httpd/conf/server.key

サーバの設定

sslのサーバ設定

追記:2017/07/29
気づくと当たり前なのだけど、、httpdのrestartが出来なくなった。
原因は、ssl.confに既存のlocalhost.keyとlocalhost.crtが残っているから。コメントアウトする必要あり。

[root@ik1-313-16875 etc]# /etc/init.d/httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [FAILED]

[root@ik1-313-16875 etc]#
[Sat Jul 29 16:38:39 2017] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Sat Jul 29 16:38:39 2017] [error] Init: Multiple RSA server certificates not allowed

/etc/httpd/conf.d/ssl.conf
#SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
#SSLCertificateFile /etc/pki/tls/certs/localhost.crt
vi /etc/httpd/conf.d/ssl.conf
<VirtualHost _default_:443>以下に
SSLCertificateFile /etc/httpd/conf/server.crt
SSLCertificateKeyFile /etc/httpd/conf/server.key
iptablesの設定

ファイアウォールiptablesを簡単解説~初心者でもよくわかる!VPSによるWebサーバー運用講座(4) - さくらのナレッジ

vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
service iptables restart
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Unloading modules:                               [  OK  ]
iptables: Applying firewall rules:                         [  OK  ]
httpd再起動
service httpd restart

さくらVPSにsambaを構築する方法

1.インストール

1-1.インストール

yum -y install samba

2.sambaの設定

2-1.共有フォルダの作成

mkdir /home/share
chmod 777 /home/share

2-2.sambaの設定ファイル

vi /etc/samba/smb.conf

*[global]の設定
文字コードの設定
unix charset=UTF-8
 dos charset=CP932

workgroup=WORKGROUP

hosts allow=ALLじゃなくてもいける。会社だとALLなのかな

security=share

*[share]の設定
[Share]
 path=/home/share
 writable=yes
 guest ok=yes
 guest only=yes
 create mode=0777
 directory mode=0777
 share modes=yes

3.sambaの起動

3-1.sambaの起動

/etc/rc.d/init.d/smb start
/etc/rc.d/init.d/nmb start

3-2.チェックコンフィグへの追加

chkconfig smb on
chkconfig nmb on

4.Firewallの設定

4-1.Firewallの設定

フィルタリングで遮断すべきポート番号(その2) TCP/IP入門

これを追加した。いる!理由は後で確認

  • A INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
  • A INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
  • A INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
  • A INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT

さくらのVPSにSVNを構築する 15分で

Ranorexを使用するのにSVNでもプロジェクト管理をしたくて導入。
Renorexについてはこちら

SVN構築するために、さくらのレンタルサーバ借りて作業していたのだが、
そもそもapache入れる段階で躓いたので記録しておく。Firewallの設定が悪かったのが原因。
*実際に測定したら15分で導入出来た!

SVN構築までの流れ

1.Apacheのインストール
2.SVNのインストール
3.SVNのレポジトリの作成
4.SVNApacheと連携させる
※1.Apacheのインストールは、4までに出来ていれば良い。

1Apacheのインストール

1-1.Apacheのインストール
yum -y install httpd
1-2.サービスの起動
service httpd start
1-3.自動起動の設定
chkconfig httpd on
1-4.Firefallの設定
cd /etc/sysconfig
vi iptables
#port80のINPUTを許可するように設定する。
-A INPUT -p tcp --dport 80   -j ACCEPT
1-5.Firewallの設定の再読込
service iptables restart
1-6.稼働確認

IPで接続して以下のページが出ればOK
f:id:kenta_everyday:20170218165930p:plain

2.SVNのインストール

2-1.SVNのインストール
yum install subversion
#SVNのversion確認
svn --version

3.SVNリポジトリの作成

3-1.リポジトリディレクトリ作成
mkdir -p /var/svn/ranorex
3-2.SVNリポジトリの作成
svnadmin create /var/svn/ranorex

4.SVNApacheと連携させる

4-1.mod_dav_svnのインストール
yum install mod_dav_svn
4-2.リポジトリApacheの権限を付与する。
chown -R apache:apache /var/svn/ranorex	
chmod -R u+rw /var/svn/ranorex
4-3.httpd.conf配下のsubversionの設定ファイルを編集
vi /etc/httpd/conf.d/subversion.conf
LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
<Location /svn>
    DAV svn
    SVNPath /var/svn/ranorex
</Location>
4-3.サービスの再起動
service httpd reload
4-4.ApacheでのSVN表示確認

http://xxx.xxx.xxx/location
4-3のsubversion.confの設定の場合だと
とされているので
http://xxx.xxx.xxx/svnでアクセスする。
成功すると以下ページが表示される。
f:id:kenta_everyday:20170218171114p:plain

4-5.認証その他設定

とりあえず今回は飛ばしました。重要なファイルないし。。

5.ブランチの作成

5-1.
mkdir -p /var/svn/ranorex/{trunk,branches,tags}

そもそもFirewallとは?

raspberryで参考になったサイト一覧

ツール編

Fritzing Fritzing

エアコン操作編

Raspberry Pi 3 Jessieで LIRC機能を使って学習リモコン、赤外線リモコンを送受信する方法 (ラズパイ3で赤外線受信センサと赤外線 LEDで IrDAリモコン信号を送受信して家電等の外部機器を制御する方法)
Raspberry Piからブラウザ経由でエアコンを制御してみた - 下林明正のブログ
「実例で学ぶRaspberry Pi電子工作」補足情報: Raspberry Pi上のLIRCでエアコンを操作する

  1. 赤外線受信モジュール設定

akizukidenshi.com
1 3.3Vがインプット
6 0v
40

 +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 |     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |
 |   2 |   8 |   SDA.1 |   IN | 1 |  3 || 4  |   |      | 5V      |     |     |
 |   3 |   9 |   SCL.1 |   IN | 1 |  5 || 6  |   |      | 0v      |     |     |
 |   4 |   7 | GPIO. 7 |   IN | 1 |  7 || 8  | 0 | IN   | TxD     | 15  | 14  |
 |     |     |      0v |      |   |  9 || 10 | 1 | IN   | RxD     | 16  | 15  |
 |  17 |   0 | GPIO. 0 |   IN | 0 | 11 || 12 | 0 | IN   | GPIO. 1 | 1   | 18  |
 |  27 |   2 | GPIO. 2 |   IN | 0 | 13 || 14 |   |      | 0v      |     |     |
 |  22 |   3 | GPIO. 3 |   IN | 0 | 15 || 16 | 0 | IN   | GPIO. 4 | 4   | 23  |
 |     |     |    3.3v |      |   | 17 || 18 | 0 | IN   | GPIO. 5 | 5   | 24  |
 |  10 |  12 |    MOSI |   IN | 0 | 19 || 20 |   |      | 0v      |     |     |
 |   9 |  13 |    MISO |   IN | 0 | 21 || 22 | 0 | IN   | GPIO. 6 | 6   | 25  |
 |  11 |  14 |    SCLK |   IN | 0 | 23 || 24 | 1 | IN   | CE0     | 10  | 8   |
 |     |     |      0v |      |   | 25 || 26 | 1 | IN   | CE1     | 11  | 7   |
 |   0 |  30 |   SDA.0 |   IN | 1 | 27 || 28 | 1 | IN   | SCL.0   | 31  | 1   |
 |   5 |  21 | GPIO.21 |   IN | 1 | 29 || 30 |   |      | 0v      |     |     |
 |   6 |  22 | GPIO.22 |   IN | 1 | 31 || 32 | 0 | IN   | GPIO.26 | 26  | 12  |
 |  13 |  23 | GPIO.23 |   IN | 0 | 33 || 34 |   |      | 0v      |     |     |
 |  19 |  24 | GPIO.24 |   IN | 0 | 35 || 36 | 0 | IN   | GPIO.27 | 27  | 16  |
 |  26 |  25 | GPIO.25 |   IN | 0 | 37 || 38 | 1 | OUT  | GPIO.28 | 28  | 20  |
 |     |     |      0v |      |   | 39 || 40 | 1 | IN   | GPIO.29 | 29  | 21  |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+
  1. リモコンの信号受信

lircは止めておく。

sudo /etc/init.d/lirc stop
mode2 -d /dev/lirc0
mode2 -d /dev/lirc0 > aircon_on.txt
mode2 -d /dev/lirc0 > aircon_off.txt
  1. リモコンの信号整形
perl pulse_parse.pl mode2_aircon_off.txt > processed_aircon_off.txt
perl pulse_parse.pl mode2_aircon_off.txt > processed_aircon_off.txt

irrecのアウトプットに合わせて整形
lircd.conf作ってコピー
udo cp lircd.conf /etc/lirc

  1. リモコン送信回路設定
pi@raspberrypi:~ $ sudo /etc/init.d/lirc restart
[ ok ] Restarting lirc (via systemctl): lirc.service.
pi@raspberrypi:~ $ irsend LIST "" ""
irsend: AC
pi@raspberrypi:~ $ irsend LIST AC ""
irsend: 0000000000000001 on
irsend: 0000000000000002 off
オン・オフのコマンド
irsend SEND_ONCE AC on
irsend SEND_ONCE AC off
  1. テスト