⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1653.html

📁 著名的linux英雄站点的文档打包
💻 HTML
📖 第 1 页 / 共 3 页
字号:
OpenSSH的版本是1.2.3。 <br>
<br>
软件包的来源 <br>
OpenSSH的主页:http://violet.ibs.com.au/openssh/。 <br>
<br>
下载:openssh-1.2.3.tar.gz。 <br>
<br>
准备工作 <br>
编译OpenSSH需要zlib-devel软件包,这个软件包包括头文件和函数库。编译使用zlib的压缩和解压函数的程序,就要事先安装这个软件包。可以用RedHat 6.1或6.2的光盘安装。 <br>
<br>
l 用下面的命令验证一下在系统中是否已经安装了zlib-devel软件包: <br>
<br>
[root@deep /]# rpm -qi zlib-devel <br>
<br>
l 用下面命令在系统中安装zlib-devel软件包: <br>
<br>
[root@deep /]# mount /dev/cdrom /mnt/cdrom/ <br>
[root@deep /]# cd /mnt/cdrom/RedHat/RPMS/ <br>
[root@deep RPMS]# rpm -Uvh zlib-devel-version.i386.rpm <br>
gd ################################################## <br>
[root@deep RPMS]# rpm -Uvh gd-devel-version.i386.rpm <br>
zlib-devel ################################################## <br>
[root@deep RPMS]# cd /; umount /mnt/cdrom/ <br>
<br>
在使用OpenSSH之前,还必须安装OpenSSL。因为就算你不使用OpenSSL创建或保存加密文件,OpenSSH需要用OpenSSL的库文件才能正常运行。 <br>
<br>
安装软件包需要注意的问题 <br>
最好在编译前和编译后都做一张系统中所有文件的列表,然后用“diff”命令去比较它们,找出其中的差别并知道到底把软件安装在哪里。只要简单地在编译之前运行一下命令“find /* &gt;OpenSSH1”,在编译和安装完软件之后运行命令“find /* &gt; OpenSSH2”,最后用命令“diff OpenSSH1 OpenSSH2 &gt; OpenSSH-Installed”找出变化。 <br>
<br>
编译和安装 <br>
把软件包(tar.gz)解压: <br>
<br>
[root@deep /]# cp openssh-version.tar.gz /var/tmp <br>
[root@deep /]# cd /var/tmp <br>
[root@deep tmp]# tar xzpf openssh-version.tar.gz <br>
<br>
编译和优化 <br>
第一步 <br>
<br>
转到OpenSSH的新目录下,先设置编译器的编译参数: <br>
<br>
CC="egcs"  <br>
CFLAGS="-O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame- <br>
pointer -fno-exceptions"  <br>
./configure  <br>
--prefix=/usr  <br>
--sysconfdir=/etc/ssh  <br>
--with-tcp-wrappers  <br>
--with-ipv4-default  <br>
--with-ssl-dir=/usr/include/openssl <br>
<br>
这些设置告诉编译器如何编译OpenSSH: <br>
<br>
l 链接上libwrap函数库并且加上对TCP Wrappers的支持 <br>
<br>
l 禁止linux/glibc-2.1.2中域名解析的延时,缩短建立连接的时间 <br>
<br>
l 设置OpenSSL函数库的路径,这样OpenSSH才能正常运行 <br>
<br>
第二步 <br>
<br>
现在,编译和安装OpenSSH: <br>
<br>
[root@deep openssh-1.2.3]# make <br>
[root@deep openssh-1.2.3]# make install <br>
[root@deep openssh-1.2.3]# make host-key <br>
[root@deep openssh-1.2.3]# install -m644 contrib/redhat/sshd.pam /etc/pam.d/sshd <br>
<br>
“make”命令把源文件编译成可执行的二进制文件,“make install”把二进制文件和配置文件安装在合适的目录下。“make host-key”生成主机密匙,“install”命令在RedHat linux上安装对OpenSSH的PAM支持。 <br>
<br>
清除不必要的文件 <br>
用下面的命令删除不必要的文件: <br>
<br>
[root@deep /]# cd /var/tmp <br>
[root@deep tmp]# rm -rf openssh-version/ openssh-version.tar.gz <br>
<br>
“rm”命令删除所有编译和安装OpenSSH所需要的源程序,并且把OpenSSH软件的压缩包删除掉。 <br>
<br>
配置 <br>
可以到这去下载“floppy.tgz”文件:http://www.openna.com/books/floppy.tgz。把“floppy.tgz”文件解开之后,可以在相应的目录下发现我们在这本书中介绍的所有软件的配置文件。这样就没有必要手工重新生成这些文件,或者用拷贝粘贴的方法把它们粘贴到配置文件中去。不管是打算自己动手生成配置文件还是拷贝现成的,你都要学会自己修改配置文件并且把配置文件拷贝到正确的目录下。下面将具体说明。 <br>
<br>
为了运行OpenSSH,必须创建或者把下面的文件拷贝到相应的目录下: <br>
<br>
l 把“sshd_config”文件拷贝到“/etc/ssh”目录下 <br>
<br>
l 把“ssh_config”文件拷贝到“/etc/ssh”目录下 <br>
<br>
l 把“ssh”文件拷贝到“/etc/pam.d/”目录下 <br>
<br>
可以把“floppy.tgz”解压之后,找到上面列出来的文件,并拷贝到合适的目录下,或者用拷贝粘贴的方法从本书中直接粘贴出。 <br>
<br>
配置“/etc/ssh/ssh_config”文件 <br>
“/etc/ssh/ssh_config”文件是OpenSSH系统范围的配置文件,允许你通过设置不同的选项来改变客户端程序的运行方式。这个文件的每一行包含“关键词-值”的匹配,其中“关键词”是忽略大小写的。下面列出来的是最重要的关键词,用man命令查看帮助页(ssh (1))可以得到详细的列表。 <br>
<br>
编辑“ssh_config”文件(vi /etc/ssh/ssh_config),添加或改变下面的参数: <br>
<br>
# Site-wide defaults for various options <br>
Host * <br>
ForwardAgent no <br>
ForwardX11 no <br>
RhostsAuthentication no <br>
RhostsRSAAuthentication no <br>
RSAAuthentication yes <br>
PasswordAuthentication yes <br>
FallBackToRsh no <br>
UseRsh no <br>
BatchMode no <br>
CheckHostIP yes <br>
StrictHostKeyChecking no <br>
IdentityFile ~/.ssh/identity <br>
Port 22 <br>
Cipher blowfish <br>
EscapeChar ~ <br>
<br>
下面逐行说明上面的选项设置: <br>
<br>
Host * <br>
选项“Host”只对能够匹配后面字串的计算机有效。“*”表示所有的计算机。 <br>
<br>
ForwardAgent no <br>
“ForwardAgent”设置连接是否经过验证代理(如果存在)转发给远程计算机。 <br>
<br>
ForwardX11 no <br>
“ForwardX11”设置X11连接是否被自动重定向到安全的通道和显示集(DISPLAY set)。 <br>
<br>
RhostsAuthentication no <br>
“RhostsAuthentication”设置是否使用基于rhosts的安全验证。 <br>
<br>
RhostsRSAAuthentication no <br>
“RhostsRSAAuthentication”设置是否使用用RSA算法的基于rhosts的安全验证。 <br>
<br>
RSAAuthentication yes <br>
“RSAAuthentication”设置是否使用RSA算法进行安全验证。 <br>
<br>
PasswordAuthentication yes <br>
“PasswordAuthentication”设置是否使用口令验证。 <br>
<br>
FallBackToRsh no <br>
“FallBackToRsh”设置如果用ssh连接出现错误是否自动使用rsh。 <br>
<br>
UseRsh no <br>
“UseRsh”设置是否在这台计算机上使用“rlogin/rsh”。 <br>
<br>
BatchMode no <br>
“BatchMode”如果设为“yes”,passphrase/password(交互式输入口令)的提示将被禁止。当不能交互式输入口令的时候,这个选项对脚本文件和批处理任务十分有用。 <br>
<br>
CheckHostIP yes <br>
“CheckHostIP”设置ssh是否查看连接到服务器的主机的IP地址以防止DNS欺骗。建议设置为“yes”。 <br>
<br>
StrictHostKeyChecking no <br>
“StrictHostKeyChecking”如果设置成“yes”,ssh就不会自动把计算机的密匙加入“$HOME/.ssh/known_hosts”文件,并且一旦计算机的密匙发生了变化,就拒绝连接。 <br>
<br>
IdentityFile ~/.ssh/identity <br>
“IdentityFile”设置从哪个文件读取用户的RSA安全验证标识。 <br>
<br>
Port 22 <br>
“Port”设置连接到远程主机的端口。 <br>
<br>
Cipher blowfish <br>
“Cipher”设置加密用的密码。 <br>
<br>
EscapeChar ~ <br>
“EscapeChar”设置escape字符。 <br>
<br>
配置“/etc/ssh/sshd_config”文件 <br>
“/etc/ssh/sshd_config”是OpenSSH的配置文件,允许设置选项改变这个daemon的运行。这个文件的每一行包含“关键词-值”的匹配,其中“关键词”是忽略大小写的。下面列出来的是最重要的关键词,用man命令查看帮助页(sshd (8))可以得到详细的列表。 <br>
<br>
编辑“sshd_config”文件(vi /etc/ssh/sshd_config),加入或改变下面的参数: <br>
<br>
# This is ssh server systemwide configuration file. <br>
Port 22 <br>
ListenAddress 192.168.1.1 <br>
HostKey /etc/ssh/ssh_host_key <br>
ServerKeyBits 1024 <br>
LoginGraceTime 600 <br>
KeyRegenerationInterval 3600 <br>
PermitRootLogin no <br>
IgnoreRhosts yes <br>
IgnoreUserKnownHosts yes <br>
StrictModes yes <br>
X11Forwarding no <br>
PrintMotd yes <br>
SyslogFacility AUTH <br>
LogLevel INFO <br>
RhostsAuthentication no <br>
RhostsRSAAuthentication no <br>
RSAAuthentication yes <br>
PasswordAuthentication yes <br>
PermitEmptyPasswords no <br>
AllowUsers admin <br>
<br>
下面逐行说明上面的选项设置: <br>
<br>
Port 22 <br>
“Port”设置sshd监听的端口号。 <br>
<br>
ListenAddress 192.168.1.1 <br>
“ListenAddress”设置sshd服务器绑定的IP地址。 <br>
<br>
HostKey /etc/ssh/ssh_host_key <br>
<br>
“HostKey”设置包含计算机私人密匙的文件。 <br>
<br>
ServerKeyBits 1024 <br>
“ServerKeyBits”定义服务器密匙的位数。 <br>
<br>
LoginGraceTime 600 <br>
“LoginGraceTime”设置如果用户不能成功登录,在切断连接之前服务器需要等待的时间(以秒为单位)。 <br>
<br>
KeyRegenerationInterval 3600 <br>
“KeyRegenerationInterval”设置在多少秒之后自动重新生成服务器的密匙(如果使用密匙)。重新生成密匙是为了防止用盗用的密匙解密被截获的信息。 <br>
<br>
PermitRootLogin no <br>
“PermitRootLogin”设置root能不能用ssh登录。这个选项一定不要设成“yes”。 <br>
<br>
IgnoreRhosts yes <br>
“IgnoreRhosts”设置验证的时候是否使用“rhosts”和“shosts”文件。 <br>
<br>
IgnoreUserKnownHosts yes <br>
“IgnoreUserKnownHosts”设置ssh daemon是否在进行RhostsRSAAuthentication安全验证的时候忽略用户的“$HOME/.ssh/known_hosts” <br>
<br>
StrictModes yes <br>
“StrictModes”设置ssh在接收登录请求之前是否检查用户家目录和rhosts文件的权限和所有权。这通常是必要的,因为新手经常会把自己的目录和文件设成任何人都有写权限。 <br>
<br>
X11Forwarding no <br>
“X11Forwarding”设置是否允许X11转发。 <br>
<br>
PrintMotd yes <br>
“PrintMotd”设置sshd是否在用户登录的时候显示“/etc/motd”中的信息。 <br>
<br>
SyslogFacility AUTH <br>
“SyslogFacility”设置在记录来自sshd的消息的时候,是否给出“facility code”。 <br>
<br>
LogLevel INFO <br>
“LogLevel”设置记录sshd日志消息的层次。INFO是一个好的选择。查看sshd的man帮助页,已获取更多的信息。 <br>
<br>
RhostsAuthentication no <br>
“RhostsAuthentication”设置只用rhosts或“/etc/hosts.equiv”进行安全验证是否已经足够了。 <br>
<br>
RhostsRSAAuthentication no <br>
“RhostsRSA”设置是否允许用rhosts或“/etc/hosts.equiv”加上RSA进行安全验证。 <br>
<br>
RSAAuthentication yes <br>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -