Как подключиться к Samba из Windows 10?

Debian + Samba + Windows 10 + Android(ES Проводник) + Fail2Ban(защита от перебора паролей)

В этом материале я покажу как настроить Samba на сервере Debian, а так же подключить клиенты в Windows 10 и Android. В конце материала мы так же настроим доп. защиту для Samba с помощью fail2ban от перебора паролей.

Если на устройствах не всегда хватает памяти для хранения книг, видео, прочего или же нужен доступ с разных устройств, можно взять платный аккаунт на Google Drive или Dropbox. Множество других сервисов предоставляет свой кусочек места в интернете на 1Тб данных и больше начиная с 9.у.е. в месяц. Но если у Вас есть тестовый какой-нибудь сервер в интернете, как например у меня, то можно на нем разместить. Сервер можно взять например на Hetzner-е по достаточно дешевой цене. Это б/у сервера но их гораздо проще себе позволить и часто они стоят как средний VPS. Отзывы о них разные, но мне в принципе нравиться все. Но статья не о том.

Настраиваем Samba

Устанавливаем Samba apt-get install samba

Добавляем системного пользователя:

Если не добавить системного пользователя выдаст ошибку: «Failed to add entry for user»

добавляем пользователя Samba:

вводим пароль и запоминаем его.

добавляем директорию для наших данных:

не сильно заморачиваясь даем права на запись в эту папку всем

дописываем в конфиг нашей SAMBA(/etc/samba/smb.conf) следующие строки:

На этом вопрос на стороне с сервером решен.

Добавление сетевого диска в Windows 10

Это достаточно просто, жмем Пуск и на проводнике жмем правой кнопкой мыши. Дальше в контекстном меню выбираем «Подключить сетевой диск» и вводим IP сервера и название ресурса(\111.111.111.111smbuser), как на картинке:
Вместо 111.111.111.111 вводим IP своего сервера.
Жмем «Готово», вводим пользователя smbuser и его пароль и попадаем в папку сервера.
На этом с подключением диска в Windows 10 все. Как-то аналогично должно быть и в других версиях.

Подключение к сетевому диску из Android.

Я установил в Google Play приложение ES Проводник, так как сталкивался уже с ним, он достаточно удобен и не напоминает приложение слепленное на коленке, тем более какой-то не безопасный китайский софт для кражи паролей. Вы же можете выбрать то что вам больше подходит. Но тут я опишу процесс настройки именно его.

Запускаем ES Проводник.
Вызываем левое меню->Сеть->LAN->Создать.
Адрес сервера прописываем подобным образом: 111.111.111.111/smbuser
Пользователь smbuser, пароль который задавали при создании пользователя.
Жмем ОК и попадаем в наше хранилище.
Как минус этого клиента то что чтобы использовать протокол SMB2, нужно установить достаточно жирную предлагаемую ими игру из Google Play. Фиговей если игры вообще не играешь.

Вы можете выбрать другой клиент, подключение в нем будет подобным.

Усиливаем защиту SAMBA с помощью fail2ban

Если вы никогда не сталкивался с fail2ban то вы не понимаете даже на сколько это Must Have простой но достаточно эффективный сервис защиты от перебора паролей. Он читает логи и при достижении лимита записей в лог о неудачных авторизациях блокирует IP атакующего. Это не панацея, но часть атак отсеивает.

Добавляем следующие строки в секцию [global] файла /etc/samba/smb.conf:

Так же в секцию которую мы прописывали раньше добавляем строку:

В том же файле находим строки:

Так как по умолчанию он создает для каждого айпи свой файл лога, и выбирать из такого количества файлов проблематично. По этому для лога у нас будет только этот один файл

Если не установлен fail2ban то ставим командой:

Создаем и заполняем файл настроек для него:

Нужно ориентироваться по логу в который пишем, так как регулярка зависит от формата записи в лог. В своем Debian я прописал именно такую, работает, проверено.

Так же создаем файл: /etc/fail2ban/jail.d/samba.conf со следующим содержимым:

Вы можете поиграть с параметрами по своему усмотрению.

После перезапускаем fail2ban:

Для проверки работоспособности просто уменьшите число bantime для fail2ban и введите не правильно. Из-под линукса это можно сделать с помощью smbclient.
Сперва устанавливаем:

