やってここまで来ました。次はパッケージの設定になります。
今回インストール&設定するパッケージは以下のとおり
①色々アップデート
②ssh:遠隔でログインする為の設定
③ftp:ファイルの転送を行うための設定
④SAMBA:今回のメインパッケージ、Windows<=>linuxのファイルのやりとりが出来るパッケージ
ssh設定
デフォルトでsshが動作しているので、そのままで他のPCからログイン出来るはずです。
しかし、ログインするソフトウエアによってログイン出来たり、出来なかったりするので注意が必要です(ここでハマりました)
TeraTermならVer5.0以降で
AlmaLinux9はSSH2(Secure Shell Version 2)で動いているらしいので、SSH2対応のターミナルでないと接続出来ません。PoderosaでもSSH2対応にバージョンアップしましょう。
ログインはユーザで
rootで直接ログインすることは禁止していますので、先ずはユーザでログインしてからsuコマンドでroot権限を取ります。これでパソコンからいろいろと設定が可能になります。
いろいろアップデート
細かいアップデートがあると思うので、ここでいろいろアップデートします
Kernelの更新
以下のコマンドを実行して再起動
># dnf install -y kernel
># systemctl reboot
># dnf needs-restarting -r
># systemctl reboot
セキュリティ更新
># dnf -y update --security
># systemctl reboot
その他全パッケージ更新
># dnf -y update
># systemctl reboot
vsftpdのインストール
sambaをインストールすればあまり使いませんが、細かいファイルをPCに保存したり出来るのでvsftpd(FTPサーバー)をインストールします。
SELinuxの無効化
SELinux (Security-Enhanced Linux) は、管理者がシステムにアクセスできるユーザーをより詳細に制御できるようにするパッケージですが、これによってFTPサーバーにアクセス出来なくなる(SELinuxの機能を熟知していれば問題無い)ので、初心者はSELinux 無効化にする方が苦労がなくなった良いです。
SELinuxの動作確認
まず、SELinuxが動作しているか確認します、以下のコマンドで状況を確認します
># getenforce
→Enforcing:SELinuxが有効な状態
→Permissive:SELinuxが有効ですが実際にはアクセス制御を行わず、ログ出力のみを行う状態
→Disabled:SELinuxが無効化
たぶん「Enforcing」になっていると思いますのでSELinuxを永続的に無効化します># vi /etc/selinux/config
でconfigを開き、SELINUX=disabled へ変更して># systemctl rebootでリブートします。
># getenforceコマンドを打って、「Disabled」になっていることを確認します。
vsftpdインストールと起動
以下のコマンドでvsftpdをインストールします
># dnf -y install vsftpd
vsftpdの起動させます
># systemctl start vsftpd
vsftpdの自動起動の設定
># systemctl enable vsftpd.service
vsftpdの起動状態の確認
># systemctl status vsftpd
ちゃんと起動されていればOKです
vsftpdの設定
まず、vsftpd.confをバックアップします
># cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.org
vsftpd.confの編集として
># vi /etc/vsftpd/vsftpd.conf
●114行目 変更 ( IPv4を有効にする )
listen=YES
●123行目 変更 ( IPv6 は、無視させる )
listen_ipv6=NO
Firewall関連
FirewallにFTPのポート開放許可を出す必要がありますので以下のコマンドを実行します
># firewall-cmd --add-service=ftp --zone=public --permanent
># firewall-cmd --reload
Firewallに登録してあるサービスを以下のコマンドで確認し、FTPが入っていればOKです># firewall-cmd --list-services --zone=public --permanent
一応、ここまで来たら再起動させておきましょう。また、FFFTP等でFTPでログイン出来る事も確認しておきましょう。
># systemctl reboot
vsftpdでroot権限で入る
vsftpdでは直接root権限では入れなくなったので
どうしてもrootで入る場合には
vi /etc/vsftpd/ftpusers
vi /etc/vsftpd/user_list
にrootがあるので、消せば入れる
その後、vsftpdを再起動
># systemctl restart vsftpd
Samba4(4.18.6-101.el9_3.alma.1)のインストール
つぎにバックアップを簡単にするためにWindowsのネットワークからLinuxサーバーに直接参照できるSambaをインストールします。
Sambaのインストール
以下のコマンドを実行します
># dnf -y install samba
smb.confの設定
smb.confをバックアップします
># cp /etc/samba/smb.conf /etc/samba/smb.conf.org
smb.confの修正vi
以下の様にsmb.confを書き換えます
smb.confの主なポイントしては以下のとおり
・/home/backup配下にバックアップファイルが保存される
・フォルダ名は「backup」という名にしている
・アクセス出来るIPは192.168.1.xxxのみ(ローカルLANからのみ)
・Sambaユーザーとして存在しないユーザーがアクセスした場合にゲストアカウントとして扱う設定
(家庭内の無線LANでスマホとか写真を保存するときにゲストアカウントとしてログイン可能)
# See smb.conf.example for a more detailed config file or # read the smb.conf manpage. # Run 'testparm' to verify the config is correct after # you modified it. # # Note: # SMB1 is disabled by default. This means clients without support for SMB2 or # SMB3 are no longer able to connect to smbd (by default). [global] unix charset = UTF-8 dos charset = CP932 workgroup = WORKGROUP security = user map to guest = Bad User hosts allow = 192.168.1. domain master = no local master = Yes preferred master = Yes os level = 65 load printers = no log file = /var/log/samba/%m.log log level = 4 client max protocol = SMB3 client min protocol = SMB3 passdb backend = tdbsam printing = cups printcap name = cups load printers = yes cups options = raw [homes] comment = Home Directories valid users = %S, %D%w%S browseable = No read only = No inherit acls = Yes [printers] comment = All Printers path = /var/tmp printable = Yes create mask = 0600 browseable = No [print$] comment = Printer Drivers path = /var/lib/samba/drivers write list = @printadmin root force group = @printadmin create mask = 0664 directory mask = 0775 [BACKUP] comment = Personal Share path = /home/backup browsable = yes public = yes writable = yes guest ok = yes guest only = yes create mode = 0777 directory mode = 0777 force directory mode = 777
フォルダの設定
・/home/backupフォルダを作成する
・chmod 777 /home/backup として、ディレクトリに全権限を付与する
sambaの起動設定
以下のコマンドを実行させます
># systemctl enable smb.service
># systemctl enable nmb.service
># systemctl restart smb.service
># systemctl restart nmb.service
Firewallの解放
># firewall-cmd --add-service=samba --zone=public --permanent
># firewall-cmd --reload
Firewallに登録してあるサービスを以下のコマンドで確認し、Sambaが入っていればOKです># firewall-cmd --list-services --zone=public --permanent
バックアップ先フォルダの属性変更
バックアップ先フォルダは不特定多数(家庭内LAN内です)がアクセス出来るようにしますのでフォルダの権限を開放します。
># chmod 777 /home/backup
ここまで来たらサーバ-を再起動します
># systemctl reboot