linux怎么ssh远程linux怎么ssh,第1张

如何配置ssh客户端,怎么ssh连接Linux服务器?

在Linuxe服务器上开启远程和端口。内网的话直接用地址加端口即可连接。外网需要做端口映射。

1开启ssh(secureshell)服务(我的是linuxubuntu1010),当然在开启ssh服务之前,需要下载相关得软件,使用下面得命令即可:sudoapt-getinstallssh然后进入/etc/initd输入命令:sudoservicesshstart开启ssh服务使用netstat-tln查看ssh服务是否已经打开(ssh服务默认使用22端口)若要关闭ssh服务时,使用:sudoservicesshstop即可关闭ssh服务

2在客户端(widnows主机)上下载ssh客户端putty,填写linux服务器ip,sessionname然后保存,打开,输入用户名,和密码,那么就登录成功了

Linux系统下如何配置SSH?如何开启SSH?

1、如何查看linux操作系统版本

打开linux终端命令行,输入如下命令即可。lsb_release-a。采用的是实体机服务器,操作系统为redhat67,详细请看下图。

2、如何查看SSH服务是否已经安装

在终端命令行执行。rpm-qa|grep"ssh"。执行结果请看下图,说明已经安装;其实在安装linux操作系统的时候默认就会安装上的。

3、如果SSH服务没有安装怎么办

找到操作系统镜像文件解压,找到ssh相关的包,上传到服务器。然后执行如下安装命令安装即可。rpm-ivhrpm包名。如果服务器挂载了镜像,可以直接采用如下命令安装也可以。yuminstallssh。这里因为我的linux服务器已经安装SSH,就不在做安装操作了。

4、如何启动SSH服务

启动命令,servicesshdstart。停止命令,servicesshdstop。重启命令,servicesshdrestart。首先我们来看看SSH服务是否启动了,请执行如下命令即可,servicesshdstatus。如果想重新启动一下,可以执行重启命令,servicesshdrestart。具体执行情况请看下图。

5、怎么查看SSH端口是多少

执行如下命令,more/etc/ssh/sshd_config。就可以查看到有说明,默认端口为22,具体如下图所示。另外端口是可以修改的。

6、如何配置开启SSH服务,有两种方案

1、关闭防火墙执行如下命令,serviceiptablesstop

2、就是放开22端口,vi/etc/sysconfig/iptables,在iptables文件中加上这一行即可,-AINPUT-mstate--stateNEW-mtcp-ptcp--dport22-jACCEPT。请看下图操作所示。

ssh有几种连接方法?

Linux系统实现SSH连接的3种方式:

方式一:密码登入,原理:执行远程连接命令并输入账号密码。

方式二:公钥登入(免密登入),原理:注入公钥到服务端,表示拥有该公钥的客户端可以免密登入。

方式三:秘钥文件登入,原理:客户端每次登入时携带服务端秘钥来登入。

linux如何开ssh服务?

安装ssh和openssh-serverdebian和ubuntu:suapt-getinstallsshopenssh-server/etc/initd/sshstart#start|resart|stop从sysv-rc-conf中看到ssh开着就行了红帽系的没试过,下rpm安装,方法应该类似不设置密码,让他自己进入可以,具体看你发行版gnome下图形界面的登录窗口设置ps:不知道如何去掉它这个警告,尽量不要用root登录图形界面

SSH是什么?Linux如何修改SSH端口号?

1

SSH为SecureShell

由IETF的网络工作小组(NetworkWorkingGroup)所制定;

SSH是建立在应用层和传输层基础上的一种安全协议。

SSH传输数据是加密的,可以有效防止传输过程被截取数据保障安全。

SSH的数据是经过压缩的,所以可以加快传输的速度

1

首先查看一下当前linux是否已经安装SSH软件包,使用rpm-qa|grepssh

2确认ssh服务已经开启

3找到SSh服务配置文件路径一般都是在/etc/ssh这个目录下面sshd_config这个文件

编辑修改SSH端口号

1使用VIvim编辑器,打开sshd_config这个文件,搜索找到port字段

2将光标定位到port22这行yy然后键盘P复制一行,insert插入编辑22端口为2222

3设置好之后,wq保存退出,表示已经增加了一个2222端口号啦

4设置好之后,当然需要重启SSH服务了。

5如果您有设置防火墙,请修改增加防火墙规则,或者直接关闭防火墙也行

注意事项

SSH端口默认是22,如果要修改直接编辑22端口注意前面的“#”要去掉,然后保存重启

ssh是经常使用的连接远程linux服务器的端口,这个端口也是默认的端口号。在进行远程连接的时候,在端口的位置要输入正确的端口号,否则无法连接成功。查看默认配置文件中端口值。