После установки для того чтобы подключиться к нашему серверу достаточно выполнить команду:

Вводите пароль и попадаете на сервер. Так же можно протестировать и защиту.

На этом все, материал получился достаточно обьемным, но не сложным. И главное, надеюсь полезным.

SMB Windows 10: настройка и как включить SMB1 и SMB2

Всем привет! Сегодня столкнулся с такой проблемой. При построении локальной сети с двумя компьютерами первый (Windows 10) наотрез отказывается видеть другой комп (Windows 7). Все настройки я произвел правильно и открыл общий доступ. Но как потом оказалось, вся проблема в специальном сетевом протоколе SMB 1. Дело в том, что это старый протокол, который работает на олдскульных ОС. И он есть в десятке, но на последних обновлениях операционной системы Microsoft решила его отключить (во имя безопасности).

Симптомы достаточно простые. Вы выполнили все нужные настройки, заходите в раздел сети, а там ничего кроме вашего маршрутизатора не отображается. Бывает такое, что компьютер вы видите, и даже можете на него зайти, но вот при попытке открыть расшаренную папку можно лицезреть вот такое вот сообщение:

«Вы не можете подключиться к общей папке, так как она небезопасна. Эта общая папка работает по устаревшему протоколу SMB1, который не безопасен и может подвергнуть вашу систему риску атаки.»

Может быть еще вот такой текст ошибки: «Не удалось выполнить сопоставление сетевого диска из-за следующей ошибки». Ну и дальше все в том же духе.

Кстати, некоторые старые роутеры, также исползают устаревший SMB1 протокол – поэтому если у вас еще наблюдается проблема с доступом к жесткому диску или флешке, которые подключены к роутеру, то дальнейшие инструкции вам также будут полезны. Что мы будем делать? – нам нужно просто включить протокол SMBv1, и проблема будет решена. Поехали!

  1. Включения SMB1 на Windows 10
  2. Проверка настроек
  3. Включение SMB2
  4. Ничего не помогло, папку или компьютер не видно, ничего не работает
  5. Задать вопрос автору статьи

Включения SMB1 на Windows 10

Открываем меню «Пуск» и в поисковой строке вводим «Включение и отключение компонентов Windows». Можете просто ввести не полное слово «компонент». Вы также можете зайти туда через «Панель управления» (нажимаем кнопки «Win» и «R» – вводим команду: control). Далее заходим в «Программы и компоненты» и слева выбираем тот же самый пункт с отключением и включением компонентов.

Находим раздел с упоминанием нашего любимого протокола и включаем в папке все галочки. В самом конце нажимаем «ОК», чтобы изменения были приняты.

После этого SMB-1 в Windows 10 будет включено, и проблемы с сетью возникнуть не должны. Я бы на всякий случай перезагрузил компьютер. Но если вы все равно не видите какой-то компьютер в сети, или есть проблемы с доступом, смотрим следующую главу.

Читайте также  Как подключить EOS Utility?

Проверка настроек

Нам нужно посмотреть настройки общего доступа и есть ли они у вас вообще.

  1. В «Пуске» нажмите по шестеренке.

  1. Заходим в раздел «Сеть и Интернет».

  1. Тут же на первой странице (вкладка «Состояние») откройте «Свойства» того подключения, которое вы используете для коннекта с роутером. Если вы подключены по кабелю, то выбираем «Ethernet», если вы подключены по «Wi-Fi», то выбираема второе подключение. На старых версиях нужно открыть ссылку «Изменить свойства подключения».

  1. Убедитесь, чтобы тип сетевого профиля был как «Частный». Вернитесь обратно, нажав по стрелки влево.

  1. Пролистните чуть ниже и откройте «Центр управления сетями…». Этот раздел может также называться как «Параметры общего доступа». Поэтому можете ориентироваться по значку или найти раздел со словами «Общий доступ».

  1. Слева выбираем третий пункт для изменения параметров.

  1. Так как мы уже изменили текущий профиль на частный, то открываем его.

  1. Теперь открываем раздел «Все сети» и включаем сетевое обнаружение для папок. Шифрование должно стоять в нужной позиции, но если это не так, то включите 128-и битное шифрование. Обязательно отключите параметр, который будет запрашивать у вас пароль при заходе в общую папку или при запросе к этому компьютеру.

  1. В самом конце сохраняем изменения.

