ssh、telnet、ftp安装使用小记

爱你的每个瞬间像飞驰而过的地铁

  ssh、telnet、ftp相信大家都很熟悉,它们是linux中最常用的几个服务。一般linux系统缺省是安装了ssh、ftp、telnet的,但也有些情况是没有安装的。本篇主要记录如何在linux上搭建这几个服务,并简单记录对应服务的客户端使用方法。

SSH

服务端安装

查看ssh服务是否已经安装:

1
>>rpm -qa | grep ssh

若已经安装,结果如下:

1
2
3
4
libssh2-1.4.3-10.el7_2.1.x86_64
openssh-7.4p1-12.el7_4.x86_64
openssh-clients-7.4p1-12.el7_4.x86_64
openssh-server-7.4p1-12.el7_4.x86_64

若没有安装,则安装openssh服务端:

1
2
apt-get install openssh-server #ubuntu
yum -y install openssh-server #centos

开启关闭ssh服务:

1
2
3
service sshd(ssh) start
service sshd(ssh) stop
service sshd(ssh) restart

或者

1
2
3
/etc/init.d/sshd start
/etc/init.d/sshd stop
/etc/init.d/sshd restart

centos7:

1
2
3
/bin/systemctl start sshd.service
/bin/systemctl stop sshd.service
/bin/systemctl restart sshd.service

MAC开启ssh服务:

1
2
3
sudo systemsetup -getremotelogin #判断状态
sudo systemsetup -setremotelogin on #开启ssh
sudo systemsetup -setremotelogin off #关闭ssh

服务端配置

ssh配置文件:

1
vim /etc/ssh/sshd_config

使root用户能够ssh,注释掉 #PermitRootLogin without-password,添加 PermitRootLogin yes。更多配置信息,可参考:http://blog.csdn.net/zhu_xun/article/details/18304441

关闭防火墙:

1
/etc/init.d/iptables stop

开机自启动设置:

1
update-rc.d ssh enable

关闭开机自启动:

1
update-rc.d ssh disable

说明:以上改动配置文件,需要重启生效。

客户端安装

缺省linux是安装了客户端的。

1
2
apt-get install openssh-client #ubuntu
yum install openssh-clients #centos

客户端使用

基础使用
1
2
>>ssh [email protected] #用密码登录
>>ssh -i ~/.ssh/test 10.0.0.1 #用密钥登陆
记住密码

记住账号密码,不用每次都重新输入:

1
cat .ssh/config(没有的话就去创建,vim)

写入内容:

1
2
3
4
Host *
ControlMaster auto
ControlPath ~/.ssh/%h-%p-%r
ControlPersist yes

这样每次登陆一个新的地址以后,.ssh/下都会生成一个配置文件,就会记录账号密码。

文件移动
1
scp /localdirectory/example1.txt <username>@<remote>:<path>

可以复制example1.txt 到远程电脑指定的 。你也可以让为空白,来复制远程电脑的根文件夹。

1
scp <username>@<remote>:/home/example1.txt ./

会把example1.txt从远程电脑的主目录移动到本地电脑的当前目录。

ssh密钥对

客户端生成密钥对:

1
ssh-keygen -t rsa -f test -C "test key"

  • -t 加密类型
  • -f 密钥文件名
  • -C 备注

说明:执行命令会在.ssh(若没有可自行创建~/.ssh目录)目录下生成test、test.pub文件,test是私钥,test.pub是公钥。

服务端导入客户端的公钥:

1
$ cat test.pub >> .ssh/authorized_keys

修改权限:

1
chmod 700 .ssh

客户端可通过私钥文件去登录,而不需要密码登录

1
sudo ssh -i ~/.ssh/test 10.0.0.1

FTP

服务端安装

1
2
3
4
sudo apt-get update
sudo apt-get install vsftpd
yum install vsftpd

启动服务:

1
sudo service vsftpd start

服务端配置

