Contents
1. 時刻同期サービスを提供する NTP サーバーをインストール
1 2 3 4 5 6 7 8 9 10 |
# apt -y install chrony # vi /etc/chrony/chrony.conf # 20~23行目:デフォルト設定はコメントにして自身のタイムゾーンの NTP サーバーを追記 #pool ntp.ubuntu.com iburst maxsources 4 #pool 0.ubuntu.pool.ntp.org iburst maxsources 1 #pool 1.ubuntu.pool.ntp.org iburst maxsources 1 #pool 2.ubuntu.pool.ntp.org iburst maxsources 2 pool ntp.nict.jp iburst # 最終行に追記 (時刻同期を許可する範囲) allow 192.168.11.0/24 |
設定反映
1 |
# systemctl restart chrony |
動作確認
1 2 3 4 5 6 7 |
# chronyc sources MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^- ntp-b2.nict.go.jp 1 6 17 42 -977us[ -977us] +/- 6841us ^- ntp-a3.nict.go.jp 1 6 17 43 +354us[ +354us] +/- 5496us ^* ntp-b3.nict.go.jp 1 6 17 43 +117us[+1173us] +/- 5695us ^- ntp-a2.nict.go.jp 1 6 17 42 -800us[ -800us] +/- 7581us |
2. FTPサーバー
2.1 Vsftpdインストール、設定
①インストール
1 |
# apt install -y vsftpd |
②UFWにてPORT 21を許可
1 2 |
# ufw allow ftp # ufw reload |
③設定ファイルの変更
1 |
# vi /etc/vsftpd.conf |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
14行目 Listen=YES 22行目 Listen_ipv6=NO 25行目# 匿名ユーザのログインを許可しない anonymous_enable=NO 28行目# ローカル ユーザ アカウントによる ログインを許可する local_enable=YES 31行目# ファイルに変更を加える FTP コマンドの使用を許可する write_enable=YES 35行目# 新規ファイルに適用するパーミッション値を設定する # 各桁はowner, group, otherを示しており、ビットはrwxを示す local_umask=022 99行目# ASCIIによるアップロードを許可する ascii_upload_enable=YES 100行目# ASCIIによるダウンロードを許可する ascii_download_enable=YES 122行目# ユーザのログイン ディレクトリを、そのユーザのルート ディレクトリに変更する chroot_local_user=YES 123行目# ユーザはログイン ディレクトリの外側にアクセスできなくなる chroot_list_enable=YES 125行目# vsftpd.chroot_listにリストアップされたユーザは上記規制の対象外にする chroot_list_file=/etc/vsftpd.chroot_list 131行目 #コメント解除( ディレクトリごと一括での転送有効 ) ls_recurse_enable=YES |
④vsftpd.chroot_listの作成
1 2 3 |
# vi /etc/vsftpd.chroot_list 新規ファイルにユーザー名(huong)だけ記入して保存終了 huong |
⑤vsftpdの再起動
1 2 3 4 |
# systemctl start vsftpd # systemctl enable vsftpd Synchronizing state of vsftpd.service with SysV service script with /usr/lib/systemd/systemd-sysv-install. Executing: /usr/lib/systemd/systemd-sysv-install enable vsftpd |
FileZillaを起動し、「File」メニューから「Site Manager」を選択
「New site」をクリック
各項目の設定は次の通り入力し、「Connect」クリック
Protocol : SFTP-SSH File Transfer Protocol
Host : サーバーのIPアドレス
Port : 2244(事前に設定したSSHポート番号)
Logon Type : Normal
User : 一般ユーザー名(サーバーのログインユーザー)
接続に成功すると右側にサーバーのディレクトリー、左側にWedowsのディレクトリーが表示される
2.2 Vsftpd Over SSL/TLS
①自己署名の証明書を作成します。
Let's Encrypt 等の信頼された正規の証明書を使用する場合は当作業は不要です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# cd /etc/ssl/private # openssl req -x509 -nodes -newkey rsa:3072 -keyout vsftpd.pem -out vsftpd.pem -days 3650 --------------------------------------------------------------------------- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:JP State or Province Name (full name) [Some-State]:Osaka Locality Name (eg, city) []:Sakai Organization Name (eg, company) [Internet Widgits Pty Ltd]:private Organizational Unit Name (eg, section) []:Admin Common Name (e.g. server FQDN or YOUR name) []:Lepard Email Address []:[管理者アドレス] |
➁Vsftpd の設定ファイル編集
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# vi /etc/vsftpd.conf 149,150行目コメントアウト #rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem #rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key 151行目変更 ssl_enable=YES 152行目以降に下記追加 rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem ssl_ciphers=HIGH force_local_data_ssl=YES force_local_logins_ssl=YES |
Vsftpd再起動
1 |
# systemctl restart vsftpd |
FileZillaを起動し、確認する
先ほどと同様に「File」メニューから「Site Manager」、該当サーバーを選択し、[Connect]をクリックすると次の画面が出るのでチェックを入れ「OK」クリックすると先ほどの通り接続される
3. Sambaでファイルサーバー導入
ユーザー認証が必要なアクセス権付ファイルサーバーをSambaで構築します。
導入手順
①ユーザー認証が必要なアクセス権付の共有フォルダーを作成
②アクセス可能なグループ作成
③アクセス可能なグループに属するユーザー作成
④設定ファイル編集
3.1 sambaをインストール
1 |
# apt -y install samba |
1 |
# mkdir /home/smbshare |
3.3 アクセス可能なグループ(smbgroup)作成
1 2 3 |
# groupadd smbgroup # chgrp smbgroup /home/smbshare # chmod 770 /home/smbshare |
3.4 設定ファイル編集
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# vi /etc/samba/smb.conf # 25行目 : [global] unix charset = UTF-8 # 追記 dos charset = CP932 # 追記 40行目 : コメント解除してアクセス許可するネットワークを追記 interfaces = 127.0.0.0/8 192.168.11.0/24 ens33 101行目 : コメントアウトしてその下に追記 #map to guest = bad user security = user # 最終行に追記 # 任意の共有名を設定 [Smbshare] # 共有フォルダーを指定 path = /home/smbshare # 書き込みを許可する writable = yes # ゲストユーザーを許可しない guest ok = no # [smbgroup] グループのみアクセス許可する valid users = @smbgroup # ファイル作成時のグループを [smbgroup] とする force group = smbgroup # ファイル作成時のパーミッションを [770] とする force create mode = 770 # フォルダー作成時のパーミッションを [770] とする force directory mode = 770 # 上位フォルダーのパーミッションを継承する inherit permissions = yes |
3.5 SMB再起動
1 2 3 4 5 |
# systemctl enable smbd Synchronizing state of smbd.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable smbd # systemctl start smbd |
3.6 ユーザー(smbuser)登録、パスワード設定、グループ登録
1 2 3 4 5 6 7 |
# useradd smbuser # smbpasswd -a smbuser New SMB password: # パスワード設定 Retype new SMB password: Added user smbuser. # usermod -aG smbgroup smbuser |
3.7 UFWで、Samba サービスの許可
1 2 |
# ufw allow samba # ufw reload |
3.8 Windows11から共有ディレクトリーにアクセス
Windowsのエクスプローラーから接続
エクスプローラーを開きアドレス欄に「\\<サーバーのIPアドレス>」(今回は\\192.168.11.83)を入れ
アクセスする
認証情報の入力を求められますので
ユーザー名 : 「3.6 ユーザー(smbuser)登録、パスワード設定、グループ登録」で作成したユーザー名
パスワード : 上記ユーザーのパスワード
を入力し、「OK」クリック
共有ディレクトリーの情報が表示されるので、ファイル、フォルダが新規で作成されることを確認する