Включение SMB2

Сначала давайте проверим статус SMBv2. Для это откройте «PowerShell» с правами админа, нажав ПКМ по кнопке «Пуск».

Get-SmbServerConfiguration | Select EnableSMB2Protocol

Если вы видите значение «True», то значит протокол работает. Если стоит значение «False», то включить параметр можно также с помощью команды:

Set-SmbServerConfiguration -EnableSMB2Protocol $true

ПРИМЕЧАНИЕ! Таким же образом можно включить или выключить SMB1 – просто замените в команде одну цифру (2 на 1).

Далее кликаем по «Y» и на «Enter», чтобы подтвердить свои действия. Если же вы хотите отключить SMB2, то вместо «true» ставим «false». В конце не забываем перезагрузить систему.

Ничего не помогло, папку или компьютер не видно, ничего не работает

Если проблема остается, то есть несколько вариантов – от неправильных сетевых настроек до проблем с некоторыми службами в самой операционной системе. Все решения я уже описал в отдельной статье, и с ней вы можете ознакомиться по этой ссылке. То, что описано там, должно помочь.

Не удается подключиться к общей папке Linux Samba из Windows 10

У меня есть сервер Samba версии 4.1.11, работающий на Ubuntu 14.04. Я не могу подключиться из Windows 10 (но я могу из Windows 7).

Сервер и клиенты не находятся в одной локальной сети.

Windows выдает сообщение об ошибке: сервер подключен к сети, но не отвечает. Однако журналы самбы говорят об обратном.

Я приложил журналы для неудачной попытки подключения из Windows 10 и для успешной попытки из Windows 7 (для сравнения).

Вкратце, в отличие от успешной попытки, неудачная начинается с:

затем он запрашивает несколько различных протоколов перед выбором SMB2_FF . Затем, после некоторых переговоров по безопасности, он переключается на протокол SMB 2. , а SMB3_00 затем:

Успешная попытка выбрать протокол SMB2_10 с самого начала, но Windows 10 даже не запрашивает этот протокол.

