[Linux] 自宅サーバを立ち上げる(Fedora 12)

この記事は3年以上前に書かれた記事です。情報が古い可能性があります。

いわゆる自宅サーバとして、Linux OS の PC サーバを立ち上げる際のメモ。ディストリビューションは、タイトルの通り Fedora 12 を使用した際のもの。

Fedora Linux | The Fedora Project
An innovative platform for hardware, clouds, and containers, built with love by you.

GNOME で root ログインする

新しい Fedora では、デフォルトで GNOME に root でログインできない。
それをできるようにするには、gdm を以下のように編集。

gdm を開く。

vi /etc/pam.d/gdm

「user != root」とある行を削除。

#↓ここをコメントアウト 
#auth       required    pam_succeed_if.so user != root quiet
...以下略

続けて gdm-password を開く。

vi /etc/pam.d/gdm-password

同様に「user != root」とある行を削除。

#↓ここをコメントアウト 
#auth        required      pam_succeed_if.so user != root quiet

gdm の custom.conf がある場合はそこも修正。

vi /etc/gdm/custom.conf
[security]
DisallowTCP=false
#↓ここを true にする
AllowRemoteRoot=true
...以下略

これで再起動。

ログイン時のユーザ一覧には現れないが、「その他」を選択し、ユーザ名に「root」と入力してパスワードを入れればログインできる(はず)。

サービスの自動起動設定

chkconfig (サービス名) on/off という書式で。

例えば、squid というサービスを自動起動を有効にするには

# chkconfig squid on

自動起動を無効にするには

# chkconfig squid off

Samba の設定

Windows と Linux とのファイル交換を、Windows のネットワークで行えるようにする。

  1. スーパーユーザになる。
    su -
  2. Samba 設定ツールをインストール。
    yum -y install system-config-samba
  3. 共有フォルダをつくる。
    • ここは /var/samba/share とする。
      mkdir /var/samba/share
  4. 共有フォルダのプロパティの「アクセス権」タブを開いて次の設定を行う。
    • 「フォルダのアクセス権」を全て「作成と削除」にする(3箇所)。
    • または、コマンドでこう。
      chmod 666 /var/samba/share
  5. 「システム」→「管理」→「Samba」を開く。
  6. 「プリファレンス」→「サーバ設定」で次の設定を行う。
    • 「基本」タブの「ワークグループ」に Windows のワークグループ名を設定。
    • 「セキュリティ」タブの「認証モード」を「共有」に設定。
    • 上記以外はデフォルトで OK。
  7. 「ファイル」→「共有を追加」で次の設定を行う。
    • 「基本」タブの「ディレクトリ」に「/var/samba/share」、共有名に「share」を設定。「書き込み可能」、「可視」のチェックを両方 ON。
    • 「アクセス」タブで「不特定多数のアクセスを許可する」にチェック。
  8. ここまでで、Samba 設定画面を閉じる。
  9. 「システム」→「管理」→「ファイアーウォール」を開く。
  10. 画面左ペインで「信頼したサービス」を選択。
  11. 画面右ペインで「Samba」のチェックを ON。
  12. 「適用」を押して画面を閉じる。
  13. 「システム」→「管理」→「SELinux Management」を開く。
  14. 画面左ペインで「Boolean」を選択。
  15. 画面右ペインで「samba_export_all_rw」を見つけて チェックを入れる。
  16. Samba サービスを開始する。
    /etc/rc.d/init.d/smb start
  17. 自動起動の設定をする。
    chkconfig smb on

これで、Windows から、上記サーバの IP を指定して開いてみる。

あと、nmb サービスを起動すれば、ホスト名で名前解決してくれる。

/etc/rc.d/init.d/nmb start
chkconfig nmb on

上記は、/etc/samba/smb.conf を開いて手動設定することもできる。

FTP の設定

Windows とのファイルの交換に FTP を使う手もある。

設定手順はこんな感じで。

  1. スーパーユーザになる。
    su -
  2. vsftpd をインストール。
    • インストール済みかどうかの確認。
      rpm -qa | grep vsftpd
      インストールされていればパッケージ名が表示される。
    • インストールされてなければ入れる。
      yum install vsftpd
  3. 「システム」→「管理」→「ファイアーウォール」で SSH(22 番)のポートを開く。
    • 画面左ペインで「信頼したサービス」を選択。
    • 画面右ペインで「SSH」(22) にチェックを入れて「OK」。
    • 「適用」を押す。
      ※多分、SSH は最初から有効になってると思う。
  4. FTPサーバ起動。
    /etc/rc.d/init.d/vsftpd start
  5. 自動起動の設定。
    chkconfig vsftpd on

これで、FTP クライアントから Linux のユーザとパスワードで接続すると、そのユーザのホームディレクトリ(/home/ユーザ名)が開く。既存ユーザのホームを荒らしたくないということであれば、FTP 用にユーザをつくれば OK。

ただ、上記の設定では通常の FTP では接続できない。SSHに対応したFTPクライアントで接続すること。例えば WinSCP とか。

ちなみに、Windows 側の文字コードは Shift_JIS だが、Linux 側は EUC だったり、UTF-8 だったりするので、FTP クライアントで文字コードを適切に設定してやらないと、日本語が文字化けするので注意。

リモートログイン

Fedora 12 など最近の Linux はセキュリティ性を考慮した設定になっていて、普通の Telnet では接続できないようになっている(デフォルトで)。

そのまま接続するには、SSHに対応したターミナルを使えば良い。

例えば以下のようなソフトが有名。(いずれもフリー)

Tera Term が最初から日本語対応していて使い易いかと。

タイトルとURLをコピーしました