使用lsof检查当前系统开放的端口不管你是直接登录的系统,还是使用ssh连接的,都可以使用lsof命令来检查端口:该命令用于查找用户使用的文件和进程。

首先连接上linux主机,进入等待输入指令的linux命令行状态。在命令行状态下面,输入指令:lsof-i:22,按回车。此时会打印出所有ssh端口的开启状态。

linux下如何使用ssh远程登录主机,执行shell脚本?

linux主机登录另外一台linux服务器,直接在命令行提示符下输入:ssh账号@IP地址即可比如:sshoracle@1921681013然后按照提示输入密码一切无误则进入该远程主机

linux服务器上通过脚本判断ssh服务是否正常?

效果:

pingsh代码:

#ssh连接服务器

functiongetConnection()

{

ssh-oNumberOfPasswordPrompts=0$1@$2"pwd">/dev/null

if;then

echo-e"n无法连接到$2"

continue

else

echo-e"n成功连接$2"

fi

}

#这里可以通过读取文件配置自动循环,需要的话再修改

getConnectionroot19216811

也可以把IP放host里通自动循环~

如何查看linux开放ssh端口?

查看linux开放ssh端口具体步骤如下:

1首先查看一下当前linux是否已经安装SSH软件包,使用rpm-qa|grepssh。

2确认ssh服务已经开启,下面以centos系统为例。

3找到SSh服务配置文件路径一般都是在/etc/ssh这个目录下面sshd_config这个文件。注意事项:SSH端口默认是22,如果要修改直接编辑22端口注意前面的“#”要去掉,然后保存重启。

linux下没有ssh服务怎么办?

linux下一般是有ssh服务的,如果没有可以使用yuminstallssh进行在线安装。

linuxroot目录下没有ssh目录?

#sshlocalhost输入上面命令,然后按照提示yes在输入密码就可以生成了,ssh是记录你密码信息的,没有登录过root,是没有ssh文件夹的

如何在linux下配置ssh和sftp使用不同的端口号?

1、两个deamon

要实现ssh和sftp分离,分别监听不同的端口,可以通过创建两个‘/usr/sbin/sshd’后台程序,一个监听22端口(ssh),一个监听20022端口(sftp),为了区分ssh和sftp服务的后台程序,这里将ssh服务的后台程序保持为/usr/sbin/sshd,而将sftp服务的后台程序改为/usr/sbin/sftpd。/usr/sbin/sftpd是/usr/sbin/sshd的一个链接,其内容完全相同(ln-sf/usr/sbin/sshd/usr/sbin/sftpd)。

2、两个service

SLES12使用systemd管理系统服务,ssh服务对应/usr/lib/systemd/system/sshdservice文件,实现sftp服务时可以将/usr/lib/systemd/system/sshdservice复制到/etc/systemd/system/sftpdservice,然后修改sftpdservice文件内容。(使用修改好的sftpdservice文件即可)

3、其他文件系统的ssh服务是通过安装openssh实现的,可以通过rpm-qlopenssh查看该rpm包含哪些文件。总结实现ssh和sftp分离的相关的文件有:

ssh服务sftp服务

/usr/lib/systemd/system/sshdservice/etc/systemd/system/sftpdservice(通过修改/usr/lib/systemd/system/sshdservice文件得到)

/etc/pamd/sshd/etc/pamd/sftpd(通过复制/etc/pamd/sshd文件得到)

/etc/ssh/sshd_config/etc/ssh/sftpd_config(通过复制/etc/ssh/sshd_config文件得到)

/usr/sbin/rcsshd/usr/sbin/rcsftpd(ln-sf/usr/sbin/service/usr/sbin/rcsftpd)

/usr/sbin/sshd/usr/sbin/sftpd(ln-sf/usr/sbin/sshd/usr/sbin/sftpd)

/etc/sysconfig/ssh/etc/sysconfig/sftp(通过修改/etc/sysconfig/ssh文件得到)

至此,我们已经实现了两个服务。

但是,ssh服务和sftp服务并没有真正的分离,此时已然可以通过22号端口使用ssh服务和sftp服务,而新开的20022端口也可以使用ssh服务(ssh-p20022username@serverip)和sftp服务(sftp-oPort=20022username@serverip)。

4、关闭22号端口下的sftp服务编辑/usr/sbin/sshd的配置文件/etc/ssh/sshd_config文件,将Subsystem参数注释掉,然后重启sshd同时也可以设置可访问22号端口的用户白名单:编辑/etc/ssh/sshd_config文件,设置AllowGroups参数(假设设置为AllowGroupssshonly),限制仅AllowGroups组内的用户可通过22号端口ssh登录系统(对于需要ssh登录系统的用户可通过usermod-Asshonlyusername>将其加入到AllowGroups组内)