Я добавил свой комментарий в файл smb.conf (не более 2 ссылок с репутацией linux windows ubuntu samba

Я думаю, что у меня есть решение, которое работает на Windows 7 — 10 и на Server 2012

В моем случае закомментирование моей строки «smb ports 139» помогло.

Я использую FreeBSD 10 с Samba 4.4.5

Вот копия моего SMB4.conf. Надеюсь, это кому-нибудь поможет.

Это решило мою проблему:

Windows 10 попытается договориться о SMB3_11, который Samba4 пока не поддерживает,
за исключением текущей версии-кандидата 4.3. Я подозреваю, что отключение
SMB2 / 3 на клиенте Windows 10 — ваш лучший, если не идеальный вариант.

Дальнейшее чтение:

  • MSKB, упомянутый выше: поддержка Microsoft, KB2696547: как обнаружить, включить и отключить SMBv1, SMBv2 и SMBv3 в Windows и Windows Server

Я обнаружил, что это будет работать и без необходимости редактировать реестр или отключать службы SMB 2/3, я смог подключиться к своему raspi 3, использующему Samba-4.2.10-Debian, вручную введя адрес, а также набрав настройка имени netbios в файле smb.conf распи в адресной строке проводника в Windows 10.

Я бы щелкнул по вкладке сети, но я не смог найти свой общий ресурс samba, хотя общий доступ к сети был включен, а что нет, но после ввода //192.168.0.22 (адрес моего pi) или // SAMBA (имя netbios Я установил в smb.conf) Затем я смог подключиться и поделиться с Samba.

Моя Windows 10 в то время все еще не подключалась к SMB 4.x, но это, похоже, помогло. После этого просто подключите диск, и вам больше не нужно вручную вводить адрес.

Версия Win 10 — 10.0.14393 Build 14393 (с последними обновлениями)

Надеюсь, что это поможет кому-то еще в будущем.

В Windows 10 Fall Creators Update и Windows Server версии 1709 (RS3) сетевой протокол Server Message Block версии 1 (SMBv1) больше не устанавливается по умолчанию.

Программа и функции, добавить / удалить функции Windows . включить CIF / SMB 1.0

Я согласен с другими, связанными с настройками по умолчанию в Windows 10 в качестве клиента. В любом случае, у меня все заработало БЕЗ каких-либо изменений на стороне клиента с помощью этого параметра в разделе Global на сервере samba (samba-4.7.1-9.el7_5.x86_64 — версия репозитория для CentOs 7):

У меня была такая же проблема, моя рабочая станция Windows 10 не могла подключиться к Sambashare после обновления win, ошибки были ошибкой 53, и отсутствующие протоколы, отсутствующие настройки выигрышей в реестре, ничего действительно не помогли в моем случае!

Что сработало для меня:

Откройте сервисы (нажмите Пуск правой кнопкой мыши -> Управление компьютером -> Сервисы и приложения -> и выберите сервисы)

Теперь в службах прокрутите вниз до рабочей станции, служба запущена? Если нет, у вас может быть та же проблема, что и у меня.

на моих 3-х рабочих ПК теперь все есть в зависимостях + драйвер поддержки браузера + служба интерфейса сетевого магазина + SMB 1.x Miniredirector + SMB 2.0 Miniredirector

Способ, которым я исправил свою проблему, был:

удалить сервис: sc.exe удалить lanmanworkstation

Пересоздать сервис: sc.exe config lanmanworkstation depen = bowser / mrxsmb10 / mrxsmb20 / nsi

а затем запустить службу

И мой ресурс Samba был доступен даже без перезагрузки.

Не открываются общие сетевые SMB папки в Windows 10

Если вы из Windows 10 не можете открыть сетевые папки на других сетевых устройствах (NAS, Samba сервера Linux) или на компьютерах со старыми версиями Windows (Windows 7/ XP /2003), скорее всего проблема связана с тем, что в вашей новой версии Windows 10 отключена поддержка устаревших и небезопасных версий протокола SMB (используется в Windows для доступа к общим сетевым папкам и файлам). Так, начиная с Windows 10 1709, был отключен протокол SMBv1 и анонимный (гостевой) доступ к сетевым папкам по протоколу SMBv2.

Читайте также  Как правильно завести машину со старт стопа?

Конкретные действия, которые нужно предпринять зависят от ошибки, которая появляется в Windows 10 при доступе к общей папке и от настроек удаленного SMB сервера, на котором хранятся общие папки.

  • Вы не можете получить гостевой доступ к общей папке без проверки подлинности
  • Вашей системе необходимо использовать SMB2 или более позднюю

Вы не можете получить гостевой доступ к общей папке без проверки подлинности

Начиная с версии Windows 10 1709 (Fall Creators Update) Enterprise и Education пользователи стали жаловаться, что при попытке открыть сетевую папку на соседнем компьютере стала появляться ошибка:

При это на других компьютерах со старыми версиями Windows 8.1/7 или на Windows 10 с билдом до 1709, эти же сетевые каталоги открываются нормально. Эта проблем связана с тем, что в современных версиях Windows 10 (начиная с 1709) по умолчанию запрещен сетевой доступ к сетевым папкам под гостевой учетной записью по протоколу SMBv2 (и ниже). Гостевой (анонимный) доступ подразумевают доступ к сетевой папке без аутентификации. При доступе под гостевым аккаунтом по протоколу SMBv1/v2 не применяются такие методы защиты трафика, как SMB подписывание и шифрование, что делает вашу сессию уязвимой против MiTM (man-in-the-middle) атак.

При попытке открыть сетевую папку под гостем по протоколу SMB2, в журнале клиента SMB (Microsoft-Windows-SMBClient) фиксируется ошибка:

В большинстве случае с этой проблемой можно столкнуться при использовании старых версий NAS (обычно для простоты настройки на них включают гостевой доступ) или при доступе к сетевым папкам на старых версиях Windows 7/2008 R2 или Windows XP /2003 с настроенным анонимным (гостевым) доступом (см. таблицу поддерживаемых версий SMB в разных версиях Windows).

В этом случае Microsoft рекомендует изменить настройки на удаленном компьютере или NAS устройстве, который раздает сетевые папки. Желательно переключить сетевой ресурс в режим SMBv3. А если поддерживается только протокол SMBv2, настроить доступ с аутентификацией. Это самый правильный и безопасный способ исправить проблему.

В зависимости от устройства, на котором хранятся сетевые папки, вы должны отключить на них гостевой доступ.

  • NAS устройство – отключите гостевой доступ в настройках вашего NAS устройства (зависит от модели);
  • Samba сервер на Linux — если вы раздаете SMB каталог с Linux, в конфигурационном файле smb.conf в секции [global] нужно добавить строку: map to guest = never
    А в секции с описанием сетевой папки запретить анонимный доступ: guest ok = no
  • В Windows вы можете включить общий доступ к сетевым папкам и принтерам с парольной защитой в разделе Control PanelAll Control Panel ItemsNetwork and Sharing CenterAdvanced sharing settings. Для All Networks (Все сети) в секции “Общий доступ с парольной защитой” (Password Protected Sharing) имените значение на “Включить общий доступ с парольной защитой” (Turn on password protected sharing). В этом случае анонимный (гостевой) доступ к папкам будет отключен и вам придется создать локальных пользователей, предоставить им доступ к сетевым папкам и принтерам и использовать эти аккаунты для подключения к общим папкам на этом компьютере.

Есть другой способ – изменить настройки вашего SMB клиента и разрешить доступ с него на сетевые папки под гостевой учетной записью.

Чтобы разрешить гостевой доступ с вашего компьютера, откройте редактор групповых политик (gpedit.msc) и перейдите в раздел: Конфигурация компьютера -> Административные шаблоны -> Сеть -> Рабочая станция Lanman (Computer Configuration ->Administrative templates -> Network (Сеть) -> Lanman Workstation). Включите политику Enable insecure guest logons (Включить небезопасные гостевые входы).

В Windows 10 Home, в которой нет редактора локальной GPO, вы можете внести аналогичное изменение через редактор реестра вручную:

Или такой командой:

reg add HKLMSYSTEMCurrentControlSetServicesLanmanWorkstationParameters /v AllowInsecureGuestAuth /t reg_dword /d 00000001 /f

Вашей системе необходимо использовать SMB2 или более позднюю

Другая возможная проблема при доступе к сетевой папке из Windows 10 – поддержка на стороне сервера только протокола SMBv1. Т.к. клиент SMBv1 по умолчанию отключен в Windows 10 1709, при попытке открыть шару вы можете получить ошибку:

При этом соседние устройства SMB могут не отображаться в сетевом окружении и при открытии по UNC пути может появляться ошибка 0x80070035.

Т.е. из сообщения об ошибке четко видно, что сетевая папка поддерживает только SMBv1 протокол доступа. В этом случае нужно попытаться перенастроить удаленное SMB устройство для поддержки как минимум SMBv2 (правильный и безопасный путь).

Если сетевые папки раздает Samba на Linux, вы можете указать минимально поддерживаемую версию SMB в файле smb.conf так:

В Windows 7/Windows Server 2008 R2 вы можете отключить SMBv1 и разрешить SMBv2 так:
Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB1 -Type DWORD -Value 0 –Force

Set-ItemProperty -Path «HKLM:SYSTEMCurrentControlSetServicesLanmanServerParameters» SMB2 -Type DWORD -Value 1 –Force

В Windows 8.1 отключите SMBv1, разрешите SMBv2 и SMBv3 и проверьте что для вашего сетевого подключения используется частный или доменный профиль:

Disable-WindowsOptionalFeature -Online -FeatureName «SMB1Protocol»
Set-SmbServerConfiguration –EnableSMB2Protocol $true

Если ваше сетевое устройство (NAS, Windows XP, Windows Server 2003), поддерживает только протокол SMB1, в Windows 10 вы можете включить отдельный компонент SMB1Protocol-Client. Но это не рекомендуется.

Запустите консоль PowerShell и проверьте, что SMB1Protocol-Client отключен ( State: Disabled ):

Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Client

Включите поддержку протокола SMBv1 (потребуется перезагрузка):

Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol-Client

Также вы можете включить/отключить дополнительные компоненты Windows 10 (в том числе SMBv1) из меню optionalfeatures.exe -> SMB 1.0/CIFS File Sharing Support

В Windows 10 1709 и выше клиент SMBv1 автоматически удаляется, если он не использовался более 15 дней (за это отвечает компонент SMB 1.0/CIFS Automatic Removal).

После установки клиента SMBv1, вы должны без проблем подключиться к сетевой папке или принтеру. Однако, нужно понимать, что использование данного обходного решения не рекомендовано, т.к. подвергает вашу систему опасности.

SAMBA настройка подключения Windows, Mac OS X и Android

SAMBA настройка: мы хотим просто объяснить, как подключить любое из наших устройств Android к локальной сети через SAMBA . Самый распространенный протокол на компьютерах с Windows и Mac OS . С помощью этого метода мы можем воспроизводить мультимедийный контент или запускать файлы любого типа в нашем ТВ-БОКСЕ, смартфоне или планшете, хранящиеся на нашем ПК, из локальной сети. Очень практичная система, которая как мы увидим, не имеет особых сложностей, если мы настроим ее правильно.

SAMBA НАСТРОЙКА В АНДРОИДЕ

Протокол SAMBA является одним из наиболее распространенных. Когда речь идет о совместном использовании устройств или сетевых папок между компьютерами Windows. Который совместим со многими другими системами, такими как Android. Этот протокол по умолчанию активируется в версии SMB v.2 во всех установках Windows и других системах. Которые позволяют устанавливать его в качестве альтернативной сетевой системы.

ПРИЛОЖЕНИЯ ДЛЯ ANDROID

Для подключения к нашему ПК мы должны использовать файловый браузер Android, совместимый с SMB v2 , у многих администраторов есть этот способ или через дополнительный модуль, мы рекомендуем несколько простых вариантов.

  • CX Explorer oX-plore — простой в использовании с основными функциями
  • MiXplorer +аддон SMB v2 , без рекламы и функционала также на Android TV (рекомендуется)
    — Платная версия MiXplorer Silver есть в Google Play, ссылки официального проекта MiXplorer + аддон SMBv2
Читайте также  Что можно передать по блютузу?

Настройте CX Explorer или X-Plore с помощью SAMBA

Все эти приложения имеют одинаковую систему конфигурации, в меню вы должны найти раздел сети и добавить наш удаленный сервер, используя IP-адрес, где находится ПК, в дополнение к указанию имени пользователя и пароля, если они у нас определены.

  • В CX Explorer выберите «Сеть»> «Удаленная»> «Локальная сеть»> «Выбрать компьютер», если он отображается в списке.
  • В X-Plore перейдите в LAN> Добавить сервер> Вручную или сканируйте, если он обнаружит ПК.
  • Мы добавляем IP (192.168.0.xxx) в дополнение к данным пользователя и пароля, если мы не оставляем их как анонимные.

CX Explorer

X-Plore

Подготовка ПК с Windows

Чтобы подключиться к ПК, на котором у нас есть файлы для совместного использования. Нам нужно выполнить несколько предварительных шагов, которые мы объясним. Необходимо идентифицировать наш компьютер в сети и дать ему необходимые разрешения, чтобы мы могли подключаться.

  • Заходим в ПОИСК и набираем ПАНЕЛЬ УПРАВЛЕНИЯ. и заходим туда.

  • Переходим в ПРОГРАММЫ И КОМПАНЕНТЫ

  • И переходим во вкладку ВКЛЮЧЕНИЕ ИЛИ ОТКЛЮЧЕНИЕ КОМПОНЕНТОВ WINDOWS.

  • В открывшемся окне находим и ставим галку SMB 1.0/CIFS File как на фото.

  • НЕЗАБЫВАЕМ ПЕРЕЗАГРУЗИТЬ WINDOWS!
  • После перезагрузки в разделе сеть появятся все гаджеты подключенные к SAMBA

ПОДКЛЮЧАЕМ СЕТЬ SAMBA В MAC OS X.

Чтобы напрямую подключиться к файловому серверу, используйте функцию «Подключение к серверу» в окне Finder. Выберите меню «Переход» > «Подключение к» и введите URL-адрес, IP-адрес или доменное имя.

  • Вводим адрес например моей ТВ ПРИСТАВКИ UGOOS X3 CUBE где уже расшарен доступ.
Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: