![]() |
LINUX |
OpenSSHのインストール 4 Router
・クライアントからサーバへのSECUREな接続を目指します
・openssh-5.8p2のインストールと設定をします
・既存を削除し、オリジナルソースからインストールします
・公開鍵認証によるアクセスを基本とします
・make はメンテナンスマシンで行っています
・楕円曲線暗号モード(ECDH, ECDSA)のサポートが追加されています
・redhat(fedora)のopensslは(ECDH, ECDSA)を無効にしています
・ソースの取得、削除は省略します
・エディタ、ファイラーの操作は省略します
・ソースを展開したら説明文を読みましょう
・Enterキーを省略します
・ログイン端末で "#" はroot、"$" は一般ユーザのプロンプトの記号です
・設定ファイルで "#" で始まる行はコメントとして解釈されます
関連サイト| :openssh-5.8p2.tar.gz (http://www.openssh.org/) |
参照ファイル:パッケージの追加
:最初の設定 (Router)
:opensslのインストール
インストール環境| :OS | CentOS 5.6 |
| :selinux | permissive |
| :インストール先 | /usr/local/ (デフォルト) |
| :作業 | /usr/src |
| :言語 | LANG=en_US.UTF-8 |
| :ユーザー | rootで実行 |
・メンテナンスの場合は一般ユーザから行います
openssh-5.8p2
opensshパッケージの削除・ユーザsshdの修正・opensshは[Base System]でインストールされます
・ソースから入れるので削除します
・sshdユーザがないとinstallのときエラーがでます
[root@venus:~]
# service sshd stop
# rpm -e openssh openssh-clients openssh-server
# mv /etc/ssh /etc/ssh-OLD
# mkdir -p /var/empty/sshd
# usermod -d /var/empty/sshd -s /bin/false sshd
ソースの展開・インストール# cd /usr/src [root@venus:/usr/src] # tar zxvf openssh-5.8p2.tar.gz # chown -R root:root openssh-5.8p2 # cd openssh-5.8p2 [root@venus:/usr/src/openssh-5.8p2] # make distclean
・version.hの修正 SSH_PORTABLE 番号 (p1 → p2)
# vi version.h
# ./configure CFLAGS="-O2 -march=pentium3" \ --sysconfdir=/etc/ssh \ --localstatedir=/var \ --with-ssl-dir=/usr/local \ --with-privsep-path=/var/empty/sshd \ --with-md5-passwords \ --with-tcp-wrappers \ --with-pam \ --with-ipaddr-display
・CFLAGS="-O2 -march=pentium3" (CPU最適化オプション)
・該当しない場合は指定しない
・オプションは半角を入れて続けて記入した方が良い
# make
# make uninstall
# make install
・起動スクリプト・pam用ファイルをコピーします
・redhat用を使います
# cd contrib/redhat [root@venus:/usr/src/openssh-5.8p2/contrib/redhat] # cp sshd.init /etc/init.d/sshd # cp sshd.pam /etc/pam.d/sshd # cd /usr/src [root@venus:/usr/src] # tar jcvf openssh-5.8p2-rt-110503.tar.bz2 openssh-5.8p2/
sshd自動起動スクリプトを修正します (変更追加部分のみ):/etc/rc.d/init.d/sshd
・省略
KEYGEN=/usr/local/bin/ssh-keygen SSHD=/usr/local/sbin/sshd
・省略
ssh_configファイルを修正します:/etc/ssh/ssh_config
・"Ciphers"でCTRを優先的に使う (openssh-3.7以降 openssh-5.8ではデフォルト)
# $OpenBSD: ssh_config,v 1.26 2010/01/11 01:39:46 dtucker Exp $
・省略
ForwardAgent yes
・省略
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
・省略
sshd_configファイルを修正します・"Protocol2 PubkeyAuthentication"による認証を許可しています
・公開鍵認証のパスフレーズはローカルだけで使用されnet上を流れない
・suでrootになるためのパスワードはnet上を流れます
・rootログインの許可は、個人の判断でお願いします
自動起動スクリプトをonにし、sshdを起動します
# cd ~
[root@venus:~]
# chkconfig --add sshd
# service sshd start
tcp_wrappersで制御します:/etc/hosts.allowに追加します
・tcp_wrappersで制御されるもので/etc/hosts.allowの既述以外は全て拒否されます
ALL: 127.0.0.1 sshd: ALL
:/etc/hosts.deny
ALL: ALL
selinuxへの対応:/etc/pam.d/sshd
・selinuxパッチを当てない場合
#%PAM-1.0 auth required pam_stack.so service=system-auth auth required pam_nologin.so account required pam_stack.so service=system-auth password required pam_stack.so service=system-auth session required pam_selinux.so close session required pam_stack.so service=system-auth session required pam_selinux.so multiple open
:新規インストールファイルのselinuxラベルを修正
[root@venus:~]
# restorecon -Rv /etc
# restorecon -Rv /usr/local
# restorecon -Rv /var/empty
# restorecon -RFv /home
iptablesの設定Netfilter (iptables) で制御している場合、ポートを開けてください
・WAN側からはport722、LAN側からはport22で接続します
![]() |
Copyright(c) 528p.com All Rights Reserved. |

