そうしたら途中で躓きました。
#もちろん、ポートをIP限定で開放しております。
前提
samba 4.0.9共有は以下
- ログインユーザのホームディレクトリ
- /mnt/home (ファイルサーバー用のEBSボリューム)
プリンタの共有はしない
Amazon Linux AMIを使っています。
$ uname -a
Linux ip-172-31-25-78 3.4.43-43.43.amzn1.x86_64 #1 SMP Mon May 6 18:04:41 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
準備
1.python26-devel.x86_64 をインストールします。configure中にpythonのヘッダファイルを利用するので、これがないとconfigureで失敗します。ここで躓きました。
# yum install python26-devel.x86_64
2.「Samba3.0インストール手順」にしたがって、libiconvをインストールします。
ビルドとインストール
1.tarballをダウンロードします。
2.configureを実行します。引数は以下のとおりで、上記blog(Samba3.0インストール手順)を参考にしました。
$ ./configure --prefix=/usr/local/samba --with-privatedir=/etc/samba --with-configdir=/etc/samba --with-libiconv=/usr/local --with-automount --with-pam --with-pam_smbpass --with-syslog > configure.log
3.make, make installを実行します
$ make
# make install
設定
ファイルのコピー
tarballの packaging/RHEL/setupディレクトリ内のファイルを、 /etc/sambaに移動します# cp packaging/RHEL/setup/* /etc/samba
smb.confの設定
サンプルのsmb.confのこのブロックを流用して、/mnt/homeへの設定をしてしまいます。
[myshare]
comment = Mary's and Fred's stuff
path = /usr/somewhere/shared
valid users = mary fred
public = no
writable = yes
printable = no
create mask = 0765
変更後
[myshare]
comment = xxxxxxxxxxxx
path = /mnt/home/
valid users = username
public = no
writable = yes
printable = no
create mask = 0765
ユーザーグループの編集
sambaでログインするユーザをec-userグループに登録します。後述するパーミッションの都合に寄るものです。
# usermod -G ec-user username
領域のフォーマットとマウント
今回ファイルサーバーに使用する領域はAmazonEBSから新規に領域を確保して、EC2のインスタンスに登録しています。ただし、このままでは使用できないので、フォーマットして、マウントします。
# mkfs /dev/xvdb
EBS で hda となっていた領域はEC2上では、 /dev/xvda
hdb となっていた領域はEC2上では、 /dev/xvdb というデバイスファイルになっています。
マウントは毎回実行しなければならないので、 /etc/rc.local に記載することにしました。
マウント先を作成:
# mkdir /mnt/home
rc.localに追加:
mount /dev/xvdb /mnt/home
パーミッションの編集
他のユーザーに編集されないよう、所有者とグループのみアクセス権を与えました。以下の内容を/etc/rc.localに記載します。
chown ec2-user:ec2-user /mnt/home
chmod 706 /mnt/home
ポートの開放
以下の4つのポートを開放します。「sambaで利用するポート」 こちらのblogを参考にしました。
- AWSのConsoleからSecurity Groupを選択します
- 一覧からsambaをインストールしたEC2インスタンスが登録されている利用しているセキュリティグループを選択します
- 以下のポートを開放するルールを作成します。
- 137/udp
- 138/udp
- 139/tcp
- 445/tcp
udpについては閉じることも検討しなければならないかもしれません。
init.dへの追加
- /etc/samba(にコピーした)smb.initを、/etc/init.dへコピーします
- smbにリネームします
- smbのパーミッションを755に変更します
- smbを編集し、smb.conf、smbdおよびnmbdのパスを絶対パスで指定します
- chkconfig によって起動時に実行されるようにします
# chkconfig smb on - samba を開始します
# ./smb start
0 件のコメント:
コメントを投稿