FTP服务端配置:

1
/etc/vsftpd/vsftpd.conf #配置文件

配置文件内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
anonymous_enable=YES
允许匿名用户登录
local_enable=YES
允许系统用户名登录
write_enable=YES
允许使用任何可以修改文件系统的FTP的指令
local_umask=022
本地用户新增档案的权限
#anon_upload_enable=YES
允许匿名用户上传文件
#anon_mkdir_write_enable=YES
允许匿名用户创建新目录
dirmessage_enable=YES
允许为目录配置显示信息,显示每个目录下面的message_file文件的内容
xferlog_enable=YES
开启日记功能
connect_from_port_20=YES
使用标准的20端口来连接ftp
#chown_uploads=YES
所有匿名上传的文件的所属用户将会被更改成chown_username
#chown_username=whoever
匿名上传文件所属用户名
#xferlog_file=/var/log/vsftpd.log
日志文件位置
xferlog_std_format=YES
使用标准格式
#idle_session_timeout=600
空闲连接超时
#data_connection_timeout=120
数据传输超时
#nopriv_user=ftpsecure
当服务器运行于最底层时使用的用户名
#async_abor_enable=YES
允许使用\"async ABOR\"命令,一般不用,容易出问题
#ascii_upload_enable=YES
管控是否可用ASCII 模式上传。默认值为NO
#ascii_download_enable=YES
管控是否可用ASCII 模式下载。默认值为NO
#ftpd_banner=Welcome to blah FTP service.
login时显示欢迎信息.如果设置了banner_file则此设置无效
#deny_email_enable=YES
如果匿名用户需要密码,那么使用banned_email_file里面的电子邮件地址的用户不能登录
#banned_email_file=/etc/vsftpd/banned_emails
禁止使用匿名用户登陆时作为密码的电子邮件地址
#chroot_list_enable=YES
如果启动这项功能,则所有列在chroot_list_file中的使用者不能更改根目录
#chroot_list_file=/etc/vsftpd/chroot_list
定义不能更改用户主目录的文件
#ls_recurse_enable=YES
是否能使用ls -R命令以防止浪费大量的服务器资源
listen=YES
绑定到listen_port指定的端口,既然都绑定了也就是每时都开着的,就是那个什么
standalone模式
pam_service_name=vsftpd
定义PAM 所使用的名称,预设为vsftpd
userlist_enable=YES
若启用此选项,userlist_deny选项才被启动
tcp_wrappers=YES
开启tcp_wrappers支持

客户端使用

ftp连接:

1
2
3
ftp 10.0.0.1
ftp 10.0.0.1 21

TELNET

服务端安装

1
yum -y install xinetd telnet telnet-server

开启telnet服务:

1
2
3
4
systemctl enable telnet.socket
systemctl start telnet.socket
systemctl enable xinetd
systemctl start xinetd

服务端配置

编辑:/etc/xinetd.d/telnet文件

要允许通过xinetd联接telnet,需要编辑/etc/xinetd.d/telnet文件:

1
vim /etc/xinetd.d/telnet

将’disable’的值从’yes’修改为’no’。

要允许telnet从其他机子联接到本机,需要添加允许规则:

1
2
3
vim/etc/hosts.allow
添加如下行:
in.telnetd: ALL

如果需要开机自动开启该服务,将xinetd加入到/etc/rc.conf的”DAEMONS”中:

1
DAEMONS=(syslog-ng network netfs crond ............ xinetd)

说明:centos7下面安装telnet 没有生成 /etc/xinetd.d/telnet 文件。

客户端使用

1
2
telnet 10.0.0.1 [port]
>>输入账号密码即可

本文标题:ssh、telnet、ftp安装使用小记

文章作者:nMask

发布时间:2017年10月11日 - 10:10

最后更新:2017年10月11日 - 11:10

原始链接:http://thief.one/2017/10/11/1/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

nMask wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!