今日内容
ssh远程登录命令 思科交换机ssh远程登录命令
1.什么是SSH
SSH是一个安全协议,在进行数据传输时,会对数据包进行加密处理,加密后在进行数据传输。确保了数据传输安全
2.SSH的主要功能是什么
1.提供远程连接服务器的服务
2.对远程连接传输数据进行加密
3.SSH与Telnet之间有什么关系
4.抓包分析ssh与telnet的区别
telnet使用在交换机 路由器 防火墙 等这类设备上
ssh 使用在服务器邻域
5.SSH相关客户端指令ssh scp sftp
客户端可以使用的命令:
ssh:用来连接远程Linux服务器(xshell底层,调用的就是ssh命令)
scp:远程拷贝,全量拷贝(每次拷贝都是全量)
sftp:远程传输
6.SSH在客户机上可以看到有程序监听了6010端口远程登录方式,用户密码 密钥方式
用户密码:简单容易被破解、复杂记不住
基于密钥的方式来实现:
生产一对拥有数学关系的密钥对(公钥、私钥)
公钥加密,私钥解密。
公钥可以对外提供,对外开放。
7.密钥方式的实现案例
8.SSH场景实践,借助SSH免秘实现跳板机功能?
9.SSH远程连接功能安全优化?
ssh是可以代替telnet的一种远程管理的方式.并且具有安全\快捷等优点的一种服务.
方法一:进入Xwindows,在shell窗口执行setup命令,选择system service启动sshd服务.
方法二:在/etc/ssh/sshd_config文件中,将permitRootLogin no|yes设置为允许root用户远程登录
/etc/init.d/sshd start 启动ssh服务
/etc/init.d/sshd stop关闭服务
启动:
service sshd start可以用server命令来启动
安装过程:
1.以root身份登入系统(没登入系统和没有足够的权限都不能安装,晕,这不是废话)
2.检查安装系统时是否已经安装SSH服务端软件包:
rpm -qa|grep openssh
若显示结果中包含openssh-server-,则说明已经安装,直接启动
sshd服务就可以了(service sshd start).(其中的内容是该包的版本,一般为3.5p1-6)
若无任何显示,或显示中不包含openssh-server-则说明没有安装SSH服务端软件包, 进入第3步
3.找到redhat 9.0 安装光盘,放入光驱中并加载光驱
mount -t iso9660 /dev/cdrom /mnt/cdrom (加载光驱命令)
可以先cd到该目录下再用ls查看,如:ls openssh,然后根据上面具体显示直接安装
rpm -ivh openssh-3.5p1-6 (如果第二步中显示已经安装该包就不要安装)
rpm -ivh oeenssh-server-3.5p1-6
5.启动sshd服务 /etc/rc.d/init.d/sshd start
netstat -a | more看有没正常启动
如果出现:
tcp 0 0 :ssh : LISTEN
就说明正常启动了
6.在windows 下用putty等SSH客户端软件连接测试,或直接在linux主机上输入
ssh 测试,但必须要先安装linux 下的SSH客户端软件包,即
openssh-clients-,安装过程和上面的服务端包相同
7.若能成功远程登入,则说明SSH服务安装配置成功,
否则很可能就是你的防火墙阻止连接了,重新配置防火墙或干脆先停掉防火墙
或者service iptables stop
ssh是可以代替telnet的一种远程管理的方式.并且具有安全\快捷等优点的一种服务.
方法一:进入Xwindows,在shell窗口执行setup命令,选择system service启动sshd服务.
方法二:在/etc/ssh/sshd_config文件中,将permitRootLogin no|yes设置为允许root用户远程登录
/etc/init.d/sshd start 启动ssh服务
/etc/init.d/sshd stop关闭服务
启动:
service sshd start
安装过程:
1.以root身份登入系统(没登入系统和没有足够的权限都不能安装,晕,这不是废话)
2.检查安装系统时是否已经安装SSH服务端软件包:
rpm -qa|grep openssh
若显示结果中包含openssh-server-,则说明已经安装,直接启动
sshd服务就可以了(service sshd start).(其中的内容是该包的Connection closing... Socket close.版本,一般为3.5p1-6)
若无任何显示,或显示中不包含openssh-server-则说明没有安装SSH服务端软件包, 进入第3步
3.找到redhat 9.0 安装光盘,放入光驱中并加载光驱
mount -t iso9660 /dev/cdrom /mnt/cdrom (加载光驱命令)
可以先cd到该目录下再用ls查看,如:ls openssh,然后根据上面具体显示直接安装
rpm -ivh openssh-3.5p1-6 (如果第二步中显示已经安装该包就不要安装)
rpm -ivh oeenssh-server-3.5p1-6
5.启动sshd服务 /etc/rc.d/init.d/sshd start
netstat -a | more看有没正常启动
如果出现:
tcp 0 0 :ssh : LISTEN
就说明正常启动了
6.在windows 下用putty等SSH客户端软件连接测试,或直接在linux主机上输入
ssh 测试,但必须要先安装linux 下的SSH客户端软件包,即
openssh-clients-,安装过程和上面的服务端包相同
7.若能成功远程登入,则说明SSH服务安装配置成功,
否则很可能就是你的防火墙阻止连接了,重新配置防火墙或干脆先停掉防火墙
或者service iptables stop
一 SSH命令使用技巧- 远程登录ssh user@remote.machine
- 远程执行
ssh user@remote.machine 'command ...'
- 远程
scp user@remote.machine:/remote/path /local/path
scp /local/path user@remote.machine:/remote/path
- X forward
ssh -X user@remote.machine
xcommand ...
- Tunnel / Portforward
ssh -L 1234:remote.machine:4321 user@remote.machine
ssh -R 1234:local.machine:432你指的是什么!~?是不是想用Linux登陆服务器。。。用telnet命令比如,想登陆192.168.0.8的服务器#telnet 192.168.0.8输入用户名,密码,就ok了。。。1 user@remote.machine
ssh -L 1234:other.machine:4321 user@remote.machine
二, 实作1) 禁止 root 登录
# vi /etc/ssh/sshd_config
PermitRootLogin no
2) 废除密码登录, 使用 RSA 验证(假设 ssh 账户为 user1 )
# vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
Authorizssh -t -p $port $user@$ip "remote_cmd"edKeysFile .ssh/authorized_keys
# su - user1
$ mkdir ~/.ssh 2>/dev/null
$ chmod 700 ~/.ssh
$ touch ~/.ssh/authorized_keys
登入 端:
$ ssh-keygen -t rsa
(按三下 enter 完成﹔不需设密码,除非您会用 ssh-agent 。)
$ scp ~/.ssh/id_rsa.pub user1@server.machine:id_rsa.pub
(若是 windows client, 可用 puttygen.exe 产生 public key,
然后到 server 端后修改之, 使其内容成为单一一行.)
回到 server 端:
$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
$ rm ~/id_rsa.pub
$ exit
3) 限制 su / sudo 名单:
# vi /etc/pam.d/su
auth required /lib/security/$ISA/pam_wheel.so use_uid
# visudo
%wheel ALL=(ALL) ALL
# gpasswd -a user1 wheel
4) 限制 ssh 使用者名单
# vi /etc/pam.d/sshd
# echo user1 >> /etc/ssh_users
Secure Shell(SSH)是Linux系统管理中的经常要用到的一种远程访问技术。在Ubuntu 18.04系统仓库中,已经收录了同为开源的OpenSSH,我们可以用它来为系统开启SSH访问功能。
一、打开终端,输入以下命令安装OpenSSH服务 :
sudo apt-get install openssh-server
二、步骤一是在当前系统增加SSH服务 ,
如果需要对SSH服务修改设置,可以用字处理工具编辑其配置文件,位于“ /etc/ssh/sshd_config ”,比如用vim修改的命令就是:
sudo vim /etc/ssh/sshd_config
三、安装后,查看SSH有没有运行;
ps -ef|grep sshd
sudo service ssh status
sudo service ssh start
四、安装完成之后,4.查找光驱中的SSH服务端软件所在目录,一般在/mnt/cdrom/RedHat/RPMS/目录下,就可以在客户端用系统用户来远程登录了。
无法远程登录!但是本地可以正常登录。
修改文件: /etc/pam.d/sshd
本地登陆
vim /etc/pam.d/sshd
注释account required pam_nologin.so。即在这一行前边加#。保存即可
或者本地登录后,注释掉 pam_nologin.so 行,命令如下:
sudo sed -i -r 's/^(.pam_nologin.so)/#\1/' /etc/pam.d/sshd
总结下使用ssh远程执行命令需要注意点:
设置DISPLAY环境变量, 运行图形程序(如xclock)时会收到如下错误:
直接使用:
Ja代码
ssh $host " es_pid=\`jps | grep Elasticsearch | gawk '{print \$1}'\` && kill \$es_pid "
Linux
nussh密钥自动登录
在开发中,经常需要从一台主机ssh登陆到另一台主机去,每次都需要输一次login/Password,很繁琐。
实现从主机A免密码登陆到主机B,需要以下几个步骤:
1.
在主机A“~/.ssh/”目录下执行命令“ssh-keygen
-t
rsa”(生成过程中,一路回车),生成两个文件id_rsa和id_rsa_pub,这两个文件实际上是一个密钥对,id_rsa是私钥,id_rsa_pub是公钥;
2.
将文件id_rsa_pub从主机A拷贝(可以使用scp命令)到主机B“~/.ssh/”目录下;
3.
登陆到主机B上,
进入“~/.ssh/”目录,将从主机拷贝来的id_rsa_pub文件添加到文件“authorized_keys”尾部(cat
id_rsa_pub>>authorized_keys),若文件“authorized_keys”不存在,则创建;确保“~/.ssh/authorized_keys”的权限至少为600;
4.
从主机A登陆主机B,次登陆时主机B要自动设置known_hosts文件,所以需要输入yes,以后就不需要了;
P.S.当然你登陆主机A和主机B用的是同一个用户名
锦上添花:
假设你的用户名为user,已经设置好了密钥登陆主机B。那么你可以在shell的配置文件(比如.bashrc)里定义一个alias
alias
b='ssh
user@B'
以后每次你启动shell终端后,输入b,回车,直接就ssh登陆到主机B上。
server比起windows自带的“远程桌面连接”。
命令:
1.
nfs,telnet等均可登录,即将远程的那个配置成主机服务器,这边作为客户机登录.
比如:telnet
telnet
192.168.1.123
说明:192.168.1.123就是远程的Ip地址
2.
程序,并把它的显示输出到本机的屏幕上,那么需要依次执行以下作:
1.启动X
服务器
#xhost
+rhostname
(允许远程rhostname
机使用本机的X
Server)
2.telnet
(或ssh)登录远程主机
#telnet
rhostname
3.设置DISPLAY
环境变量
指定了一个显示设备,所有的图形程序都将显示到这个设备。
DISPLAY
hostname是本机主机名,或者是它的I
P地址。一般d
isLinux的远程桌面应该分两个部分,首先是Linux客户机连Linux服务器,接着是windows客户机连Linux服务器,还有现在用平板电脑连远程桌面。Linux客户机连Windows服务器其实没啥可说的,rdesktop和termianl
pl
ay
mb
er
都是0。
#echo
如果返回的是
/bin/ksh,那么可以用:#
export
DISPLAY=
地址:0.0
如果返回的是
/bin/csh,那么可以用:#
setenv
DISPLAY
本机的IP地址:0.0
如果返回的是
/bin/bash,那么可以用:#
DISPLAY=
地址:0.0
#export
DISPLAY
4.启动gimp
程序
#gimp
1.使用用户名密码登录
在命令行现在设想登录到远程主机rhostname上,运行gimp中输入命令:
ssh username@ip_address -p port
之后系统会提示输入密码,输入后即可登录
如果不添加-p选项,则默认是22端口
还可以使用-l选项输入用户名:
ssh -l username ip_address -p port
2.使用密钥登录(不使用密码)
首先生成密钥,在任意目录下输入命令:
ssh-keygen -t rsa -P ''
-P表示密码,-P ''表示空密码
之后系统会提示输入生成的密钥文件的文件名,可以输入任意名称,比如id_rsa,回车
系统会在当前目录下生成id_rsa与id_rsa.pub两个文件
在根目录下新建.ssh文件夹,将生成的密钥文件拷贝过去
mkdir -p ~/.ssh
-p选项表示如果文件夹已经存在则不再新建。
然后将之前生成的两个文件都拷贝到.ssh文件夹中
cp id_rsa ~/.ssh/
把公钥文件id_rsa.pub拷贝到需要登录的服务器上
用scp命令
scp -P port ~/.ssh/id_rsa.pub username@ip_address:~
-P表示要登录服务器的端口好,不加默认为22。
之后系统会提示输入密码,输入即可完成拷贝
登录远程服务器,在用户根目录下新建.ssh文件夹(如果不存在),在其中新建authorized_keys文件(如果不存在),把id_rsa.pub添加到authorized_keys文件中
mkdir -p ~/.ssh
这是在远程服务器上新建ssh文件夹
cat id_rsa.pub >> .ssh/authorized_keys
将id_rsa.pub文件添加到authorized_keys文件中(如文件不存在则新建)
注意:要保证.ssh与authorized_keys用户自己都有写权限
退出当前远程登录,之后就可以不使用密码远程登录了
修# service sshd restart改你的ssh配置文件,将其中的PermitRootLogin的参数设置为yes
配置文件路径如:/etc/ssh/sshd_config
重启ssh服务,命令如下:
/etc/init.d/sshd
restart
或/etc/init.d/ssh
restart
然后修改root的密码,将密码修改为123456.
通过ssh远程登录linux系统的方法:
1、在需要远程访问的计算机的“新立得”里面安装openssh-server。这台计算机是远程计算机,你当前使用的计算机是本地计算机。如果使用Ubuntu或者其他Linux版本,已经安装了连接到远程计算机的软件。
2、远程计算机软件安装完毕。在本地计算机的终端里面输入:
ssh username@address
其中uelsesername是远程计算机的账户名称,address是远程计算机的IP地址或者域名。
平希望以keir登录192.168.1.2,可以使用:
sssh keir@192.168.1.13
如果不知道远程计算机的IP地址,可以在远程计算机上面点击网络监视器,选择“连接信息”,查看IP地址信息。
3、首次连接,可能提示“the authenticity of the host can’t be established”。没有关系,回答yes进行连接,输入密码即可。
4、如果你登录一个标准的Shell会话,命令行提示符是“用户名@远程计算机的名称”。
如果希望通过SSH运行图形程序,可以使用:
ssh -X username@address
连接以后,输入程序的名称即可。譬如,启动gedit,输入gedit即可。另外注意,尽管程序出现在你的计算机上面,但是它依然是运行在远程计算机上面。如果启动OpenOffice或者其他复杂的图形程序,可能有一段时间的延迟。
另外一个SSH连接的用途是传输文件。sftp命令可以实现这个功能。用sftp连接到远程计算机,就可以像登录了一个ftp服务器一样。另外还可以在Nautilus里面使用sftp,在Nautilus的地址栏里面输入:sftp://address,系统会提示用户名和密码。连接完成,就可以在Nautilus里面拷贝/删除文件了。
版权声明:本文内容由互联。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发 a13828211729@163.com 邮箱删除。