5、“关闭20022号端口下的ssh服务”sftp作为一个子服务,它的开启依赖于ssh服务,因此不能从本质上关闭ssh服务而只开启sftp服务。可以用以下方式来规避:/usr/sbin/sftpd的配置文件/etc/ssh/sftpd_config中包含Subsystem参数配置(推荐使用Subsystemsftpinternal-sftp-lINFO-fAUTH)/etc/ssh/sftpd_config中包含AllowGroups参数(假设为AllowGroupssftponly),限制仅AllowGroups组内的用户可以访问20022端口将AllowGroups组内的用户的shell改为/bin/false(usermod-s/bin/falseusername>),使AllowGroups组内的用户仅能sftp登录系统(如果一个用户即需要ssh,又需要sftp,则不能将其shell改为/bin/false)

6、用户白名单配置配置之后,需将系统内需要ssh访问系统的用户加入到sshonly组内,需将系统内需要sftp访问系统的用户加入到sftponly组,同时需要ssh和sftp的用户则sshonly和sftponly组都要加入。

7、重启ssh服务和sftp服务,并设置开机启动

servicesshdrestartservicesftpdrestart

linux怎么通过ssh访问另一台服务器?

举例说明: 如用root帐号连接一个IP为1921681102的机器,输入:“ssh1921681102-lroot”, 回车后输入root帐号的密码再回车确认即可。 如果该服务器的ssh端口不是默认的22端口,是自定义的一个如1234,则可在命令后面加参数-p, 如:“ssh1921681102-lroot-p1234”

在Linux系统下使用SSH实现端口映射的方法?

从技术角度来分析,几个要求:

1、从安全方面看,sftp会更安全一点

2、线上服务器提供在线服务,对用户需要控制,只能让用户在自己的home目录下活动

3、用户只能使用sftp,不能ssh到机器进行操作

提供sftp服务,可以用系统自带的internal-sftp,也可以使用vsftpd,这里需求不多,直接选用internal-sftp。

限制用户只能在自己的home目录下活动,这里需要使用到chroot,openssh48p1以后都支持chroot,我现在用的是centos63,自带的openssh已经是53p1,足够了。

可以输入:

#ssh-v

来查看openssh的版本,如果低于48p1,需要自行升级安装,不在这里具体介绍了。

假设,有一个名为sftp的组,这个组中的用户只能使用sftp,不能使用ssh,且sftp登录后只能在自己的home目录下活动

1、创建sftp组

#groupaddsftp

2、创建一个sftp用户,名为mysftp

#useradd-gsftp-s/bin/falsemysftp

#passwdmysftp

3、sftp组的用户的home目录统一指定到/data/sftp下,按用户名区分,这里先新建一个mysftp目录,然后指定mysftp的home为/data/sftp/mysftp

#mkdir-p/data/sftp/mysftp

#usermod-d/data/sftp/mysftpmysftp

4、配置sshd_config

编辑/etc/ssh/sshd_config

#vim+132/etc/ssh/sshd_config

找到如下这行,并注释掉

subsystemsftp/usr/libexec/openssh/sftp-server

添加如下几行

subsystemsftpinternal-sftp

matchgroupsftp

chrootdirectory/data/sftp/%u

forcecommandinternal-sftp

allowtcpforwardingno

x11forwardingno

解释一下添加的几行的意思

subsystemsftpinternal-sftp

这行指定使用sftp服务使用系统自带的internal-sftp

matchgroupsftp

这行用来匹配sftp组的用户,如果要匹配多个组,多个组之间用逗号分割

当然,也可以匹配用户

matchusermysftp

这样就可以匹配用户了,多个用户名之间也是用逗号分割,但我们这里按组匹配更灵活和方便

chrootdirectory/data/sftp/%u

用chroot将用户的根目录指定到/data/sftp/%u,%u代表用户名,这样用户就只能在/data/sftp/%u下活动,chroot的含义,可以参考这里:http://wwwibmcom/developerworks/cn/linux/l-cn-chroot/

forcecommandinternal-sftp

指定sftp命令

allowtcpforwardingno

x11forwardingno

这两行,如果不希望该用户能使用端口转发的话就加上,否则删掉

5、设定chroot目录权限

#chownroot:sftp/data/sftp/mysftp

#chmod755/data/sftp/mysftp

错误的目录权限设定会导致在log中出现”fatal:badownershipormodesforchrootdirectoryxxxxxx”的内容

目录的权限设定有两个要点:

1、由chrootdirectory指定的目录开始一直往上到系统根目录为止的目录拥有者都只能是root

2、由chrootdirectory指定的目录开始一直往上到系统根目录为止都不可以具有群组写入权限

