CentOS7環境構築備忘録 …Sambaの設定とNetatalkの設定が書かれているサイト

CentOS7環境構築備忘録

@moneco

https://qiita.com/moneco/items/86ff53bbd39f54b209a5

投稿日 2018年01月11日

CentOS7がインストールされたマシンにUSB接続HDDを接続し
Windows10、macOSを定期的にバックアップしファイル共有も行う

前提条件

下記項目は設定済として話を進めます

一般ユーザの追加
固定IP設定
IPv6無効化
SELinux無効化
USB接続HDDのマウント

Samba設定

Sambaインストール

# yum -y install samba

例としてserverグループを作成

# groupadd server

Windows10をバックアップするディレクトリを作成
作成したディレクトリのグループ情報をserverに変更
所有者とグループにのみフルアクセスの権限を与える

# mkdir /mnt/sdb/win10_bk
# chgrp server /mnt/sdb/win10_bk
# chmod 770 /mnt/sdb/win10_bk

ファイル共有を行うディレクトリを作成
作成したディレクトリのグループ情報をserverに変更
所有者とグループにのみフルアクセスの権限を与える

# mkdir /mnt/sdb/filesrv
# chgrp server /mnt/sdb/filesrv
# chmod 770 /mnt/sdb/filesrv

設定ファイルバックアップ

# cp /etc/samba/smb.conf /etc/samba/smb.conf.org

設定ファイル編集

# vi /etc/samba/smb.conf

設定ファイルの内容についてはまだ勉強中です
理解できたところからコメントを追記していこうと思います

[global]
unix charset = UTF-8
dos charset = CP932

workgroup = WORKGROUP

hosts allow = 127. 192.168.

security = user
passdb backend = tdbsam

vfs objects = catia fruit streams_xattr
;fruit:locking = netatalk
fruit:encoding = native
streams_xattr:prefix = user.
streams_xattr:store_stream_type = no
ea support = yes

hide files = /.DS_Store/Network Trash Folder/TheFindByContentFolder/TheVolumeSettingsFolder/Temporary Items/.TemporaryItems/.VolumeIcon.icns/Icon?/.FBCIndex/.FBCLockFolder/

[filesrv]
path = /mnt/sdb/filesrv
writable = yes
create mode = 0770
directory mode = 0770
guest ok = no
valid users = @server

[win10_bk]
path = /mnt/sdb/win10_bk
writable = yes
create mode = 0770
directory mode = 0770
guest ok = no
valid users = @server

smb nmbサービスを起動する

# systemctl start smb nmb

冒頭で作成した一般ユーザをSambaに登録

# smbpasswd -a hoge
# usermod -G server hoge

firewalldを有効にしている場合、Sambaサービスの許可が必要

# firewall-cmd –add-service=samba –permanent
# firewall-cmd –reload

Netatalkインストール

インストールに必要なライブラリ

# yum -y install rpm-build gcc make wget

# yum -y install avahi-devel bison cracklib-devel dbus-devel dbus-glib-devel docbook-style-xsl flex libacl-devel libattr-devel libdb-devel libevent-devel libgcrypt-devel libxslt krb5-devel mysql-devel openldap-devel openssl-devel pam-devel quota-devel systemtap-sdt-devel tcp_wrappers-devel libtdb-devel tracker-devel

Netatalkをダウンロードするディレクトリを作成し移動

# mkdir /home/netatalk
# cd /home/netatalk

Netatalkダウンロード

# wget http://www003.upp.so-net.ne.jp/hat/files/netatalk-3.1.11-0.1.1.fc27.src.rpm

SRPMファイルをインストール

# rpm -ivh netatalk-3.1.11-0.1.1.fc27.src.rpm

rpmbuildディレクトリへ移動してRPMファイルを作成

# cd ~/rpmbuild
# rpmbuild -bb SPECS/netatalk.spec

rpmbuildが作成したゴミを削除

# rpmbuild –clean SPECS/netatalk.spec

インストールに必要なライブラリ

# yum -y install dconf perl perl-IO-Socket-INET6

インストール

# rpm -ivh RPMS/x86_64/netatalk-3.1.11-0.1.1.el7.centos.x86_64.rpm

Netatalk 設定

設定ファイルバックアップ

# cp /etc/netatalk/afp.conf /etc/netatalk/afp.conf.org

設定ファイル編集

# vi /etc/netatalk/afp.conf

設定ファイルの内容についてはまだ勉強中です
理解できたところからコメントを追記していこうと思います

[Global]
spotlight = yes
vol preset = my default values
uam list = uams_guest.so

[my default values]
ea = samba

[Homes]
basedir regex = /home

[filesrv]
path = /mnt/sdb/filesrv
file perm = 0660
directory perm = 0770

[win10_bk]
path = /mnt/sdb/win10_bk
file perm = 0660
directory perm = 0770

[mac_bk]
path = /mnt/sdb/mac_bk
time machine = yes
vol size limit = 256000
spotlight = no
rwlist = nobody

iptablesの設定

# iptables -I INPUT -p tcp –dport afpovertcp -j ACCEPT

netatalkサービスを起動する

# systemctl start netatalk

 

コメント
HAT0001
@HAT0001
2018-01-12 00:31

sambaはユーザ認証してるのにnetatalkはゲスト接続なのは何故でしょう?

moneco
@moneco
2018-01-12 13:00

SambaもNetatalkもすべてゲスト接続にしたかったのですが、Windows10標準のバックアップツールでユーザ認証が必要だったためSambaのみアクセス制限を行いました。

Linux、Netatalk、Samba、NFSを使用したファイルサーバーについて研究・運用しています。

fsをフォローする
参考リンク

コメント