A. linux如何开ssh服务
1、修改属性文件:
root@kali:~# leafpad /etc/ssh/sshd_config
B. ssh 命令的运用问题
把命令用双引号引起来
ssh host2 "echo 'export PATH=$SCALA_HOME/bin:$PATH' >> /etc/profile"
C. 如何使用SSH登录Linux服务器
首先进入/etc目录下,/etc目录存放的是一些配置文件,比如passwd等配置文件,要想使用ssh远程登陆,需要配置/etc/ssh/sshd_config文件里的配置信息,使用vim编辑,在命令行模式下输入vim/etc/ssh/sshd_config,进入之后,按“i”进入编辑状态,在其文件里找到并修改为:PasswordAuthentication yes,PermitRootLogin yes两行即可,
此时可以查看ssh状态是否为运行状态,运行状态即可使用ssh远程登陆。
使用“ifconfig”命令查询ip地址
使用ssh登陆时,输入主机(linux的ip地址),账号,密码登陆!
如果需要远程连接SSH,需要把22端口在防火墙上开放,关闭防火墙,或者设置22端口例外/etc/init.d/iptables stop
怎么通过ssh登陆可参看下一篇“通过ssh实现远程登陆服务器!”
大致步骤为:
SSH 服务配置文件位置
/etc/ssh/sshd_config
# 修改配置
PasswordAuthentication yes
PermitRootLogin yes
# 启动SSH 服务
sevice ssh start/stop/status
安装SSH:yum install ssh
启动SSH:service sshd start
设置开机运行:chkconfig sshd on
D. SSH原理 and SSH远程登录
Secure Shell(SSH) 是由 IETF(The Internet Engineering Task Force) 制定的建立在应用层基础上的安全网络协议。它是专为远程登录会话(甚至可以用Windows远程登录Linux服务器进行文件互传)和其他网络服务提供安全性的协议,可有效弥补网络中的漏洞。通过SSH,可以把所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。目前已经成为Linux系统的标准配置。
SSH只是一种协议,存在多种实现,既有商业实现,也有开源实现。本文主要介绍OpenSSH免费开源实现在Ubuntu中的应用,如果要在Windows中使用SSH,需要使用另一个软件PuTTY。
SSH之所以能够保证安全,原因在于它采用了非对称加密技术(RSA)加密了所有传输的数据。
传统的网络服务程序,如FTP、Pop和Telnet其本质上都是不安全的;因为它们在网络上用明文传送数据、用户帐号和用户口令,很容易受到中间人(man-in-the-middle)攻击方式的攻击。就是存在另一个人或者一台机器冒充真正的服务器接收用户传给服务器的数据,然后再冒充用户把数据传给真正的服务器。
但并不是说SSH就是绝对安全的,因为它本身提供两种级别的验证方法:
第一种级别(基于口令的安全验证):只要你知道自己帐号和口令,就可以登录到远程主机。所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器,也就是受到“中间人攻击”这种方式的攻击。
第二种级别(基于密钥的安全验证):你必须为自己创建一对密钥,并把公钥放在需要访问的服务器上。如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密钥进行安全验证。服务器收到请求之后,先在该服务器上你的主目录下寻找你的公钥,然后把它和你发送过来的公钥进行比较。如果两个密钥一致,服务器就用公钥加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以用你的私钥在本地解密再把它发送给服务器完成登录。与第一种级别相比,第二种级别不仅加密所有传输的数据,也不需要在网络上传送口令,因此安全性更高,可以有效防止中间人攻击。
SSH分为客户端 openssh-client 和服务器 openssh-server,可以利用以下命令确认电脑上是否安装了客户端和服务器。
如果只是想远程登陆别的机器只需要安装客户端(Ubuntu默认安装了客户端),如果要开放本机的SSH服务就需要安装服务器。
首先确认ssh-server是否已经启动了
如图,sshd 表示ssh-server已经启动了。如果没有启动,可以使用如下命令启动:
停止和重启ssh服务的命令如下:
接下来就可以进行使用客户机远程登录服务器了~
口令登录非常简单,只需要一条命令,命令格式为: **ssh 客户端用户名@服务器ip地址 **eg:
如果需要 调用图形界面程序 可以使用 -X 选项
如果客户机的用户名和服务器的 用户名相同 ,登录时 可以省略 用户名。
还要说明的是,SSH服务的 默认端口是22 ,也就是说,如果你不设置端口的话登录请求会自动送到远程主机的22端口。我们可以使用** -p 选项来修改端口号**,比如连接到服务器的1234端口:
客户机必须要知道服务器的 ip地址 。可以在服务器端电脑上利用** ifconfig** 命令查看该机的ip地址:
如果是第一次登录远程主机,系统会给出下面提示:
意思是,该远程主机的真实性无法确定,其公钥指纹为 SHA256:s8pZiuKQr7k7f+57j22lk/IdWC8143VQKR+EabeP5,确定想要继续连接吗?
输入yes 即可。这时系统会提示远程主机被添加到已知主机列表。
然后会要求我们输入 远程主机的密码 ,输入的密码正确就可以成功登录了。命令提示符会修改为远程主机的提示符,现在开始,终端中输入的命令都将在服务器中执行。
我们可以通过** Ctrl+D** 或者 exit 命令 退出远程登录 。
每次登录远程主机都需要输入密码是很不方便的,如果想要省去这一步骤,可以利用密钥对进行连接,还可以提高安全性。
1、在本机生成密钥对
使用ssh-keygen命令生成密钥对:
ssh-keygen -t rsa #-t表示类型选项,这里采用rsa加密算法
然后根据提示一步步的按enter键即可(其中有一个提示是要求设置私钥口令passphrase,不设置则为空,这里看心情吧,如果不放心私钥的安全可以设置一下),执行结束以后会在 /home/当前用户 目录下生成一个 .ssh 文件夹,其中包含私钥文件 id_rsa 和公钥文件 id_rsa.pub。
2、将公钥复制到远程主机中
使用ssh--id命令将公钥复制到远程主机。ssh--id会将公钥写到远程主机的 ~/ .ssh/authorized_key 文件中
ssh--id [email protected]
经过以上两个步骤,以后再登录这个远程主机就不用再输入密码了。
1)已获取登录实例的管理员帐号及密码(或密钥)。
2)云服务器实例已开通22号端口。
—使用密码登录
Host Name(or IP address) :服务器的IP地址;
Port :服务器的端口,必须设置为22;
Connect type :选择 “SSH”;
Saved Sessions :填写会话名称,例如 test。 配置 “Host Name” 后,再配置 “Saved Sessions” 并保存,则后续使用时您可直接双击 “Saved Sessions” 下保存的会话名称即可登录服务器;
登录完成后,命令提示符左侧将显示当前登录云服务器的信息。
—使用密钥登录
Ps: 当不存在私钥文件时,可以选择Conversions > Import key 导入公钥(.pem)文件来生成私钥文件(.ppk)
Host Name (IP address) :服务器的IP;
Port :服务器的端口,必须填 22;
Connect type :选择 “SSH”;
Saved Sessions :填写会话名称,例如 test。 配置 “Host Name” 后,再配置 “Saved Sessions” 并保存,则后续使用时您可直接双击 “Saved Sessions” 下保存的会话名称即可登录服务器;
登录完成后,命令提示符左侧将显示当前登录服务器的信息。
E. ssh命令如何使用
ssh命令用于服务器的远程控制,一般情况下只要用“ssh IP地址”这样的格式就可以了,例如:“ssh 192.168.10.10”,可参考:第9章 使用ssh服务管理远程主机。
F. ssh如何远程执行命令
ssh支持远程命令参数 可以类似方式嵌套: alias pushbaby='cd /Users/xuqiang/Develop/work/tickets/baby/deploy;scp -r -v -i ~/.ssh/pedal/id_rsa baby.tar.gz baby.sql.txt [email protected]:/home/qiang.xu/tmp;ssh [email protected] -i ~/.ssh/pedal/id_rsa "source ~/.bash_profile;pushbaby";ssh [email protected] -i ~/.ssh/pedal/id_rsa "ssh [email protected] \"source ~/.bash_profile;pushbaby\""'更新要注意的是alias在非交互模式无法使用,需将替换成function
G. 怎么通过命令行使用ssh
[root@server~]#ssh-?ssh:illegaloption--?usage:ssh[-1246AaCfgKkMNnqsTtVvXxYy][-bbind_address][-ccipher_spec][-D[bind_address:]port][-eescape_char][-Fconfigfile][-iidentity_file][-L[bind_address:]port:host:hostport][-llogin_name][-mmac_spec][-Octl_cmd][-ooption][-pport][-R[bind_address:]port:host:hostport][-Sctl_path][-Whost:port][-wlocal_tun[:remote_tun]][user@]hostname[command]做个参考吧
H. 如何使用SSH登录远程服务器
你好,
默认配置
Windows下有很多SSH工具。在这里我是用的是Putty。如果安装了Git并配置使用Putty的话,就不需要另外在安装Putty了。使用SSH连接服务器的命令如下:
ssh IP地址
一般来说为了安全性考虑,端口号等一些参数并不会使用默认值。这样的话命令就变成这样:
ssh 用户名@IP地址 -p 端口号
如果连接成功的话会提示你输入远程服务器的密码。全部成功之后SSH就会显示远程服务器的提示符,这时候就说明连接成功了。
密钥登录
每次登录SH都需要输入密码很麻烦,而且可能不太安全。SSH还能使用另外一种登录方式,也就是使用密钥登录。这种登录方式需要客户端生成一堆公钥私钥对,然后将公钥添加到服务器中,这样下次就可以直接登录了。
首先生成SSH密钥,依照提示输入信息即可。默认生成在用户主目录中的.ssh文件夹中。带pub的是公钥,接下来需要添加到服务器中。
ssh-keygen
然后将本地公钥添加到服务器中,需要使用另一个命令:
scp -P 端口号 本地文件路径 用户名@远程服务器地址:远程路径
然后登陆服务器,找到复制进去的公钥,将公钥名字改为authorized_keys并添加到对应的.ssh文件夹中。然后退出SSH重新登陆试试,成功的话不需要输入密码就会直接进入远程服务器。
I. linux测试网络是否连通的命令
测试网络是否连通
1,ping IP 查看网络数据包是否可达 (首先PING 网关 如果网关都不通的话说明网络或配置有问题。如果网关通,但是没有外网 或PING不通其他网段的网络)那么可以实用下一条!
2,. traceroute Ip(域名)查看你是再哪一跳失败的。 从而检测出 是哪个设备的故障。比如网关 防火墙 路由器 交换机等。
测试端口是否连通
方法一、telnet法
telnet为用户提供了在本地计算机上完成远程主机工作的能力,因此可以通过telnet来测试端口的连通性,具体用法格式:
telnet ip port
说明:
ip:是测试主机的ip地址
port:是端口,比如80
如果telnet连接不存在的端口,那会如下图所示。
如果telnet 连接存在端口会出现如下图所示的内容,下图中以80端口为例。
方法二、ssh法
SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,在linux上可以通过ssh命令来测试端口的连通性,具体用法格式如下:
用法:ssh -v -p port username@ip
说明:
-v调试模式(会打印日志).
-p指定端口
username:远程主机的登录用户
ip:远程主机
如果远程主机开通了相应的端口,会有如下图所示的建立成功的提示。
如果远程主机没有开通相应的端口,则如下图所示
方法三、curl法
curl是利用URL语法在命令行方式下工作的开源文件传输工具。也可以用来测试端口的连通性,具体用法:
curl ip:port
说明:
ip:是测试主机的ip地址
port:是端口,比如80
如果远程主机开通了相应的端口,都会输出信息,如果没有开通相应的端口,则没有任何提示,需要CTRL+C断开。
方法四、wget方法
wget是一个从网络上自动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理。wget名称的由来是“World Wide Web”与“get”的结合,它也可以用来测试端口的连通性具体用法: 《Linux就该这么学》 学习更多linux命令。
wget ip:port
说明:
ip:是测试主机的ip地址
port:是端口,比如80
如果远程主机不存在端口则会一直提示连接主机。
J. 请教如何用ssh连接远程服务器
目前,远程连接服务器的类型有以下几种:
① 文字接口的明文传输:Telnet、RSH为主,很少用到。
② 文字接口的加密传输:以SSH为主,已经取代了上面的明文传输方式。
③ 图形接口:XDMCP、VNC、XRDP等较为常见。
这篇文章只为实战,不为普及概念性知识。所以我只讲解在工作中最常用到的技术SSH。关于SFTP技术和VNC技术,请查阅我的其他博客。
好,先来看一下SSH的相关技术:
SSH,英文全程是Secure Shell Protocol(安全的壳程序协议)。SSH是现在公司基本上都在使用的一种文字接口的加密传输技术,采用的是非对称秘钥系统。
对于SSH的原理,你们可以参考我的另外一篇博客,我把链接贴在这里:
SSH原理
⑴来吧,我们先来查看一下sshd这个服务(这就是SSH的远程连接必须开启的服务,属于系统自带),注意,一般这个sshd服务是默认自动开启的。
注意:切记authorized_keys这个文件的权限必须是644