所以遵循以上两个原则

1)我们将/data/sftp/mysftp的所有者设置为了root,所有组设置为sftp

2)我们将/data/sftp/mysftp的权限设置为755,所有者root有写入权限,而所有组sftp无写入权限

6、建立sftp用户登入后可写入的目录

照上面设置后,在重启sshd服务后,用户mysftp已经可以登录,但使用chroot指定根目录后,根应该是无法写入的,所以要新建一个目录供mysftp上传文件。这个目录所有者为mysftp,所有组为sftp,所有者有写入权限,而所有组无写入权限

#mkdir/data/sftp/mysftp/upload

#chownmysftp:sftp/data/sftp/mysftp/upload

#chmod755/data/sftp/mysftp/upload

7、重启sshd服务

#servicesshdrestart

到这里,mysftp已经可以通过sftp客户端登录并可以上传文件到upload目录。

如果还是不能在此目录下上传文件,提示没有权限,检查selinux是否关闭,可以使用如下指令关闭selinux

修改/etc/selinux/config文件中的selinux=""为disabled,然后重启。或者

#setenforce0

如何关闭linux下的ssh服务?

chkconfig--level2345sshdon--level指定系统在2345运行级别时,通常在35中开启就行,开启(on)sshd服务,关闭则用(off)临时控制启动停止则用:/etc/rcd/initd/sshdstart|stop|restart

ssh只能登linux吗?

ssh并不是只能登linux操作系统。ssh是unix操作系统用于远程登录的程序。

ssh的开源免费版是openssh,它源于openBSD操作系统。在服务器端启用sshd之后,就可以从远程登录服务器。目前所有类unix的操作系统都操供ssh服务。所以ssh能登录所有类unix操作系统。

实现此的技术原理:

在内网通过域名绑定服务器,外网SSH访问连接时,通过域名的访问,实现访问内网LINUX。

具体的实现过程如下:

明确LINUX服务器内网访问地址端口,确保LINUX服务器正常开启SSH服务,在内网SSH可以正常访问连接。如图所示:

被访问端的Linux主机上使用nat123动态域名解析Linux版本。

在被访问端的Linux服务器安装nat123客户端,并登录使用它。

登录网页,左侧用户中心,添加域名解析,选择动态域名解析并添加确认。

选择动态域名解析记录,使用二级域名,或自己的域名。鼠标放在输入框有向导提示。如不理解负载均衡,不要勾选多点登录。

新添加动态解析后,等待几分钟生效。解析生效后,动态解析域名与本地公网IP是保持对应的。可以通过ping下域名核实,返回结果IP地址为本地公网IP地址时,表示动态解析生效正常。

路由器端口映射,路由映射SSH访问22端口。

因为公网IP是在路由器上的,外网访问时,需要经过路由,需要在路由器上做端口映射,将内网LINUX服务器访问22端口打通。路由器端口映射位置:转发规则/虚拟服务器/添加允许外网访问端口和协议。我的LINUX服务器SSH服务端口是默认的22,我内网对应LINUX服务器主机的内网IP地址是192168129。

外网访问时,使用动态解析域名。

在外网使用SSH访问内网LINUX服务器时,使用动态解析域名进行连接访问。域名是不变的,可以上网即可访问,再也不担心动态公网IP变化的问题。

首先进入/etc目录下,/etc目录存放的是一些配置文件,比如passwd等配置文件,要想使用ssh远程登陆,需要配置/etc/ssh/sshd_config文件里的配置信息,使用vim编辑,在命令行模式下输入 vim /etc/ssh/sshd_config,进入之后,按“i”进入编辑状态,在其文件里找到并修改为:PasswordAuthentication

yes , PermitRootLogin

yes两行即可,

修改之后,按“esc”退出,并按“:wq”保存并退出,或直接按“:x”直接保存退出,(注意:此处的x为小写x,大写X是将文件内容加密,使用时细心注意),

退出编辑模式之后,回到命令模式,输入 sevice

ssh

start/stop/restart/status,启动/停止/重启/状态,选择start启动ssh服务。

如果上面开启SSH服务的命令不能用,可以使用命令:sudo

service

sshd

start 试试,检查是否开启SSH服务使用命令:ps

-e

|

grep

sshd

此时可以查看ssh状态是否为运行状态,运行状态即可使用ssh远程登陆。

使用“ifconfig”命令查询ip地址

使用ssh登陆时,输入主机(linux的ip地址),账号,密码登陆!

如果需要远程连接SSH,需要把22端口在防火墙上开放,关闭防火墙,或者设置22端口例外  /etc/initd/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

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » linux怎么ssh远程linux怎么ssh

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情