OpenSSH的安装和使用
由于许多网络服务(包括telnet、ftp、http、rsh、rlogin以及其他服务)都可以被电子窃听,我们必须采用安全的方式进行文件移动、权限设置、shell脚本的运行等等。
为了防止攻击者窃取每天的网络数据,我们可以安装使用Secure Shell(ssh)。
这里就向大家具体介绍如何安装和使用ssh服务器和客户端程序。
这里说的openssh是一个网上的免费软件。
Open Secure Shell(openssh)是一个安全的登录系统,可以用来替代telnet、rlogin、rcp等。
简单的讲,ssh 是一个通过网络登录进入另一台计算机的程序。
我们这里的openssh主要支持的算法是RSA--RSA算法指的是Rivest-Shamir-Adelman算法。
该算法广泛应用于公钥/私钥加密系统。
如果要详细了解这方面的内容,可以查找站点:<>在本文中主要讨论openssh服务器的安装、配置和客户端的配置、使用一、openssh服务器端的安装及配置1.服务器端的安装安装方式主要是三种:o安装操作系统时候选中要安装“安全服务器”(只有部分操作系统带有此软件包,如红旗linux 2.0服务器版)o rpm包方式安装。
o 源代码方式安装;a) 安装操作系统时安装在安装操作系统的时候,在选择软件包的时候,选上“安全服务器”,就会在你的服务器上自动安装好openssh服务器。
同时在启动的时候会自动启动sshd的进程。
服务器端的配置文件在/etc/ssh/sshd-config中,但是此时你不需要对它进行修改。
你要做的仅是在客户机上安装客户端程序。
b) 用rpm包方式安装在红旗Linux 2.0中需要的rpm包可以从/mnt/cdrom/RedFlag/RPMS(系统安装盘)中获得,它们是:openssh-2.1.1p4-1.i386.rpmopenssh-clients-2.1.1p4-1.i386.rpmopenssh-askpass-2.1.1p4-1.i386.rpmopenssh-askpass-gnome-2.1.1p4-1.i386.rpmopenssh-server-2.1.1p4-1.i386.rpm安装用如下命令:#rpm -i openssh-2.1.1p4-1.i386.rpm用同样的方法安装其他的四个rpm包,在和a)相同的路径中存放着你所关心的配置文件,当然sshd的主程序在/usr/sbin下。
c) 源代码方式安装openssh的安装首先要求在系统中已经安装了zlib和Openssl。
所以我们需要的以下的安装包:(这里的版本最好采用最新的)zlib.tar.gzopenssl-0.9.6a.tar.gzopenssh-2.5.2p2.tar.gz安装步骤如下:在/home目录下建立source目录,把以上三个源代码包复制到/home/source目录下,分别对各个包解压缩,再进行相应的configure、make和makeinstall。
具体命令如下:# mkdir /home/source# cp zlib.tar.gz openssl-0.9.6a.tar.gz openssh-2.5.2p2.tar.gz /home/source(接上一行)# cd /home/source# tar zxvf zlib.tar.gz# tar zxvf openssl-0.9.6a.tar.gz# tar zxvf openssh-2.5.2p2.tar.gz(注:一般安装linux操作系统的时候都安装了zlib库,故这步不是必须的)# cd /home/source/zlib-1.1.3# ./configure -s# make# make test# make install prefix=/usr# cd /home/source/openssl-0.9.6a# ./configure -prefix=/home/openssl# make# make test# make install# cd /home/source/openssh-2.5.2p2# ./configure --with-ssl-dir=/home/openssl --prefix=/home/openssh (接上一行)# make# make install这样openssh的服务器端就安装完毕,进入/home/openssh的目录,下面的目录结构是这样的:bin/ etc/ libexec/ man/ sbin/bin/下面存放的是命令集scp sftp slogin ssh ssh-add ssh-agent ssh-keygen ssh-keyscanetc/下面存放的是配置文件libexec/下面存放的是ftp的主程序man/下面是手册sbin/下面是ssh的主程序sshd。
2. 配置openssh服务器在安装完ssh后,下一步就是验证(或是修改,如果是必须的)ssh配置文件中的参数。
这些配置文件是:。
/home/openssh/etc/sshd_config (ssh服务器端的配置文件)。
/home/openssh/etc/ssh_config (ssh客户端的配置文件)sshd_config 是服务器端的配置文件,默认情况下,其内容应该如下:# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin:/home3/ssh/bin# This is the sshd server system-wide configuration file. See sshd(8)# for more information.Port 22#Protocol 2,1#ListenAddress 0.0.0.0#ListenAddress ::HostKey /home3/ssh/etc/ssh_host_keyHostKey /home3/ssh/etc/ssh_host_rsa_keyHostKey /home3/ssh/etc/ssh_host_dsa_keyServerKeyBits 768LoginGraceTime 600KeyRegenerationInterval 3600PermitRootLogin yes## Don't read ~/.rhosts and ~/.shosts filesIgnoreRhosts yes# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication#IgnoreUserKnownHosts yesStrictModes yesX11Forwarding noX11DisplayOffset 10PrintMotd yesKeepAlive yes# LoggingSyslogFacility AUTHLogLevel INFO#obsoletes QuietMode and FascistLoggingRhostsAuthentication no## For this to work you will also need host keys in /home3/ssh/etc/ssh_known_hosts RhostsRSAAuthentication no#RSAAuthentication yes# To disable tunneled clear text passwords, change to no here!PasswordAuthentication yesPermitEmptyPasswords no# Comment to enable s/key passwords or PAM interactive authentication# NB. Neither of these are compiled in by default. Please read the# notes in the sshd(8) manpage before enabling this on a PAM system. ChallengeResponseAuthentication no# To change Kerberos options#KerberosAuthentication no#KerberosOrLocalPasswd yes#AFSTokenPassing no#KerberosTicketCleanup no# Kerberos TGT Passing does only work with the AFS kaserver#KerberosTgtPassing yes#CheckMail yes#UseLogin no#MaxStartups 10:30:60#Banner /etc/#ReverseMappingCheck yesSubsystem sftp /home/openssh/libexec/sftp-server我们根据自己的需要修改这个配置,但是一般不需要做修改。
3. 公钥/私钥的产生客户机要连接使用SSH协议的主机,除了要有个用户外,还需要针对这个用户的一对密钥,一个是公钥,一个是私钥。
产生它们用如下命令:下面的粗体字是你要输入的。
$./ssh-keygen (假设当前目录是ssh-keygen所在的目录)Generating public/private rsa1 key pair.Enter file in which to save the key (/home/lusan/.ssh/identity): Return(回车)Created directory '/home/lusan/.ssh'.Enter passphrase (empty for no passphrase): hello worldEnter same passphrase again: hello worldYour identification has been saved in /home/lusan/.ssh/identity.Your public key has been saved in /home/lusan/.ssh/identity.pub.The key fingerprint is:eb:62:ac:35:54:07:86:74:28:74:cf:89:18:f7:ae:a9 lusan@linux-128 <mailto:lusan@linux-128>使用如下命令可以修改公钥/私钥$ ./ssh-keygen -pEnter file in which the key is (/home/lusan/.ssh/identity): Return(回车)Enter old passphrase: hello worldKey has comment 'lusan@linux-128'Enter new passphrase (empty for no passphrase): helloEnter same passphrase again: helloYour identification has been saved with the new passphrase.接下来要做的就是把公钥复制到服务器端你的$home/.ssl下面,改名为authorized_keys. $ cd ~/.ssh/$ mv identity.pub authorized_keys然后把私钥准备给客户端用,如果你要从windows上登陆,则应把这个文件下载到windows 中存放。
ssh -j的用法
ssh -j的用法SSH(Secure Shell)是一种网络协议,用于在网络上安全地远程访问和管理计算机系统。
SSH的主要功能是替代不安全的Telnet和rlogin协议,并提供加密的通道来保护数据的传输。
SSH可以通过命令行工具(如OpenSSH和PuTTY)或图形界面工具(如SecureCRT和Bitvise SSH Client)来使用。
下面我将一步一步回答关于SSH的用法。
第一步:安装SSH在使用SSH之前,需要在计算机上安装相应的SSH软件。
对于Windows 操作系统,可以通过下载和安装OpenSSH或PuTTY来获得SSH功能。
对于Mac和Linux操作系统,通常已经默认安装了OpenSSH。
安装完成后,就可以开始使用SSH了。
第二步:连接到远程主机要连接到远程主机,需要知道远程主机的IP地址或域名,以及登录远程主机的用户名和密码。
假设远程主机的IP地址是192.168.1.100,用户名是j,密码是123456,我们可以使用以下命令来连接到远程主机:ssh j192.168.1.100在第一次连接远程主机时,会出现一个安全警告,提示你是否继续连接。
这是因为SSH使用公钥加密来验证远程主机的身份,以保证连接的安全性。
确认远程主机的公钥指纹后,你可以选择继续连接。
第三步:远程操作成功连接到远程主机后,你可以在远程主机上执行各种操作。
与在本地计算机上操作一样,你可以在终端中运行命令、编辑文件、上传和下载文件等。
例如,你可以使用以下命令在远程主机上列出当前目录的文件和文件夹:ls或者,你可以使用以下命令在远程主机上创建一个新的目录:mkdir new_folder如果你需要编辑一个文件,可以使用文本编辑器(如nano或vim)来修改文件的内容。
例如,使用以下命令来编辑一个名为example.txt的文件:nano example.txt当你完成远程操作后,可以使用以下命令断开与远程主机的连接:exit第四步:使用SSH密钥对除了使用用户名和密码进行身份验证外,SSH还支持使用密钥对进行身份验证。
在windows中安装OpenSSH,无密码登录,永远不断线
在windows中安装OpenSSH,⽆密码登录,永远不断线假定host1是本地主机,host2是远程主机。
由于种种原因,这两台主机之间⽆法连通。
但是,另外还有⼀台host3,可以同时连通前⾯两台主机。
因此,很⾃然的想法就是,通过host3,将host1连上host2。
我们在host1执⾏下⾯的命令:"本地端⼝:⽬标主机:⽬标主机端⼝"$ ssh -L 2121:host2:21 host3监听本地2121端⼝,当访问本地2121端⼝时,数据将通过host3 转发到host2 的21 端⼝。
$ ssh -N -L 0.0.0.0:80:localhost:80 pi@host3监听本地80端⼝,当访问本地80 端⼝时会转发到host3的80端⼝,这⾥的localhost是指的是host3的“本地”另⼀个例⼦是通过host3的端⼝转发,ssh登录host2。
$ ssh -L 9001:host2:22 host3这时,只要ssh登录本机的9001端⼝,就相当于登录host2了。
-p参数表⽰指定登录端。
$ ssh -p 9001 localhost还是接着看上⾯那个例⼦,host1与host2之间⽆法连通,必须借助host3转发。
但是,特殊情况出现了,host3是⼀台内⽹机器,它可以连接外⽹的host1,但是反过来就不⾏,外⽹的host1连不上内⽹的host3。
这时,"本地端⼝转发"就不能⽤了,怎么办?解决办法是,既然host3可以连host1,那么就从host3上建⽴与host1的SSH连接,然后在host1上使⽤这条连接就可以了。
我们在host3执⾏下⾯的命令:$ ssh -R 2121:host2:21 host1 R参数也是接受三个值,分别是"远程主机端⼝:⽬标主机:⽬标主机端⼝"。
这条命令的意思,就是让host1监听它⾃⼰的2121端⼝,然后将所有数据经由host3,转发到host2的21端⼝。
Ubuntu上安装openssh
Ubuntu上安装openssh方式一、直接用apt-get install openssh-server安装。
记不清包名字时可用apt-cache search openssh搜索一下。
方式二、下载openssh二进制源码包安装:下载后su到root用户tar xfvz openssh-4.4p1.tar.gz解压然后 cd openssh-4.4p1configuremakemake intall在安装过程中会出现两个错误,是缺少一些必要的文件。
错误1: error: *** zlib missing - please install first or check config.log ***解决办法: apt-get install libz-dev错误2:error: *** Can't find recent OpenSSL libcrypto (see config.log for details) ***执行:apt-cache search openssl | grep dev 查找到要安装的openssl包,你应该会得到如下信息。
-------------------------------------------libcurl3-dev - Transitional package to libcurl3-openssl-dev libcurl3-openssl-dev - Development files and documentation for libcurllibaws-dev - Ada Web Server development fileslibssl-ocaml-dev - OCaml bindings for OpenSSLlibssl-dev - SSL development libraries, header files and documentation-------------------------------------其中dev前面的就是所要安装的包。
OpenSSH配置
SSH是英文Secure Shell的简写形式。
通过使用SSH,你可以把所有传输的数据进行加密,这样“中间人“这种攻击方式就不可能实现了,而且也能够防止DNS 欺骗和IP欺骗。
使用SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。
SSH有很多功能,它既可以代替Telnet,又可以为FTP、Pop、甚至为PPP提供一个安全的“通道“。
最初的SSH是由芬兰的一家公司开发的。
但是因为受版权和加密算法的限制,现在很多人都转而使用OpenSSH。
OpenSSH是SSH的替代软件包,而且是免费的,可以预计将来会有越来越多的人使用它而不是SSH。
SSH是由客户端和服务端的软件组成的,有两个不兼容的版本分别是:和。
用SSH 的客户程序是不能连接到SSH 的服务程序上去的。
OpenSSH 同时支持SSH 和。
SSH协议的内容SSH协议是建立在应用层和传输层基础上的安全协议,它主要由以下三部分组成,共同实现SSH的安全保密机制。
传输层协议,它提供诸如认证、信任和完整性检验等安全措施,此外它还可以任意地提供数据压缩功能。
通常情况下,这些传输层协议都建立在面向连接的TCP 数据流之上。
用户认证协议层,用来实现服务器的跟客户端用户之间的身份认证,它运行在传输层协议之上。
连接协议层,分配多个加密通道至一些逻辑通道上,它运行在用户认证层协议之上。
当安全的传输层连接建立之后,客户端将发送一个服务请求。
当用户认证层连接建立之后将发送第二个服务请求。
这就允许新定义的协议可以和以前的协议共存。
连接协议提供可用作多种目的通道,为设置安全交互Shell会话和传输任意的TCP/IP端口和X11连接提供标准方法。
SSH的安全验证从客户端来看,SSH提供两种级别的安全验证。
第一种级别(基于口令的安全验证),只要你知道自己的帐号和口令,就可以登录到远程主机,并且所有传输的数据都会被加密。
但是,这种验证方式不能保证你正在连接的服务器就是你想连接的服务器。
openSSH的配置
一直想不下linux技术,一直没有时间弄,最近由于工作上的需要,需要熟悉linux系统,借此机会好好学习一下首是是最其本的,安装openssh-server,方便远程访问,使用Putty可以访问ubuntuPuTTY 是一套免费的SSH / T elnet 程序,它可以连接上支持SSH Telnet 联机的站台,并且可自动取得对方的系统指纹码(Fingerprint)。
建立联机以后,所有的通讯内容都是以加密的方式传输,因此你再也不用害怕使用Telnet 在Internet 或公司的内部网络传输资料时被他人获知内容了!经过多方查找资料,终于明白安装过程了,具体如下:第一步:Ubuntu 电脑上需要安装openssh-server :sudo apt-get install openssh-server由于默认Ubuntu采用UTF-8的字符集,所以putty需要做一些设置:点击左边的Windows -> Appearance 设置Font settings ,点击Change... 按钮选择为仿宋体或者新宋体.点击左边的Windows -> Translation 设置Character set translation 为UTF-8然后,点击Open 连接服务器即可第二步:安装的时候,可能不能成功安装openssh-server,报以下错误现在没有可用的软件包openssh-server,但是它被其它的软件包引用了.这可能意味着这个缺失的软件包可能已被废弃,或者只能在劳动保险发布源中找到.E:软件包openssh-server还没有可供安装的候选者解决办法:当前的源类表中没有你要安装的软件包,修改/etc/apt/sources.list 添加源列表,添加以下源# 欧洲,此为官方源,推荐使用,PING=500deb /ubuntu/ feisty main restricted universe multiversedeb /ubuntu/ feisty-security main restricted universe multiverse deb /ubuntu/ feisty-updates main restricted universe multiverse deb /ubuntu/ feisty-proposed main restricted universe multiverse deb /ubuntu/feisty-backports main restricted universe multiversedeb-src /ubuntu/ feisty main restricted universe multiversedeb-src /ubuntu/feisty-security main restricted universe multiversedeb-src /ubuntu/feisty-updates main restricted universe multiversedeb-src /ubuntu/feisty-proposed main restricted universe multiversedeb-src /ubuntu/feisty-backports main restricted universe multiversedeb /ubuntu-cn/ feisty main restricted universe multiverse# 中国台湾省台湾大学,推荐网通用户使用,电信PING平均响应速度41MS,PING=100 deb .tw/ubuntu/ feisty main restricted universe multiversedeb-src .tw/ubuntu/ feisty main restricted universe multiverse deb .tw/ubuntu/feisty-updates main restricted universe multiversedeb-src .tw/ubuntu/feisty-updates main restricted universe multiversedeb .tw/ubuntu/feisty-backports main restricted universe multiversedeb-src .tw/ubuntu/feisty-backports main restricted universe multiversedeb .tw/ubuntu/feisty-security main restricted universe multiversedeb-src .tw/ubuntu/feisty-security main restricted universe multiversedeb .tw/ubuntu/feisty-proposed main multiverse restricted universedeb-src .tw/ubuntu/feisty-proposed main restricted universe multiverseVI有三种模式:命令模式、插入模式、末行模式,它们的功能如下:(1)命令模式:当执行VI后,首先会进入指令模式,此时输入的任何字符都被视为指令。
openssh 用法
openssh 用法Openssh 是一种用于安全远程连接的工具,可以在不安全的网络上建立加密的连接。
它允许用户通过网络远程登录、传输文件和执行命令。
本文将为你介绍openssh 的基本用法及其常见应用场景。
第一步:安装Openssh要使用openssh,首先需要在你的计算机上安装它。
通常情况下,大多数Linux 发行版都会默认安装openssh,而Windows 和macOS 用户则需要手动安装。
对于Windows 用户,可以从官方网站下载适用于Windows 的openssh 客户端。
而对于macOS 用户,则可以通过Homebrew 或MacPorts 安装openssh。
第二步:连接到远程主机一旦openssh 安装完成,你就可以使用它来连接到远程主机。
在命令行中输入以下命令来连接到远程主机:bashssh username@remote_host其中,username 是远程主机上的用户名,remote_host 是远程主机的IP 地址或域名。
当你第一次连接到一个远程主机时,openssh 会要求你确认主机的密钥指纹。
确认无误后,openssh 将在本地创建一个密钥对,并将公钥传输至远程主机,以建立加密连接。
第三步:文件传输Openssh 还可以用来在本地计算机和远程主机之间传输文件。
你可以使用scp 命令将文件从本地计算机传输至远程主机,或者从远程主机传输至本地计算机。
例如,要将本地文件foo.txt 传输至远程主机上的/home/username 目录下,你可以使用以下命令:bashscp foo.txt username@remote_host:/home/username类似地,如果想从远程主机传输文件至本地计算机,你可以使用以下命令:bashscp username@remote_host:/home/username/foo.txt .第四步:执行远程命令Openssh 还可以用来在远程主机上执行命令。
openssh安装升级文档
一、准备依赖软件和环境注意:适用于SUSE Linux Enterprise Server 11 SP1(x86_64)1.1本地ZYPPER配置注意:(gcc,gcc-gcc+已经安装的话,跳过此步骤)存放repo文件目录cd /etc/zypper/repos.d创建目录mkdir or赋予目录权限chmod -r 777 or1.2上传openssh升级所需安装包(1)将openssh-7.9p1.tar.gz;openssl-1.0.2q.tar.gz;openssl-fips-2.0.16.tar.gz和zlib-1.2.11.tar.gz上到/usr/local/src目录下(2)将下列rpm安装包pam-devel-1.3.0-10.1.x86_64.rpm;zlib-devel-1.2.8-14.3.1.x86_64.rpm和libopenssl-devel-1.0.2j-25.1.x86_64.rpm上传到/home/目录1.3安装必要的依赖包安装必要的gcc, gcc-c++编译工具以及libopenssl-devel,pam-devel,zlib-devel#zypper in -y gcc gcc-c++#rpm -ivh libopenssl-devel-1.0.2j-25.1.x86_64.rpm --nodeps#rpm -ivh pam-devel-1.3.0-10.1.x86_64.rpm --nodeps#rpm -ivh zlib-devel-1.2.8-14.3.1.x86_64.rpm --nodeps二、安装必要的OpenSSL2.1检查系统自带的openssl#rpm -qa openssl注意:由于openssl依赖的软件太多,所以在升级openssl时,无需卸载旧版本,如果强制卸载可能导致系统不能正常运行2.2检查openssl版本#openssl version2.3检查openssl安装文件及路径#which openssl注意在升级过程中将旧版的相关文件进行备份,在升级新版本后重新链接替换为新版本对应的文件目录#whereis openssl#ls /etc/ssl2.4备份上述文件,/usr/bin/X11/openssl为/usr/bin/openssl的软链接#mkdir /home/ssl_bak#mv /usr/bin/openssl /home/ssl_bak/#mv /etc/ssl /home/ssl_bak/etc_ssl#mv /usr/include/openssl /home/ssl_bak/include_openssl2.5安装zlib-1.2.11#cd /usr/local/src#tar -zxvf zlib-1.2.11.tar.gz#cd zlib-1.2.11#./configure#make#make install三、升级openssl3.1安装openssl-fips-2.0.16#cd /usr/local/src#tar -zxvf openssl-fips-2.0.16.tar.gz#cd openssl-fips-2.0.16/# ./config --prefix=/usr/local/openssl --openssldir=/etc/ssl shared#make#make install3.2检查安装好后的目录文件#ll /usr/local/openssl#ls /usr/local/openssl/{bin,include,lib}3.3安装openssl-1.0.2q#cd /usr/local/src#tar -zxf openssl-1.0.2q.tar.gz#cd openssl-1.0.2q/#./config --prefix=/usr/local/openssl --openssldir=/etc/ssl shared #make#make install3.4查看安装好的/usr/local/openssl目录文件#ll /usr/local/openssl/{bin,include,lib}3.5查看/etc/ssl目录#ll /etc/ssl3.6配置升级后的openssl的相关目录(链接openssl程序)#ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl#ln -s /usr/local/openssl/include/openssl /usr/include/openssl #vim /etc/ld.so.conf注意,一定要添加上面一行,/usr/local/openssl/lib放置在包含lib64的行后面,否则编辑openssh时会找不到openssl-1.0.2q,只会找到原来版本的openssl进行编译#ldconfig3.7查看升级的openssl版本#/usr/bin/openssl version -a四、卸载系统原有的OpenSSH4.1停止openssh服务#service sshd stop4.2卸载openssh#zypper rm openssh#rpm -qa|grep openssh五、升级OpenSSH5.1安装openssh8.1p1#cd /usr/local/src#tar -zxvf openssh-8.1p1.tar.gz#cd openssh-8.1p1/#./configure --prefix=/usr --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/src/openssl-1.0.2q --with-md5-passwords --mandir=/usr/share/man --with-zlib=/usr/local/src/zlib-1.2.11 --without-openssl-header-check#make#make install5.2查看升级后的版本#ssh -v5.3 拷贝sshd启动脚本,contrib/目录下对应系统的启动脚本#pwd#cd contrib/#cp suse/rc.sshd /etc/init.d/sshd#chmod 777 /etc/init.d/sshd5.4启动并设置开机启动#chkconfig --add sshd#chkconfig sshd on#chkconfig --list5.5修改sshd文件#vim /etc/ssh/sshd_config增加PermitRootLogin yes这一行修改#PasswordAuthentication yes行去掉注释#如果没有以上两个命令,就手动添加进去。
Linux系统下OpenSSH的安装及基本配置文件详解
Linux系统下OpenSSH的安装及基本配置⽂件详解远程安装调试SSH特别注意,OpenSSH卸载后,可能导致凡使⽤SSH协议连接服务器的⼯具都⽆法登陆,⽐如WINSCP、PUTTY等,如果你正使⽤远程桌⾯,最好先开启TELNET并确保开机启动(或其它可替代的远程管理⼯具也可以),客户端可以正常连接后才可动⼿更新SSH,否则⼀旦SSH启动失败,就只能找机房了。
⼀、卸载原来SSH默认SSH会安装为服务,且开机启动,所以要先把服务停⽌(本⽂环境RedHat5.4):复制代码代码如下:service sshd stop这时,建议备份⼀下/etc/init.d/sshd这个启动⽂件,因为下⽂编译安装OpenSSH后,没这个启动⽂件,尽管实际修改使⽤也不是太⽅便,除⾮你下⽂的安装⽬录跟原来的⼀样的。
复制代码代码如下:mv /etc/init.d/sshd /etc/init.d/sshd.old卸载软件包:复制代码代码如下:rmp -qa|grep openssh*把输出列表中的SSH软件包都卸载掉。
卸载⽅法请参考:⼆、下载并安装新的OPENSSH复制代码代码如下:cd /tmpwget http://ftp.jaist.ac.jp/pub/OpenBSD/OpenSSH/portable/openssh-5.9p1.tar.gztar xzvf openssh-5.9p1.tar.gzcd openssh-5.9p1./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-pam --with-ssl-dir=/usr/local/openssl --with-md5-passwords --mandir=/usr/share/man --with-zlib=/usr/local/zlib2make && make install这⾥需要注意,上⾯的./configure配置,天缘的默认路径如下:复制代码代码如下:openssl -> /usr/local/opensslzlib -> /usr/local/zlib2确认这些路径跟你的系统对应。
ssh -i的用法
ssh -i的用法SSH(Secure Shell)是一种网络协议,用于在不安全的网络连接中,安全地对远程计算机进行安全的数据传输和远程命令执行。
通过SSH,可以在不暴露敏感信息的情况下,远程登录到服务器,并执行各种维护和管理操作。
本文将一步一步详细介绍SSH的用法,希望能帮助读者更好地理解和使用SSH。
1. SSH的安装和配置首先,我们需要在本地机器上安装并配置SSH。
在大多数Linux发行版中,SSH 已经预先安装好了。
如果你使用的是其他操作系统,如Windows,你可以通过下载并安装开源的SSH实现,比如OpenSSH。
一旦安装完成,你需要打开终端或命令提示符,找到SSH的配置文件,通常是/etc/ssh/sshd_config,然后对其进行编辑。
在配置文件中,你可以指定SSH监听的端口、允许登录的用户和其他安全选项。
2. SSH的基本用法一旦安装和配置好SSH,你可以使用SSH客户端连接到远程服务器。
在终端或命令提示符中,输入以下命令:bashssh [options] [user@]hostname [command]其中,`[options]`是可选参数,比如指定SSH的端口号、使用公钥认证等;`[user@]hostname`是远程服务器的用户名和主机名或IP地址;`[command]`是要在远程主机上执行的命令,可选。
3. SSH的认证方式SSH支持多种认证方式,常用的有两种:密码认证和公钥认证。
密码认证是最简单的一种方式,当你使用SSH连接到远程服务器时,系统会要求你输入密码。
公钥认证则更加安全,它通过生成一对密钥(公钥和私钥)来完成认证。
首先,你需要在本地生成一对密钥对,并将公钥复制到远程服务器上的`~/.ssh/authorized_keys`文件中。
当你使用SSH连接到远程服务器时,服务器会验证你的私钥与之匹配的公钥,如果匹配成功,则允许你登录。
4. SSH的端口转发SSH的端口转发功能可以帮助我们在不直接暴露服务到公网的情况下,通过SSH 隧道将流量转发到指定服务端口。
ubuntu手动安装openSSH
手动下载:zlib-1.2.5.tar.gzopenssl-1.0.0c.tar.taropenssh-5.6p1.tar.gz第一步:安装zlib1.解压zlib-1.2.5.tar.gzsudo –zxvf zlib-1.2.5.tar.gz2.进入zlib目录cd zlib-1.2.53.编译安装sudo ./configuresudo makesudo make install第二步:安装openSSL1.解压openssl-1.0.0c.tar.tarsudo–xvf openssl-1.0.0c.tar.tar2.进入openssl目录cd openssl-1.0.0c3.编译安装sudo ./config --prifix=/usr/local/openssl --openssldir=/usr/local/openssl sudo makesudo make install第三步:安装openssh1.解压opensshsudo –zxvf openssh-5.6p1.tar.gz2.进入openssh目录cd openssh-5.6p13.编译安装sudo ./configure --with-ssl-dir=/usr/local/openssl这里输入的目录为安装openssl配置的目录sudo makesudo gedit /etc/passwd在文件最后一行加入:sshd:x:74:74:Provilege-separated SSH:/var/empty/sshd:/sbin/nologin 保存后退出sudo make install第四步:启动ssh-serversudo /usr/sbin/sshd 或sudo /usr/local/sbin/sshd查看监听端口是否22netstat –tnlp|grep :22尝试从本机通过ssh登录ssh localhost如果能登录成功说明安装完成第五步:配置ssh开机自启动sudo gedit /etc/rc.local在exit 0 上面写入sudo /usr/sbin/sshd 或sudo /usr/local/sbin/sshd。
