转自:http://songtl.com/linux-ssh-setting.html 远程登录方式有telnet和ssh两种方式,由于telnet使用的是明文传输,传输过程中系统帐号密码等重要信息容易被截获 ,安全性比不上SSH(secure shell),因此现在一般都使用SSH作为远程登录的工具。 其实很多linux版本如ubuntu已经内置了ssh-agent,这是一个远程连接的工具,通过ssh-agent可以发起远程连接,但是如果你要想实现在其他电脑远程登录自己的电脑,就必须安装openssh username@domain 此时系统会要求你输入密码进行验证,验证通过就能登录到远程主机.为了安全起见,需要进行一些简单的配置,否则日后查看ssh日志文件的时候会发现大量ip的登录失败信息。 限制一下最大密码错误次数,3次吧,自己登录基本不会连续错3次,密码错误超过3次拒绝登录 MaxAuthTries 3 修改之后保存退出,重启ssh服务 ubuntu sudo /etc/init.d/ssh
摘要 对远程主机进行登录管理,一方面可以简化日常频繁登录的密码和 ip 输入步骤,另一方面,也可以提高远程主机的安全性,避免远程主机被“黑客”轻易攻击。 远程主机配置 ssh 使用密码登录到远程主机 ssh {登录用户}@{ip地址} 输入密码后进入远程主机系统 查看远程主机的 ssh 配置 配置文件目录/etc/ssh/ /etc/ssh/sshd_config /03/16/how-to-set-up-ssh-keys/ 本地 ssh 配置进行快捷登录 配置 ssh # ~/.ssh/config # 定义登录远程主机的ssh连接名 Host txyun root 进行 ssh 方式登录远程主机 ssh txyun 即可直接登录。 总结 简化了可信访客的登录步骤,并且也只有和远程服务器 ssh 认证文件中公钥相匹配的主机才能成功登录,提高了服务器的安全性。 完。
一、简介 二、配置参数 1、参数 2、配置源的两种表示方法 三、远程同步 测试 免交互配置: 四、实时同步 1、在客户机上安装inotify 1.1调整inotify内核参数(优化) 2 、编写监控脚本 五、rsync批量快速删除大量文件 1、rm和rsync的比较 2、实际操作 一、简介 一款快速增量备份工具Remote Sync,远程同步 支持本地复制,或者与其他SSH、rsync 主机同步 它名称里面的r指的是 remote,rsync 其实就是”远程同步”(remote sync)的意思。 -e参数指定使用 SSH 协议传输数据。 –exclude参数指定排除不进行同步的文件,比如–exclude=”*.iso”。 -avz rsync://用户名@源地址/共享模块 /目标位置 三、远程同步 服务器192.168.133.50 客户机192.168.133.75 systemctl stop firewalld
ubuntu生成秘钥 执行命令: ssh-keygen -t rsa -b 4096 -C "email@example.com" -C如果您有多个标记并想知道是哪个标记,则该标志会在键中添加注释。 生成的公钥就保存在~/.ssh/id_rsa.pub文件中了。 参考 Ubuntu ssh-keygen 生成公钥并添加到远程服务器上
前言 Docker 镜像是否有 SSH 远程登录的必要?这个问题其实对于开发者来说是相对而言的,在实际的生产环境中是无必要需求就不必要,而在开发环境中则显得大有裨益。 当然,即使在开发环境中也仍然应该把安全性放在首位,因此采用凭一对公钥和私钥实现无密码登录是比较安全、稳妥的办法。 安装配置 公钥文件的导入是这项任务的重点。 有一个叫 ssh-import-id 的工具,可以帮助我们实现这一目标。 /bin/bash ssh-import-id gh:$GITHUB_NAME sudo service ssh restart /bin/zsh 运行 方式一 docker run -ti -d -e (采用 CC BY-NC-SA 4.0 许可协议进行授权) 本文标题:《 Docker 镜像支持 SSH 远程登录 》 本文链接:https://lisz.me/tech/docker/docker-openssh.html
写在前面 先说说需求: 我们平时开发、运维操作linux过程中经常需要实现将远程文件拷贝到本地或者本地文件拷贝到远程;执行远程命令等操作;这个时候建立ssh免密登录应该是一个比较好的选择; 原理 在linux 系统中,ssh是远程登录的默认工具,因为该工具的协议使用了RSA/DSA的非对称加密算法;非对称加密算法会分别产生公钥和私钥; 现在有两台机器:ServerA和ServerB,ServerA需要免密登录 ServerB,我们先在ServerA生成公钥和私钥,把公钥拷贝到ServerB指定的文件下,ServerA就可以免密登录ServerB了; 以下方法一和方法二都是使用依据上面的原理实现; 方法一 2、使用ssh-copy-id将公钥复制到ServerB中 ssh-copy-id -i id_rsa.pub文件 ServerB用户名@ServerB_Ip #示例 ssh-copy-id -i /root 方法二:手工拷贝密钥 其实手工拷贝跟方法一的使用命令拷贝差不多,就是操作上原始一点; 1、生成公私钥:同方法一的步骤1; 2、手动将步骤1中ServerA生成的/root/.ssh/id_rsa.pub
在今天这个云计算盛行的时代,SSH(Secure Shell)几乎成了每个开发者必备技能之一。SSH 不仅可以让我们安全地远程登录到服务器,执行操作,还支持如文件传输、端口转发等高级功能。 本文将用浅显易懂的语言,带你深入了解 SSH 的两个常用功能:使用密钥登录和通过 SSH 实现端口转发。使用密钥登录传统上,我们习惯使用用户名和密码进行 SSH 登录。 .pem配置后,直接使用下面的命令登录:ssh root@{你的云服务器公网 IP}通过 SSH 实现端口转发在进行数据分析、Web 开发等场景时,我们经常需要将远程服务器上的服务端口映射到本地端口,以便本地访问 :9200 alex@192.168.0.101这里的 -L 参数指定了本地端口转发,-N 参数表示不执行远程命令。 为远程服务提供一个安全的本地访问点。通过上面的分享,相信你已经对 SSH 的密钥登录和端口转发功能有了初步的了解。这两个功能在日常开发中非常有用,掌握它们将大大提高你的工作效率。
本文配置可实现:集群服务器之间相互可以ssh免密登录。若只想从单一机器(如master)ssh免密登录其他机器(slave1、slave2),则只跟着操作到第二步即可。 192.168.137.20 master 192.168.137.21 slave1 192.168.137.22 slave2 2.配置使得master上可免密登录slaveX。 且根据我到目前为止的测试,用哪个用户来做配置,最后就只能通过那个用户实现免密登录,其他用户远程登录还是需要密码的。 那样可以免密登录其他机器,则需要在slaveX上也执行第2步同样的步骤,即:在slaveX上生成自己的私钥公钥对,然后将它的公钥追加到其他机器的authorized_keys 文件中。 综上,若想配置集群服务器之间相互可以ssh免密登录,可以有以下两种方法:(两种方法的本质是一样的,只不过执行的过程步骤有些许不同) 方法一:一台一台服务器地按照第2步那样操作下去,直到所有机器都配置完成为止
假定你要以用户名user,登录远程主机host,只要一条简单命令就可以了。 $ ssh user@host 如果本地用户名与远程用户名一致,登录时可以省略用户名。 整个过程是这样的:(1)远程主机收到用户的登录请求,把自己的公钥发给用户。(2)用户使用这个公钥,将登录密码加密后,发送回来。(3)远程主机用自己的私钥,解密登录密码,如果密码正确,就同意用户登录。 可以设想,如果攻击者插在用户与远程主机之间(比如在公共的wifi区域),用伪造的公钥,获取用户的登录密码。再用这个密码登录远程主机,那么SSH的安全机制就荡然无存了。 上例中是98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d,再进行比较,就容易多了。 很自然的一个问题就是,用户怎么知道远程主机的公钥指纹应该是多少? ' < ~/.ssh/id_rsa.pub 这条命令由多个语句组成,依次分解开来看:(1)"$ ssh user@host",表示登录远程主机;(2)单引号中的mkdir .ssh && cat >
简单说,SSH是一种网络协议,用于计算机之间的加密登录。 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。 假定你要以用户名user,登录远程主机host,只要一条简单命令就可以了。 $ ssh user@host 如果本地用户名与远程用户名一致,登录时可以省略用户名。 可以设想,如果攻击者插在用户与远程主机之间(比如在公共的wifi区域),用伪造的公钥,获取用户的登录密码。再用这个密码登录远程主机,那么SSH的安全机制就荡然无存了。 RSA key fingerprint is 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d. 上例中是98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d,再进行比较,就容易多了。 很自然的一个问题就是,用户怎么知道远程主机的公钥指纹应该是多少?
SSH是一种能够以安全的方式提供远程登录的协议,也是目前远程管理Linux系统的首选方式。它是以密文传输来保证安全。一般情况下在装Linux系统的过程中是默认安装的。 - 基于口令的验证-用于账户和密码来验证登录 - 基于密钥的验证-需要在本地生成密钥文件,然后把密钥对中的公钥文件上传至服务器,并与服务器中的公钥进行比较,一致则可远程登录。 用户口令验证登录 在Redhat7系统中已经默认安装并启动了sshd服务,接下来在客户机上使用ssh命令进行远程连接。 [linuxidc@RedHat7-2 ~]$ ssh linuxmi@192.168.182.188 //ssh远程登录linuxmi用户的服务器 The authenticity of host //远程登录服务器 Enter passphrase for key '/home/linuxidc/.ssh/id_rsa':123123 //输入私钥短语,以便调用私钥文件进行匹配 Last
安装openssh-server sudo apt install openssh-server 设置root用户密码: sudo passwd root 允许root用户登录;编辑配置文件: sudo vim /etc/ssh/sshd_config PermitRootLogin prohibit-password 更改为: PermitRootLogin yes ? image.png 重启ssh服务: sudo systemctl restart sshd 再次进行远程登录,即可成功: ? image.png
一般使用ssh访问远程服务器的命令是:ssh username@ip地址, 例如:ssh root@112.232.12.12,然后输入密码即可访问。 使用cd ~/.ssh/ 进入ssh目录,会看到有config、known_hosts两个文件,一般的没有设置的话,只会有known_hosts,可以使用touch config命令创建config文件 其中: 1、Host 后边的是名称,以后可以根据这个名称进行访问; 2、HostName是你的主机IP地址; 3、User为主机登录的用户名; 4、IdentitiesOnly yes固有配置; 设置完成,后期的话使用:ssh jhd 然后输入密码,就可以登录到远程主机啦!
# 授权规则是分配权限的执行规则 ######### 2. 禁用root 用户登录 ########### NR=`cat -n /etc/ssh/sshd_config | grep "#PermitRootLogin" | awk -F" " '{print # 在变量NR 行 (root 规则的下一行)加入禁止登录规则 ######### 3. 添加和允许用户登录 ########### NR=`cat -n /etc/ssh/sshd_config | grep "ListenAddress" | awk -F" " 'NR==1{print $1}' ` # 获取ssh 允许用户登录的位置 sed
3 ...... 2.修改client端的/etc/ssh/ssh_config添加以下:(在没有权限修改server端的SSH配置的情况下) ServerAliveInterval 60 ...... 3.重启sshd服务 systemctl restart sshd 方法2: 不修改配置文件,直接在SSH远程连接时命令加参数,即ssh -o ServerAliveinterval =60 root@'远程连接IP地址',这样就只会在当前需要的远程连接中保持持久的连接, 并不是所有的远程连接都需要保持持久连接的! 登陆缓慢问题 解决SSH登陆缓慢问题 1.编辑/etc/ssh/sshd_config配置文件,将UseDNS修改为no,最好是在尾部添加一行为:UseDNS no 2.关闭GSSAPI认证:GSSAPIAuthentication 解决SSH无法登陆问题 一般情况下当ssh服务远程连接不上时,后台登陆服务器,先确认服务器网络有无问题,查一下ssh服务有没有正常运行,防火墙是否放行了ssh端口,检查sshd_config文件配置(
SSH(Secure Shell),是专为远程登录会话和其他网络服务提供安全性的协议。 使用SSH,可以远程登录到其他Linux主机,但是需要输入密码。 如在10.3.93.213登录10.3.93.212,会要求输入密码。 为了实现无密码登录,可以使用ssh-keygen命令生成公钥,然后将公钥复制到要远程登录的主机。 输入ssh-keygen命令后,连续3个回车。 进入.ssh文件夹,可以看到生成了两个文件: 其中id_rsa.pub是公钥,使用scp命令将其复制到10.3.93.212的.ssh文件夹下。 再次SSH 10.3.93.212,已经可以无密码登录。
最简单的操作 ssh免密码登录的原理是把本地电脑的公钥放在宿主机,然后使用本地电脑的私钥去认证。 在本地电脑执行 scp ~/.ssh/id_rsa.pub user@remote_server:拷贝~/.ssh/id_rsa.pub到需要远程登录的服务器的家目录下。 使用密码登录远程服务器,执行mkdir -p ~/.ssh; cat ~/id_rsa.pub >>~/.ssh/authorized_keys; chmod 700 ~/.ssh; chmod 600 r=https%3A%2F%2Fsourceforge.net%2Fprojects%2Fsshpass%2F&ts=1496021628&use_mirror=jaist' -O sshpass-1.06 /configure --prefix=/install_path make make install # 加入环境变量 (后台回复 环境变量 获取环境变量的解释和应用) # 登录远程服务器 sshpass
这篇文章主要介绍了linux远程登录ssh免密码配置方法,需要的朋友可以参考下 一、情景 公司刚上几台Linux,现在要把主机之间都能远程ssh免密码登陆。 二、原理 很简单,使用ssh-keygen 在主机A上生成private和public密钥,将生成的public密钥拷贝到远程机器主机B上后,就可以使用ssh命令无需密码登录到另外一台机器主机B上。 The key fingerprint is: 67:da:0d:79:e0:d6:2b:cd:7d:22:af:51:7e:9c:75:fe root@bogon The key's randomart E| +-----------------+ 2、ssh-cop-id命令会将指定的公钥文件复制到远程计算机 [root@bogon ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub .ssh 6、要保证.ssh和authorized_keys都只有用户自己有写权限。
买了搬瓦工,有时候需要远程登录进行一些配置。这时候就需要SSH了。搬瓦工自带SSH服务端,因此这里只需要配置客户端就可以了。 默认配置 Windows下有很多SSH工具。在这里我是用的是Putty。 这样的话命令就变成这样: ssh 用户名@IP地址 -p 端口号 如果连接成功的话会提示你输入远程服务器的密码。全部成功之后SSH就会显示远程服务器的提示符,这时候就说明连接成功了。 密钥登录 每次登录SH都需要输入密码很麻烦,而且可能不太安全。SSH还能使用另外一种登录方式,也就是使用密钥登录。 这种登录方式需要客户端生成一堆公钥私钥对,然后将公钥添加到服务器中,这样下次就可以直接登录了。 首先生成SSH密钥,依照提示输入信息即可。默认生成在用户主目录中的.ssh文件夹中。 然后退出SSH重新登陆试试,成功的话不需要输入密码就会直接进入远程服务器。
Linux的管理用户是root,远程连接的默认端口是22,这是通常有IT经验的人都知道的。为了系统安全,我们通常都会修改这些默认的设置,下面就说下怎么修改ssh的配置。 2、禁止root用户直接ssh连接 root这个帐号是所有人都知道并且拥有最高权限的帐号,直接暴露在网络中不大安全,我们可以禁止ssh使用root连接,同样只需要修改ssh的配置文件即可。 在这里要确认自己的系统有一个可以登录的普通帐号,用该帐号登录之后再su -切换到root,或者将该帐号加入sudoers里面。 (这几个命令都可以在配置文件找到的) PermitRootLogin no #是否允许root登录 PermitEmptyPasswords no #是否允许空密码登录 UseDNS yes #是否对远程主机名进行反向解析,关闭会提高连接的速度 GSSAPIAuthentication no #解决Linux之间使用ssh连接慢的问题 修改之后,保存退出